L’API Transport My Express Driver donne à votre système le contrôle programmatique du convoyage automobile : créez des missions, suivez-les en temps réel et récupérez leurs documents, sans passer par une interface manuelle. C’est une API REST classique pour les actions (créer une mission, modifier des dates, refacturer, annuler), doublée de webhooks signés pour les événements (changement de statut, attribution d’un convoyeur, ajout d’un document). Vous appelez l’API quand vous voulez agir ; nous vous notifions quand quelque chose change.

Créer et piloter des missions

Estimez un tarif, créez une mission de convoyage, ajustez ses dates, ses options et son prix, ou annulez-la — le tout par API.

Suivre en temps réel

Recevez les changements d’état, les positions GPS du convoyeur et les documents/PV dès qu’ils sont disponibles, via des webhooks signés.

Ce que permet l’API

Tarification

POST /pricing — estimez le coût d’un trajet selon la grille de votre groupe, sans rien créer.

Missions

Créez (POST /transports), listez et consultez le détail de vos missions de convoyage.

Suivi

Positions GPS du convoyeur, étapes planifiées et ETA tout au long du trajet.

Documents

Récupérez les PV et documents, ajoutez-en, et listez ceux à signer.

Cycle de vie

Modifiez les dates des jambes (aller / retour) ou annulez une mission.

Refacturation

Ajoutez ou retirez des options et ajustez le prix d’une jambe, avec historique tracé.
Une mission (ou transport) est identifiée par un id (alias offer_id) et porte une référence métier transport_id lisible (ex. M-12345). Une mission peut comporter une jambe aller et, le cas échéant, une jambe retour (aller-retour).

Modèle d’intégration

L’intégration repose sur deux canaux complémentaires.
Toutes les actions sont des appels HTTP REST sur des ressources prévisibles. Vous décidez quand appeler.
  • Réponses de succès en application/json.
  • Erreurs au format RFC 9457 (application/problem+json).
  • Pagination par curseur sur les listes (?limit=&cursor=).
  • Idempotence sur les écritures via l’en-tête Idempotency-Key.
curl -s -X POST "https://api.myexpressdriver.com/v1/pricing" \
  -H "X-Api-Key: med_live_xxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "pickup":   { "address": "10 Rue de Rivoli, 75004 Paris" },
    "delivery": { "address": "1 Place Bellecour, 69002 Lyon" },
    "vehicle":  { "type": "VP", "electric": false }
  }'
En pratique : REST quand vous voulez provoquer un changement ou lire un état à la demande ; webhooks quand vous voulez réagir à un changement sans interroger l’API en continu.

Pour qui

L’API s’adresse aux organisations qui gèrent des volumes de convoyage et veulent les piloter depuis leurs propres outils.

Flottes

Déclenchez et suivez vos convoyages directement depuis votre TMS ou votre back-office.

Concessions

Automatisez les transferts de véhicules entre sites, livraisons clients et reprises.

Loueurs

Orchestrez restitutions, repositionnements et livraisons à grande échelle.
Une clé API est rattachée à un groupe (votre flotte, concession ou loueur). Ce groupe définit votre périmètre d’autorisation : vous ne voyez et ne pilotez que les missions de votre groupe, et la tarification applique automatiquement votre grille. Une mission hors de votre groupe renvoie 404 — jamais 403 — afin de ne pas révéler son existence.

Environnements

L’API expose deux environnements, distingués par le préfixe de votre clé.
med_live_…
Production
Trafic réel : missions facturées et convoyeurs réels. À n’utiliser qu’une fois votre intégration validée.
med_test_…
Test
Bac à sable pour développer et tester votre intégration sans impact opérationnel.
La clé API n’est affichée en clair qu’une seule fois à sa création, depuis l’onglet « API & Intégrations » de votre profil client. Stockez-la dans un coffre de secrets : elle ne pourra plus être ré-affichée.

Base URL

Toutes les requêtes partent de la même base, en HTTPS.
https://api.myexpressdriver.com/v1
L’authentification se fait par l’en-tête X-Api-Key sur chaque requête :
X-Api-Key: med_live_xxxxxxxxxxxxxxxxxxxx
Comportement fail-closed : une clé manquante, inconnue, révoquée ou expirée renvoie 401 Unauthorized. Il n’existe aucun mode anonyme.

Étapes suivantes

Démarrage rapide

Créez votre première mission de bout en bout en quelques minutes.

Authentification

Clés live/test, scopes read/write et isolation par groupe.

Webhooks

Abonnez un endpoint, vérifiez les signatures et réconciliez les événements.