Skip to content

Annuaire (Partners, Vehicles, Drivers, Packaging Methods)

L'annuaire est un carnet d'adresses privé, propre à votre compte : il évite de retaper l'identité complète d'un tiers à chaque Freight Document. Il est entièrement push et entièrement optionnel — rien ici ne synchronise automatiquement avec votre propre TMS ; chaque entrée n'existe que parce que vous avez explicitement appelé l'endpoint de création correspondant. Vous pouvez tout aussi bien ignorer complètement l'annuaire et continuer à envoyer une identité complète en ligne (party_snapshot) à chaque création de document.

Toutes les ressources de l'annuaire vivent sous /v1/accounts/me/... (et non /v1/directory/...) — c'est une particularité de l'arborescence de l'API : dans Swagger, vous les trouverez donc regroupées visuellement sous "Accounts", bien qu'elles portent leur propre tag directory.

Partners (et Locations)

Un Location n'est pas une ressource séparée : c'est un Partner dont le champ kind vaut LOCATION plutôt que GENERIC — mêmes endpoints, même CRUD, même import en masse.

Méthode Chemin Description
POST /v1/accounts/me/partners Création (201)
POST /v1/accounts/me/partners/bulk Import en masse — jusqu'à 500 entrées, un résultat par entrée (une entrée en échec ne bloque pas les autres)
GET /v1/accounts/me/partners Liste paginée
GET /v1/accounts/me/partners/{id} Détail
PATCH /v1/accounts/me/partners/{id} Mise à jour partielle
DELETE /v1/accounts/me/partners/{id} Suppression logique (deleted_at)

Champs principaux : kind (GENERIC ou LOCATION, défaut GENERIC), name, address (objet libre), external_identifier (votre propre identifiant, optionnel), linked_account_id (informatif uniquement).

Un Partner supprimé n'est jamais retiré physiquement de la base : un Freight Document peut avoir figé une référence vers lui (frozen_party_snapshot) au moment de sa création, et cette référence doit rester résoluble indéfiniment pour des raisons de conservation légale.

external_identifier est unique par compte, jamais globalement — deux comptes différents peuvent réutiliser la même valeur sans collision, puisque chaque annuaire est strictement privé à son propriétaire.

Vehicles

Fiche technique d'un véhicule de votre flotte — à distinguer d'un sous-compte de type VEHICLE (un principal authentifiable, par exemple un boîtier embarqué). linked_subaccount_id est le seul pont, optionnel, entre les deux concepts.

Méthode Chemin
POST / GET (liste) /v1/accounts/me/vehicles
GET / PATCH / DELETE /v1/accounts/me/vehicles/{id}

Champs : license_plate, vehicle_type (TRUCK par défaut, ou TRAILER/VAN), capacity_kg, capacity_volume_m3, adr_certified (booléen), external_identifier, linked_subaccount_id (doit référencer un sous-compte VEHICLE de votre propre compte). Suppression logique, comme Partners.

Drivers

Même forme CRUD que Vehicles, y compris la suppression logique. Champs : full_name, phone (optionnel), driving_license_number (optionnel — jamais requis, par principe de minimisation des données personnelles), adr_certified, external_identifier, linked_subaccount_id (doit référencer un sous-compte DRIVER).

Packaging Methods

Méthode Chemin
POST / GET (liste) /v1/accounts/me/packaging-methods
GET / PATCH / DELETE /v1/accounts/me/packaging-methods/{id}

Champs : label, external_identifier. À la différence des trois autres ressources de l'annuaire, la suppression ici est définitive (pas de deleted_at) : un mode de conditionnement n'est jamais référencé par identifiant ailleurs dans le système, donc rien ne dépend de sa persistance après suppression.

Pagination

Les quatre listes de l'annuaire (partners, vehicles, drivers, packaging-methods) partagent la même pagination simple :

  • limit (1 à 200, défaut 50)
  • offset (défaut 0)

La réponse inclut toujours limit, offset et total. C'est un schéma différent de celui utilisé par la liste des Freight Documents — voir API Reference pour le détail des deux conventions.