Shippinova API

Documentation officielle de l'API externe — REST / JSON

← Documentation Shippinova v1.0 — 2026

Base URL

https://shippinova.com/APIs/external/

Format

Toutes les réponses sont en application/json

Authentification

Header X-API-KEY ou Authorization: Bearer

APIs Expéditeur

SHIPPER

Ces endpoints utilisent une clé API de type expéditeur. Ils permettent de gérer les ordres de transport (OTR) depuis votre ERP ou système tiers.

APIs Transporteur

CARRIER

Ces endpoints utilisent une clé API de type transporteur. Un abonnement actif est requis. Certains endpoints nécessitent un plan supérieur.

GET

Lister les missions

Récupérer la liste des missions assignées à votre société, avec filtres par statut et pagination.

GET

Détail d'une mission

Obtenir tous les détails d'une mission : expéditeur, destinataire, unités, documents, historique.

POST

Mettre à jour le statut

Changer le statut d'une mission (en cours, livré, incident…) depuis votre TMS.

POST

Upload preuve de livraison (POD)

Envoyer une photo ou signature électronique comme preuve de livraison (multipart/form-data).

POST

Clore une mission

Marquer une mission comme définitivement terminée avec commentaire optionnel.

POST

Signaler un incident

Déclarer un incident sur une mission (colis endommagé, retard, refus de livraison…).

POST

Accepter / refuser une mission

Accepter ou refuser une mission qui vient d'être assignée à votre société.

POST

Assigner un chauffeur

Affecter un chauffeur et un véhicule à une mission depuis votre TMS.

GET

Historique d'une mission

Consulter tous les événements et changements de statut d'une mission.

GET

Documents d'une mission

Récupérer la liste des documents associés à une mission (POD, LDV, bon de livraison…).

GET

Résumé de mission

Obtenir un résumé condensé d'une mission (chauffeur, véhicule, statut, dernière position).

GET

Lister les chauffeurs

Récupérer la liste des chauffeurs de votre société disponibles pour l'affectation.

GET

Lister les véhicules

Récupérer la flotte de véhicules de votre société.

Authentification

Envoyer votre clé API

Deux formats acceptés, à choisir selon votre client HTTP :

Option 1 — Header dédié (recommandé)
X-API-KEY: votre_cle_api
Option 2 — Authorization Bearer
Authorization: Bearer votre_cle_api

Codes d'erreur HTTP

CodeSignificationCorps JSON
401Clé API absente{"success":false,"error":"API key missing"}
403Clé invalide ou désactivée{"success":false,"error":"Invalid API key"}
403Clé expéditeur sur un endpoint transporteur, ou l'inverse{"success":false,"error":"API key not allowed for this endpoint","expected_owner_type":"transporteur","key_owner_type":"expediteur"}
402Transporteur : abonnement inactif (essai terminé, résilié){"success":false,"error":"Subscription inactive","subscription":{"status":"expired","plan":"starter"}}
403Transporteur : formule insuffisante pour cet endpoint{"success":false,"error":"Plan upgrade required","required_plan":"pro","current_plan":"starter"}
400Données invalides ou champ manquant{"success":false,"error":"...","code":"VALIDATION_ERROR","field_errors":{...}}
404Ressource introuvable pour votre société (OTR, mission…){"success":false,"error":"..."}
409 / 422Action impossible dans l'état actuel (OTR déjà validé, transporteur non partenaire…){"success":false,"error":"...","code":"..."}
429Trop de requêtes (en-tête Retry-After: 60){"success":false,"error":"Rate limit exceeded","limits":{"per_minute":120,"per_day":20000},"usage":{...}}
500Erreur serveur interne{"success":false,"error":"..."}

Exemple curl

curl -i -X GET "https://shippinova.com/APIs/external/get_otrs.php?limit=10" \
  -H "X-API-KEY: votre_cle_api"
curl -i -X POST "https://shippinova.com/APIs/external/carrier_update_mission_status.php" \
  -H "X-API-KEY: votre_cle_api" \
  -H "Content-Type: application/json" \
  -d '{"otr_id":123,"status":"livre"}'

Plans d'abonnement Transporteur

Les endpoints transporteur vérifient l'abonnement de votre société : un abonnement inactif renvoie 402, une formule insuffisante 403. Les expéditeurs ne sont pas concernés. Prix et détail des formules : page Tarifs.

Starter
Accès à l'essentiel pour démarrer.
  • Lister les missions
  • Détail d'une mission
  • Mettre à jour le statut
  • Upload POD
  • Clore une mission
  • Signaler un incident
  • Lister chauffeurs et véhicules
  • Historique et documents
  • Accepter / refuser une mission
  • Assigner un chauffeur (TMS)
Pro
Pour piloter vos missions depuis votre TMS.
  • Tout le plan Starter
  • Accepter / refuser une mission
  • Assigner un chauffeur et un véhicule
Business
Mêmes accès API que Pro, pour une flotte plus grande.
  • Tous les endpoints
  • Jusqu'à 200 chauffeurs et 200 véhicules

Limites de requêtes

Les limites s'appliquent par clé API et par endpoint, et sont les mêmes pour toutes les formules. Au-delà, la réponse est HTTP 429 avec l'en-tête Retry-After: 60.

Par minute
120
requêtes
Par jour
20 000
requêtes
Création d'OTR
Idempotency-Key
en-tête pour rejouer sans doublon