Passer au contenu principal
POST
Changer le véhicule d’une location

Autorisations

Authorization
string
header
requis

Clé API lck_… créée dans Lexio (Paramètres → Développeur), envoyée en Authorization: Bearer. Voir Authentification.

En-têtes

Idempotency-Key
string
requis

Clé unique de l’opération, réutilisée à chaque nouvel essai : un rejeu avec la même clé et le même corps renvoie la réponse initiale sans rien réécrire. Voir Idempotence. Facultative avec ?dryRun=true sur les opérations qui l’acceptent.

Required string length: 1 - 255
Pattern: ^[\x20-\x7E]+$
Exemple:

"8b3e1d2c-4a5f-4c6b-9e7d-1f2a3b4c5d6e"

Paramètres de chemin

rentalId
string<uuid>
requis

Identifiant de la location.

Exemple:

"9c2d7e4a-5b1f-4d3c-8a6e-0f1b2c3d4e5f"

Paramètres de requête

dryRun
enum<string>

true : aperçu, la même action annulée en fin de transaction.

Options disponibles:
true,
false

Corps

application/json
vehicleId
string<uuid>
requis

Véhicule cible. Inconnu ou d’une autre organisation → 422 REFERENCE_NOT_FOUND ; égal au véhicule actuel → 400 invalid_value ; non réservable → 409 VEHICLE_UNAVAILABLE.

Exemple:

"7c9e6679-7425-40de-944b-e07fc1f90ae7"

changeReason
enum<string>
requis

BREAKDOWN, UNAVAILABLE : faute du loueur, le client ne paie jamais plus ; CUSTOMER_REQUEST : demande du client.

Options disponibles:
BREAKDOWN,
UNAVAILABLE,
CUSTOMER_REQUEST
pricingChoice
enum<string>

Défaut : le choix recommandé (effects.availablePricingChoices[].isRecommended). Choix non ouvert pour ce motif et cet écart de prix → 422 PRICING_CHOICE_NOT_AVAILABLE.

Options disponibles:
KEEP_ORIGINAL_PRICE,
APPLY_LOWER_PRICE,
APPLY_NEW_PRICE,
APPLY_PRORATA
effectiveAt
string

Instant du changement, avec décalage. Défaut : maintenant. Borné au départ réel (ou à la création) et à maintenant + 5 min, jamais avant le dernier changement (400 out_of_range). Pilote le prorata.

Exemple:

"2026-11-10T10:00:00+01:00"

odometers
object

Requis sur une location IN_PROGRESS (absent → 400 required). Sur RESERVED, le véhicule n’est pas encore remis : présent → 409 RENTAL_STATUS_NOT_ALLOWED, pointer /odometers.

notes
string | null

Note interne, tracée dans l’audit.

Required string length: 1 - 500
expectedTotalTTC
number

Total TTC affiché par l’aperçu (dryRun). Écart d’au moins une unité mineure avec le total recalculé → 409 PRICE_CHANGED.

overpaymentResolution
enum<string>

REFUND_PENDING : remboursement PENDING par virement du trop-perçu ; NO_REFUND : le loueur le conserve. Exige le scope payments.refund.

Options disponibles:
REFUND_PENDING,
NO_REFUND

Réponse

Changer le véhicule d’une location

data
object
requis

Location, dans la même représentation pour la lecture, la liste et chaque écriture. Montants dans currency, voir Montants et TVA.

Exemple:
effects
object
requis