Seuls les documents à visibilité client sont exposés par l’API. Les documents
internes (pièces convoyeur, justificatifs RH, etc.) ne sont jamais renvoyés, quel
que soit votre scope.
404 (jamais 403). Les requêtes GET exigent le scope transports:read ; l’ajout de documents (POST) exige transports:write.
Lister les documents d’une mission
Identifiant de la mission (
offer_id).Filtre les documents rattachés à la jambe retour de la mission (aller-retour).
Omettez ce paramètre pour récupérer tous les documents.
Réponse 200
Champs d’un document
Clé technique stable du document (
document_key). Utilisez-la pour identifier un
type de document (PV de départ, PV signé, bon, facture…) plutôt que le label,
qui est un libellé d’affichage.Libellé lisible du document, destiné à l’affichage.
Lien de téléchargement du fichier (PDF généralement). Peut être
null tant que le
document n’a pas encore été produit.Statut de validation du document. Voir le tableau ci-dessous.
true si le document concerne la jambe retour de la mission.Nom de fichier d’origine.
Date de dépôt du document (ISO 8601).
Statuts d’un document
status | Sens |
|---|---|
waiting | Document en attente de validation (déposé, pas encore vérifié). |
accepted | Document validé. |
refused | Document refusé — le motif de refus n’est pas exposé par l’API. |
null | Statut non applicable (document informatif, sans cycle de validation). |
Documents à signer
Identifiant de la mission (
offer_id).Réponse 200
GET /transports/{id}/documents (voir Champs d’un document). Cet endpoint applique simplement un filtre supplémentaire sur les documents qui attendent une signature.
Récupérer le PV signé
Le PV signé est exposé comme tout autre document, viaGET /transports/{id}/documents. Pour le récupérer :
Listez les documents de la mission
Appelez
GET /transports/{id}/documents et repérez l’entrée dont la key
correspond au PV signé.Vérifiez le statut
Attendez que
status vaille accepted pour être sûr que le PV signé est
finalisé et validé.Node.js
Joindre un document à une mission
name (libellé) et un link (URL HTTPS publiquement accessible depuis laquelle MED récupère le fichier).
Identifiant de la mission (
offer_id).Tableau d’au moins un document. Chaque élément contient :
L’ajout de documents est une opération mutante : pensez à fournir un en-tête
Idempotency-Key pour la rendre rejouable sans doublon. Voir
Idempotence.Réponse 207 Multi-Status
L’endpoint renvoie 207 Multi-Status : chaque document est traité indépendamment, et la réponse détaille le résultat document par document. Un document peut échouer (lien injoignable, format invalide…) sans faire échouer les autres.
Réponse 207
Résultat par document, dans l’ordre de la requête.
Erreurs
Comme partout dans l’API, les erreurs suivent la RFC 9457 (application/problem+json).
| Code | Cause |
|---|---|
401 | Clé API manquante, invalide, révoquée ou expirée. |
403 | Scope requis absent (transports:read pour lire, transports:write pour ajouter). |
404 | Mission introuvable ou hors du groupe de votre clé. |
422 | Corps invalide (ex. documents vide, link non HTTPS). |
502 | Échec d’un service amont lors de l’attachement. |
Exemple 422
Étapes suivantes
Suivi en temps réel
Positions GPS du convoyeur et étapes planifiées avec ETA.
Webhooks
Recevez
document.added, document.accepted et document.rejected en temps réel.