POST
Ajouter une option

Autorisations

X-Api-Key
string
header
requis

Clé API liée à un groupe (med_live_… en production, med_test_… en test). Fournie en clair une seule fois à la création depuis le profil client.

En-têtes

Idempotency-Key
string

Clé d'idempotence fournie par le client (un UUID v4 par opération), conservée 24 h. Recommandée sur toutes les créations. Rejouer la même clé avec un corps identique sur la même route renvoie la réponse en cache (Idempotent-Replayed: true). L'empreinte couvre la méthode, le chemin (donc la mission visée) et le corps : la même clé pour une autre requête renvoie 409 idempotency_key_reused. Requête identique encore en traitement : 409 request_in_progress avec Retry-After.

Les réponses 5xx, 404 et 422 documents_failed ne sont pas mémorisées : un nouvel essai avec la même clé et le même corps est retraité.

Après un 502 (code: relay_timeout), une erreur réseau ou un 5xx, réessayez avec la même clé et le même corps : la requête est relancée, et une mission créée malgré l'erreur vous est renvoyée (201, Idempotent-Replayed: true) au lieu d'être créée une seconde fois. Exception : si la réponse porte outcome_unknown: true, ne réessayez pas, vérifiez d'abord (GET /transports). Seuls la création de mission et le dépôt de documents sont dédoublonnés ainsi ; sans clé, un nouvel essai peut créer un doublon.

Exemple:

"1f3c2b7a-9d4e-4a1b-8c2f-0e6d5a4b3c2d"

Paramètres de chemin

id
string
requis

Identifiant de la mission (offer_id).

Corps

application/json
option_key
string
requis

Clé de l'option (key de GET /options, ex. PV_DEMATERIALISE, Booster). Le prix est celui de votre grille, jamais fourni par l'appelant.

leg
enum<string>
défaut:aller

Jambe visée.

Options disponibles:
aller,
retour
params
object

Obligations de l'option (cf. requirements de GET /options). Ignoré pour une option sans obligation.

Réponse

Option ajoutée, prix recalculé.

option
string
requis

Clé posée sur la mission ({nom} - {prix}), au prix de votre grille.

new_price
number | null
requis
delta
number | null
requis
leg
enum<string>
Options disponibles:
aller,
retour
removed
string[]

Options retirées par exclusion (variante de même nom, autre type de PV).

derived
string[]

Champs de la mission mis à jour par l'option (ex. metadata/type_doc, renter, lien_pv_demat, wgarage).

warnings
string[]
driver_validation
object

Sort du convoyeur attribué après la modification (#1725).

Dès qu'un convoyeur est attribué et que la mission n'est pas encore partie, toute modification faite avec une clé partenaire lui demande de valider les nouvelles modalités (mode: ask). Il reçoit une notification et doit accepter ou refuser depuis l'application MED.

En cas de refus, le convoyeur est retiré de la mission, qui repart en ligne : prévoyez ce cas dans votre intégration, en écoutant l'événement transport.driver_validation_requested puis le statut de la mission. Sans réponse après trois relances, le convoyeur est également retiré.

mode: none signifie qu'il n'y avait personne à solliciter (mission non attribuée, ou déjà enlevée).