L'API en deux minutes

Un appel, une position exploitable. Le reste tient dans cette page.

Référence API

L'API WAYKOD,
endpoint par endpoint.

Une API REST qui répond en JSON. Chaque endpoint est décrit avec ses paramètres, un exemple de requête, un exemple de réponse et les erreurs qu'il peut renvoyer.

Adresse de base

Toutes les adresses ci-dessous sont relatives à cette racine.

Base
http://localhost:8000/api/v1

Authentification

En-tête
Authorization: Bearer pk_live_xxxx_…: votre_cle

Une clé identifie votre organisation et compte son quota :ne la publiez jamais dans du code exécuté par un navigateur.

Adresses — le cœur de l’API

POST/tokens/verify

Échanger un token contre une position

Le cœur de l'offre. Renvoie une position exploitable, des repères et un score de fiabilité. Ne renvoie jamais l'identité du titulaire : vous avez besoin d'un lieu, pas d'une personne.

Erreurs

StatutCodeQuand
422TOKEN_MALFORMEDLe code ne respecte pas le format WKD-XXX-XXX-XXXXXX.
404TOKEN_NOT_FOUNDAucun token ne porte ce code.
409TOKEN_REVOKEDLe titulaire a révoqué ce token, ou supprimé son adresse.
409TOKEN_EXPIREDLe token était temporaire et sa validité a expiré.

Chaque appel réussi compte dans votre quota mensuel. Les échecs sont journalisés mais non facturés.

POST/tokens/resolve

Résoudre plusieurs tokens en un appel

Pour qui prépare une tournée. Cinquante commandes, cinquante tokens : les résoudre un par un, c'est cinquante allers-retours réseau avant que le premier camion ne démarre. Aucune course n'est créée chez WAYKOD — vous gardez vos commandes dans votre système, vous venez chercher des adresses.

Erreurs

StatutCodeQuand
422VALIDATION_FAILEDListe vide, ou plus de 50 tokens.

Un lot ne casse jamais en entier : chaque token porte son propre statut — RESOLVED, MALFORMED, NOT_FOUND, EXPIRED, REVOKED, NO_ADDRESS — et la réponse reste 200. Facturé au token résolu, pas à la requête ; les doublons sont écartés avant d'être comptés. Le débit par minute, lui, ne compte qu'un appel.

POST/tokens/route

Tracer un itinéraire vers un token

Le chemin depuis un point que vous donnez jusqu'à l'adresse désignée par le token : distance, durée, tracé et étapes. C'est l'usage même du token pour qui livre — votre chauffeur n'a pas besoin de connaître le quartier, ni le nom de la rue.

Erreurs

StatutCodeQuand
404TOKEN_NOT_FOUNDLe token n'existe pas, ou n'est plus valide.

`mode` vaut DRIVING, WALKING ou CYCLING. `avoid` accepte jusqu'à trois contournements, `alternatives` renvoie les variantes avec leurs durées réelles. Chaque tracé est visible par le titulaire du token dans son application : il doit pouvoir constater qu'on a cherché son domicile.

GET/tokens/verifications

Relire vos vérifications passées

Les vérifications faites avec vos propres clés, de la plus récente à la plus ancienne. Utile pour rapprocher votre facturation ou constater vos échecs d'intégration.

Compte

GET/account

Votre compte

Société, forfait, consommation du mois, équipe et clés émises. La clé en clair n'y figure jamais : seul son préfixe subsiste.

GET/docs

Cette documentation, en JSON

Le catalogue que vous lisez, construit depuis la table de routage de l'API. Hors quota : le consulter ne coûte aucun appel facturable. Utile pour générer un client, ou vérifier après une mise à jour quels endpoints vos clés atteignent.

Courses — si vous n’avez pas de logiciel

POST/deliveries

Enregistrer une course

Crée une livraison visant un token. La position n'est pas à fournir : elle est résolue depuis le token au moment de la création.

Erreurs

StatutCodeQuand
422VALIDATION_FAILEDUn champ requis manque ou est mal formé.
409TOKEN_REVOKEDLe token visé n'est plus utilisable.
GET/deliveries

Lister vos livraisons

Vos courses, de la plus récente à la plus ancienne.

GET/deliveries/{delivery}

Consulter une livraison

Le détail d'une course, son historique de statuts inclus.

POST/deliveries/{delivery}/assign

Attribuer une course à un chauffeur

Le chauffeur doit appartenir à votre flotte.

Erreurs

StatutCodeQuand
409DRIVER_NOT_IN_FLEETLe chauffeur n'est pas rattaché à votre compte.
409DELIVERY_CLOSEDLa course est déjà terminée ou annulée.

Flotte — si vous n’avez pas de logiciel

GET/drivers

Lister vos chauffeurs

Votre flotte, avec disponibilité et vérification d'identité.

GET/fleet

Positions en direct

Dernière position connue de chaque course engagée. Conçu pour être interrogé en boucle par une carte de supervision.

GET/drivers/{driver}

Consulter un chauffeur

Fiche d'un chauffeur de votre flotte : véhicule, disponibilité, note moyenne et courses effectuées.

Erreurs

StatutCodeQuand
404DRIVER_NOT_FOUNDLe chauffeur n'appartient pas à votre flotte.
POST/drivers

Enrôler un chauffeur

L'enrôlement vous appartient : c'est vous qui vérifiez les papiers de vos chauffeurs. Le compte est créé sur le numéro de téléphone, qui sert aussi d'identifiant de connexion à l'application Chauffeur.

Erreurs

StatutCodeQuand
422VALIDATION_FAILEDNuméro déjà enrôlé, ou champ mal formé.
PATCH/drivers/{driver}

Modifier un chauffeur

Seuls les champs envoyés sont modifiés. Le numéro de téléphone en fait partie — un chauffeur change de numéro — et le mot de passe se remplace sans connaître l'ancien : un responsable de flotte n'a pas à le connaître pour le réinitialiser.

Erreurs

StatutCodeQuand
404DRIVER_NOT_FOUNDLe chauffeur n'appartient pas à votre flotte.
422VALIDATION_FAILEDNuméro déjà pris par un autre compte.
DELETE/drivers/{driver}

Retirer un chauffeur de la flotte

Le compte passe en « suspendu » et le chauffeur cesse d'être disponible ; rien n'est effacé. Son historique de courses reste consultable, et une réactivation suffit à le remettre en service — ce qu'une suppression sèche interdirait.

Erreurs

StatutCodeQuand
404DRIVER_NOT_FOUNDLe chauffeur n'appartient pas à votre flotte.
409DRIVER_HAS_ACTIVE_DELIVERIESDes courses lui sont encore attribuées ; réattribuez-les d'abord.

Prêt à intégrer ?

Demander une clé