Créer une mission
Crée une mission de transport. La persistance canonique passe par le relai
interne (RTDB pro/offers), ce qui rend la mission visible mobile/admin/appel
d’offre. Émet l’événement transport.created.
Autorisations
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
Clé d'idempotence fournie par le client. Rejouer la même clé avec un body
identique renvoie la réponse en cache (Idempotent-Replayed: true). La même
clé avec un body différent renvoie 409.
Corps
Requête de création d'une mission.
Point d'enlèvement. address en texte libre géocodé serveur (le plus précis possible) ; l'adresse RÉSOLUE est renvoyée dans la réponse.
Point de livraison (voir pickup).
Facturation simplifiée (company_name, email, address, siret?).
Type de transport.
Caractéristiques du véhicule (alias car).
Trajet retour (optionnel). Le départ du retour est AUTOMATIQUEMENT le lieu de LIVRAISON de l'aller (le convoyeur repart de là où il a livré) : ne renseignez donc QUE la destination du retour, jamais un point de départ. Formes acceptées : true = A→B→A (retour au point d'enlèvement) ; une chaîne = A→B→C (adresse de destination) ; un objet = forme complète (delivery, car, contacts…). En forme courte (true/chaîne), véhicule et contacts du retour héritent de l'aller.
Réponse
Mission créée.
Identifiant de la mission (offer_id).
"scheduled"
Adresse d'enlèvement RÉSOLUE effectivement utilisée pour la mission.
Adresse de livraison RÉSOLUE effectivement utilisée pour la mission.
Adresses résolues du retour si présent, sinon null.
