Passer au contenu principal
De la vérification de la clé à l’annulation en six appels, avec curl et jq. Les réponses sont des extraits.

Avant de commencer

  • Une clé API (lck_…) du loueur, avec les scopes offers.read, quotes.write et rentals.write (Authentification et scopes).
  • Une organisation de test : sans bac à sable, l’étape 4 crée une vraie location et prévient le loueur. Demandez-en une à contact@lexio.rent, ou essayez avec un loueur averti.
  • Un véhicule actif, dans une catégorie tarifaire qui a des prix.

1. Vérifier la clé (sans effet)

Clé partenaire (partnerCode non nul) : départ et retour tombent un jour ouvert, dans businessHours, et respectent bookingRules, sinon 422 BOOKING_RULE_VIOLATION (rule nomme la règle). Ajustez $START, $END ou l’heure ci-dessous.

2. Chercher un véhicule (sans effet)

Dates en heure locale de l’agence, sans décalage. Prix et disponibilité ne sont pas garantis.

3. Obtenir un devis (ne réserve rien)

4. Créer la location (écrit, prévient le loueur)

Idempotency-Key est obligatoire : une valeur unique par opération (un UUID de uuidgen, par exemple). partnerReference, votre numéro de commande, est unique : changez-le à chaque essai. Avec une clé interne, le client reçoit l’email de confirmation si le loueur l’a activé : mettez une adresse à vous.
Réponse 201, avec l’en-tête Location :
balance.dueAmount est le reste à payer ; la caution (deposit) est à part, hors total (Montants et TVA).

5. Prévisualiser l’annulation (sans effet)

?dryRun=true rend la réponse de l’appel réel sans rien enregistrer ni exiger d’Idempotency-Key. Il existe sur les actions d’une location (annulation, report, changements, départ, retour, options).

6. Annuler

La location annulée et la fiche client créée restent visibles chez le loueur.

À retenir

  • Le devis garantit le prix 24 h (expiresAt), pour un seul usage, mais ne bloque pas le véhicule : à la création, la disponibilité est revérifiée (409 VEHICLE_UNAVAILABLE) et un prix qui s’écarte du devis donne 409 PRICE_CHANGED, sans écriture.
  • L’étape 4 renvoyée avec la même Idempotency-Key et le même corps rend la réponse d’origine (Idempotence et reprise).
  • Suivre les changements faits ensuite par le loueur : Synchronisation par événements.