Lexio · Schema

Customer

Car RentalSoftware-as-a-ServiceFleet ManagementFrenchB2B

Properties

Name Type Description
id string Identifiant du client.
isCompany boolean true : société ; false : particulier. Les champs de l’autre type valent null.
partnerCode object Code partenaire de la plateforme dont une réservation a créé ce client ; null pour un client du loueur.
firstName stringnull Prénom (particulier) ; null pour une société ou une fiche anonymisée.
lastName stringnull Nom de famille (particulier), publié en majuscules ; null pour une société ou une fiche anonymisée.
companyName stringnull Raison sociale (société) ; null pour un particulier.
email stringnull Email, en minuscules ; celui d’un particulier est unique pour un même `partnerCode`. null si absent.
phone stringnull Téléphone, au format international quand le pays est connu ; null si absent.
birthDate object Date de naissance (particulier), `YYYY-MM-DD`.
birthCity stringnull Lieu de naissance (particulier).
nationality stringnull Nationalité, en texte libre (particulier).
licenseNumber stringnull Numéro du permis de conduire (particulier).
licenseIssueDate object Date de délivrance du permis de conduire (particulier), `YYYY-MM-DD`.
address object Adresse postale ; null si aucune.
companyRegistrationNumber stringnull Numéro d’immatriculation de la société. En France et dans les DROM : SIREN, 9 chiffres, requis pour une société ; ailleurs, format du pays. Pays : celui de l’adresse, sinon celui du loueur.
companyEstablishmentNumber stringnull Numéro de l’établissement (en France : SIRET, 14 chiffres).
vatNumber stringnull Numéro de TVA intracommunautaire de la société.
acquisitionSource object Canal par lequel le client est arrivé. null si inconnu.
isBlocked boolean true : client bloqué par le loueur, une nouvelle location à son nom est refusée.
anonymizedAt object Date de l’anonymisation : données personnelles effacées, fiche en lecture seule. null sinon.
createdAt string Création, heure du loueur avec décalage.
updatedAt string Dernière modification.
View JSON Schema on GitHub

JSON Schema

lexio-rent-customer-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/lexio-rent/json-schema/lexio-rent-customer-schema.json",
  "title": "Customer",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/lexio-rent-openapi.json#/components/schemas/Customer",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "Identifiant du client."
    },
    "isCompany": {
      "type": "boolean",
      "description": "true : société ; false : particulier. Les champs de l’autre type valent null."
    },
    "partnerCode": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 50
        },
        {
          "type": "null"
        }
      ],
      "description": "Code partenaire de la plateforme dont une réservation a créé ce client ; null pour un client du loueur."
    },
    "firstName": {
      "description": "Prénom (particulier) ; null pour une société ou une fiche anonymisée.",
      "type": [
        "string",
        "null"
      ]
    },
    "lastName": {
      "description": "Nom de famille (particulier), publié en majuscules ; null pour une société ou une fiche anonymisée.",
      "type": [
        "string",
        "null"
      ]
    },
    "companyName": {
      "description": "Raison sociale (société) ; null pour un particulier.",
      "type": [
        "string",
        "null"
      ]
    },
    "email": {
      "description": "Email, en minuscules ; celui d’un particulier est unique pour un même `partnerCode`. null si absent.",
      "type": [
        "string",
        "null"
      ]
    },
    "phone": {
      "description": "Téléphone, au format international quand le pays est connu ; null si absent.",
      "type": [
        "string",
        "null"
      ]
    },
    "birthDate": {
      "anyOf": [
        {
          "type": "string",
          "format": "date"
        },
        {
          "type": "null"
        }
      ],
      "description": "Date de naissance (particulier), `YYYY-MM-DD`."
    },
    "birthCity": {
      "description": "Lieu de naissance (particulier).",
      "type": [
        "string",
        "null"
      ]
    },
    "nationality": {
      "description": "Nationalité, en texte libre (particulier).",
      "type": [
        "string",
        "null"
      ]
    },
    "licenseNumber": {
      "description": "Numéro du permis de conduire (particulier).",
      "type": [
        "string",
        "null"
      ]
    },
    "licenseIssueDate": {
      "anyOf": [
        {
          "type": "string",
          "format": "date"
        },
        {
          "type": "null"
        }
      ],
      "description": "Date de délivrance du permis de conduire (particulier), `YYYY-MM-DD`."
    },
    "address": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "street": {
              "description": "Numéro et voie.",
              "type": [
                "string",
                "null"
              ]
            },
            "complement": {
              "description": "Complément d’adresse (bâtiment, étage…).",
              "type": [
                "string",
                "null"
              ]
            },
            "postalCode": {
              "description": "Code postal.",
              "type": [
                "string",
                "null"
              ]
            },
            "city": {
              "description": "Ville.",
              "type": [
                "string",
                "null"
              ]
            },
            "country": {
              "anyOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Z]{2}$"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Pays, code ISO 3166-1 alpha-2 ; null pour une ancienne valeur illisible."
            }
          },
          "required": [
            "street",
            "complement",
            "postalCode",
            "city",
            "country"
          ]
        },
        {
          "type": "null"
        }
      ],
      "description": "Adresse postale ; null si aucune."
    },
    "companyRegistrationNumber": {
      "description": "Numéro d’immatriculation de la société. En France et dans les DROM : SIREN, 9 chiffres, requis pour une société ; ailleurs, format du pays. Pays : celui de l’adresse, sinon celui du loueur.",
      "type": [
        "string",
        "null"
      ]
    },
    "companyEstablishmentNumber": {
      "description": "Numéro de l’établissement (en France : SIRET, 14 chiffres).",
      "type": [
        "string",
        "null"
      ]
    },
    "vatNumber": {
      "description": "Numéro de TVA intracommunautaire de la société.",
      "type": [
        "string",
        "null"
      ]
    },
    "acquisitionSource": {
      "anyOf": [
        {
          "type": "string",
          "enum": [
            "ONLINE",
            "PHONE",
            "WALKIN",
            "PARTNER",
            "OTHER"
          ]
        },
        {
          "type": "null"
        }
      ],
      "description": "Canal par lequel le client est arrivé. null si inconnu."
    },
    "isBlocked": {
      "type": "boolean",
      "description": "true : client bloqué par le loueur, une nouvelle location à son nom est refusée."
    },
    "anonymizedAt": {
      "anyOf": [
        {
          "type": "string",
          "format": "date-time"
        },
        {
          "type": "null"
        }
      ],
      "description": "Date de l’anonymisation : données personnelles effacées, fiche en lecture seule. null sinon."
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "description": "Création, heure du loueur avec décalage."
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time",
      "description": "Dernière modification."
    }
  },
  "required": [
    "id",
    "isCompany",
    "partnerCode",
    "firstName",
    "lastName",
    "companyName",
    "email",
    "phone",
    "birthDate",
    "birthCity",
    "nationality",
    "licenseNumber",
    "licenseIssueDate",
    "address",
    "companyRegistrationNumber",
    "companyEstablishmentNumber",
    "vatNumber",
    "acquisitionSource",
    "isBlocked",
    "anonymizedAt",
    "createdAt",
    "updatedAt"
  ]
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/lexio-rent-customer"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.