Endpoint SAV
Lister, créer, mettre à jour et clôturer les dossiers SAV via l'API.
L’endpoint /api/v1/sav gère les dossiers de Service Après-Vente.
Lister les SAV
GET /api/v1/sav
| Paramètre query | Type | Description |
|---|---|---|
statut | string | ouvert, en_cours, clos |
client_id | int | Filtrer par client |
poseur_id | int | Filtrer par poseur assigné |
depuis | date | SAV créés après cette date (YYYY-MM-DD) |
limite | int | Nombre de résultats (défaut 50, max 200) |
page | int | Numéro de page |
Réponse :
{
"success": true,
"data": [
{
"id": 123,
"reference": "SAV-2024-00123",
"client": { "id": 456, "nom": "Dupont", "prenom": "Jean" },
"description": "Problème charnière meuble haut",
"statut": "en_cours",
"priorite": "normale",
"date_creation": "2024-01-15T10:30:00Z",
"poseur_assigne": { "id": 789, "nom": "Martin Pierre" }
}
],
"pagination": { "page": 1, "limite": 50, "total": 234 }
}
Obtenir un SAV
GET /api/v1/sav/{id}
Réponse enrichie avec interventions et historique complets.
Créer un SAV
POST /api/v1/sav
X-Request-Timestamp: <unix>
{
"client_id": 456,
"description": "Porte qui ne ferme plus correctement",
"type_probleme": "reglage",
"priorite": "haute",
"photos": ["data:image/jpeg;base64,/9j/4AAQSkZJRg..."]
}
| Champ | Type | Requis | Contraintes |
|---|---|---|---|
client_id | int | ✓ | Client existant |
description | string | ✓ | 10-2000 caractères |
type_probleme | string | — | quincaillerie, electromenager, plan_travail, facade, reglage, autre |
priorite | string | — | basse, normale, haute, urgente |
photos | array | — | Max 10, base64 ou URL |
Réponse 201 Created :
{ "success": true, "data": { "id": 124, "reference": "SAV-2024-00124" } }
Mettre à jour un SAV
PUT /api/v1/sav/{id}
{ "statut": "en_cours", "poseur_id": 789, "notes_internes": "Client dispo le matin uniquement" }
Clôturer un SAV
POST /api/v1/sav/{id}/cloturer
{
"resolution": "Charnière remplacée",
"photo_avant": "data:image/jpeg;base64,...",
"photo_apres": "data:image/jpeg;base64,...",
"signature_client": "data:image/png;base64,..."
}
La clôture déclenche :
- L’envoi du PV de réception au client (email + WhatsApp si activé)
- Le webhook
sav.closedvers vos URLs configurées - L’enregistrement du hash SHA-256 du dossier pour valeur probante
Étapes suivantes
- Webhooks SAV — réagir en temps réel
- Endpoint Planning — planifier l’intervention