Modes de livraison
Deux modes au moment de la création : express pour une course immédiate, planifié pour une prise en charge différée. Le champ type détermine tout le comportement API.
Choisir le bon mode
Le champ type est obligatoire sur le devis et la création.
| Express | Planifié | |
|---|---|---|
| Champ API | type: express | type: scheduled |
| Usage | Course immédiate : la plateforme cherche et assigne un livreur dès la création. | Course à une date/heure : enregistrement immédiat, prise en charge et assignation gérées par la plateforme. |
| Statut à la création | searching_driver | created |
| Tarification | Surcharge express ajoutée au devis (voir POST /deliveries/quote). | Pas de surcharge express ; tarif = base + distance. |
| Obtenir le livreur | Polling GET /deliveries/{id}/driver, puis GET /track. | PUT /webhook puis écoute des événements POST entrants. |
Express
Course immédiate : la plateforme cherche et assigne un livreur dès la création.
- POST /deliveries/quote avec type express
- POST /deliveries (type express)
- GET /deliveries/{id}/driver en boucle jusqu'à outcome assigned
- GET /deliveries/{id}/track pour le suivi
Planifié
Course à une date/heure : enregistrement immédiat, prise en charge et assignation gérées par la plateforme.
- PUT /webhook (une fois par compte)
- POST /deliveries/quote avec type scheduled
- POST /deliveries avec type scheduled et scheduled_at
- Réception des webhooks (création, assignation livreur, statuts)
Valeurs driver_search.outcome
Réponse de GET /deliveries/{id}/driver (express uniquement).
| Valeur | État | Action côté intégration |
|---|---|---|
| searching | En cours | Recherche active dans la zone de retrait. Continuer le polling. |
| assigned | Assigné | Livreur trouvé. Arrêter le polling, utiliser GET /track. |
| no_driver_available | Indisponible | Délai dépassé sans livreur en zone. Course repassée en created. |
| no_drivers_registered | Aucun livreur | Aucun livreur sur la plateforme. |
| not_applicable | N/A | Livraison planifiée : ne pas utiliser cet endpoint. |
Webhooks (planifié)
Événements envoyés en POST sur votre URL.
| Événement | Quand |
|---|---|
| delivery.scheduled.created | Juste après POST /deliveries (type scheduled) |
| delivery.driver.assigned | Quand un livreur est assigné par le dispatch |
| delivery.status.updated | À chaque changement de statut de la course |
Règles communes
Valables pour les deux modes.
- Devis et création utilisent les mêmes adresses et coordonnées GPS (zone Abidjan).
- Pas d’API d’assignation manuelle : le livreur est choisi par la plateforme (express) ou par le dispatch (planifié, notifié par webhook).
- Le suivi carte (
GET …/track) est disponible une fois un livreur assigné. - Le devis (
POST …/quote) doit utiliser le mêmetypeque la création pour un tarif cohérent.