Endpoints
Reference des principaux endpoints de l'API Swaloo.
Endpoints API
Base URL : https://api.swaloo.com/api/v1
L'API de Swaloo est construite sur API Platform. Les endpoints decrits ci-dessous appartiennent a l'API du dashboard : ils requierent une authentification par token JWT (IS_AUTHENTICATED_FULLY) et sont soumis aux permissions par role.
Les reponses sont au format JSON-LD / Hydra. Tous les exemples supposent l'en-tete Authorization: Bearer <jwt>.
Ces endpoints ne sont pas accessibles avec une cle API. La cle API (X-API-KEY) n'ouvre que l'API externe sous /api/v1/external/.... Voir API externe.
Expeditions (shipments)
| Methode | Endpoint | Description |
|---|---|---|
GET | /shipments | Lister les expeditions (collection paginee) |
POST | /shipments | Creer une expedition (ROLE_DISPATCHER ou ROLE_MERCHANT) |
GET | /shipments/{id} | Detail d'une expedition |
PATCH | /shipments/{id} | Modifier une expedition non terminale |
DELETE | /shipments/{id} | Supprimer une expedition (ROLE_ORG_ADMIN, non terminale) |
Operations specifiques
| Methode | Endpoint | Description |
|---|---|---|
POST | /shipments/import | Import en masse depuis un fichier XLSX |
POST | /shipments/bulk-approve | Approuver en masse plusieurs demandes |
POST | /shipments/{id}/approve | Approuver une demande |
GET | /shipments/{id}/delivery-note | Bon de livraison PDF |
GET | /shipments/{id}/label-assets | QR code et code-barres |
Taches (tasks)
| Methode | Endpoint | Description |
|---|---|---|
GET | /tasks | Lister les taches |
GET | /tasks/{id} | Detail d'une tache |
PATCH | /tasks/{id} | Modifier une tache |
POST | /tasks/{id}/transition | Appliquer une transition de workflow |
Tournees (delivery runs)
| Methode | Endpoint | Description |
|---|---|---|
GET | /delivery-runs | Lister les tournees |
POST | /delivery-runs | Creer une tournee |
GET | /delivery-runs/{id} | Detail d'une tournee |
PATCH | /delivery-runs/{id} | Modifier une tournee |
DELETE | /delivery-runs/{id} | Supprimer une tournee |
POST | /delivery-runs/{id}/tasks | Ajouter des taches |
DELETE | /delivery-runs/{runId}/tasks/{taskId} | Retirer une tache |
Chauffeurs (drivers)
| Methode | Endpoint | Description |
|---|---|---|
GET | /drivers | Lister les chauffeurs |
POST | /drivers | Creer un chauffeur |
GET | /drivers/{id} | Detail d'un chauffeur |
PATCH | /drivers/{id} | Modifier un chauffeur |
DELETE | /drivers/{id} | Supprimer un chauffeur |
POST | /drivers/{id}/location | Mettre a jour la position GPS |
Zones
| Methode | Endpoint | Description |
|---|---|---|
GET | /zones | Lister les zones |
POST | /zones | Creer une zone |
PATCH | /zones/{id} | Modifier une zone |
DELETE | /zones/{id} | Supprimer une zone |
Points de collecte (pickup points)
| Methode | Endpoint | Description |
|---|---|---|
GET | /pickup-points | Lister les points de collecte |
POST | /pickup-points | Creer un point de collecte |
PATCH | /pickup-points/{id} | Modifier un point de collecte |
DELETE | /pickup-points/{id} | Supprimer un point de collecte |
POST | /pickup-points/{id}/grouped-pickup | Creer une collecte groupee |
Pagination
Toutes les collections sont paginées :
GET /shipments?page=1&itemsPerPage=30Les metadonnees figurent dans view :
{
"view": {
"first": "/api/v1/shipments?page=1",
"last": "/api/v1/shipments?page=5",
"next": "/api/v1/shipments?page=2"
}
}Filtres
Filtres disponibles sur les expeditions :
GET /shipments?status=in_transit
GET /shipments?priority=urgent
GET /shipments?merchant=/api/v1/merchants/{id}
GET /shipments?pickupPoint=/api/v1/pickup-points/{id}Documentation interactive
La documentation OpenAPI / Swagger complete est disponible sur /api/v1/docs.
Pour des exemples de code detailles en cURL, PHP, JavaScript et Java, consultez la page Exemples de requetes.
Voir aussi : Exemples de requetes | Authentification | API externe | Erreurs