Organiser et transmettre le travail
Types d’intervention, formulaires, clients, techniciens, dossiers, rendez-vous, missions, checklists, documents, devis, récurrences et base de connaissance.
API · Suivi de dossier
Créez et suivez les interventions, attribuez les techniciens, échangez messages et documents, gérez devis, validations, checklists, récurrences et pointages depuis votre propre système.
https://api.sellviaapp.com/X-API-Key + BearerDémarrage rapide
Récupérez la X-API-Key et générez le Bearer dans Dashboard → API. Entrez-les ci-dessous, puis utilisez « Tester · Générer » sur un endpoint pour obtenir la réponse et le code cURL, PHP 8 ou JavaScript.
Accès conservés uniquement en mémoire pendant cette page. Pour une opération liée à un client, ajoutez customer_id.
ERP ↔ SellViaApp
L’API ne sert pas uniquement à consulter des dossiers. Votre logiciel peut configurer le module, alimenter les données utilisées dans l’app, affecter les techniciens et récupérer les actions réalisées sur le terrain ou par le client.
Types d’intervention, formulaires, clients, techniciens, dossiers, rendez-vous, missions, checklists, documents, devis, récurrences et base de connaissance.
Demandes des clients, statuts, progression, messages, photos, documents, étapes réalisées, pointages, décisions sur les devis, validations et signatures.
Votre ERP conserve les identifiants retournés par SellViaApp, relit les dossiers et leurs données associées, puis applique uniquement les changements utiles dans votre système.
Endpoints
Créer, rechercher, consulter et mettre à jour un dossier : statut, priorité, progression, rendez-vous, attribution et mission du technicien.
/case/list
Clé + Bearer
Lister les dossiers du client connecté ; un jeton fournisseur peut lister tous les dossiers.
page
integer
Facultatif
Numéro de page, à partir de 1.
per_page
integer
Facultatif
Nombre de résultats par page.
customer_id
integer
Facultatif
Requis uniquement avec un jeton d’intégration lorsque l’opération concerne un client précis.
status
string
Facultatif
Filtrer par code de statut.
type_id
integer
Facultatif
Filtrer par type d’intervention.
priority
enum
Facultatif
low | normal | high | urgent
q
string
Facultatif
Recherche fournisseur sur référence, titre, description ou personne assignée.
{
"success": true,
"message": "Opération réussie",
"data": {
"items": [],
"pagination": {
"page": 1,
"per_page": 25,
"total": 0,
"last_page": 1
}
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/detail
Clé + Bearer
Récupérer un dossier avec son historique, ses messages, documents et devis détaillés. La mission privée est retournée uniquement au technicien attribué et au fournisseur.
id
integer
Obligatoire
Identifiant du dossier.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/create
Clé + Bearer
Créer une demande d’intervention liée au client.
customer_id
integer
Facultatif
Obligatoire uniquement avec un jeton fournisseur.
type_id
integer
Facultatif
Type d’intervention actif.
title
string
Obligatoire
Objet court de la demande.
description
string
Obligatoire
Description du problème ou du besoin.
status
string
Facultatif
Fournisseur uniquement ; new par défaut.
priority
enum
Facultatif
low | normal | high | urgent
progress
integer
Facultatif
0 - 100
address
string
Facultatif
Adresse de l’intervention.
appointment_start
datetime
Facultatif
YYYY-MM-DD HH:MM:SS
appointment_end
datetime
Facultatif
YYYY-MM-DD HH:MM:SS
assigned_to
string
Facultatif
Personne ou équipe assignée.
technician_id
integer
Facultatif
Technicien attribué ; fournisseur uniquement.
custom_fields
object
Facultatif
Valeurs indexées par identifiant ou clé du champ personnalisé.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/update
Clé + Bearer
Modifier client, type, statut, priorité, progression, rendez-vous et attribution.
id
integer
Obligatoire
Identifiant du dossier.
customer_id
integer
Facultatif
Client lié ; 0 retire la liaison.
type_id
integer
Facultatif
Type ; 0 retire le type.
title
string
Facultatif
Titre du dossier.
description
string
Facultatif
Description détaillée.
status
string
Facultatif
Code retourné par case/status/list.
priority
enum
Facultatif
low | normal | high | urgent
progress
integer
Facultatif
0 - 100
address
string
Facultatif
Adresse d’intervention.
appointment_start
datetime
Facultatif
Vide pour retirer la date.
appointment_end
datetime
Facultatif
Vide pour retirer la date.
assigned_to
string
Facultatif
Personne ou équipe assignée.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/status/list
Clé + Bearer
Lister le cycle des statuts et leurs libellés traduits.
Aucun paramètre métier n’est attendu. Envoyez uniquement les en-têtes d’authentification indiqués.
{
"success": true,
"message": "Opération réussie",
"data": {
"items": [],
"pagination": {
"page": 1,
"per_page": 25,
"total": 0,
"last_page": 1
}
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}Endpoints
Permettre à l’ERP de gérer les types d’intervention et les champs personnalisés demandés dans l’app mobile.
/case/type/list
Clé + Bearer
Lister les types d’intervention disponibles.
include_inactive
boolean
Facultatif
Réservé au fournisseur ; inclut les types masqués.
{
"success": true,
"message": "Opération réussie",
"data": {
"items": [],
"pagination": {
"page": 1,
"per_page": 25,
"total": 0,
"last_page": 1
}
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/type/add
Clé + Bearer
Créer un type d’intervention.
name
string
Obligatoire
Nom du type.
description
string
Facultatif
Maximum 2 000 caractères.
sort_order
integer
Facultatif
Ordre d’affichage.
active
boolean
Facultatif
Actif par défaut.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/type/update
Clé + Bearer
Modifier, ordonner ou masquer un type d’intervention.
id
integer
Obligatoire
Identifiant du type.
name
string
Obligatoire
Nom du type.
description
string
Facultatif
Description.
sort_order
integer
Facultatif
Ordre d’affichage.
active
boolean
Facultatif
Disponibilité du type.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/type/delete
Clé + Bearer
Supprimer un type inutilisé ou archiver un type déjà lié.
id
integer
Obligatoire
Un type utilisé sera archivé.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/form/list
Clé + Bearer
Lister les champs personnalisés du formulaire de demande.
type_id
integer
Facultatif
Limiter aux champs communs et au type choisi.
include_inactive
boolean
Facultatif
Fournisseur uniquement.
{
"success": true,
"message": "Opération réussie",
"data": {
"items": [],
"pagination": {
"page": 1,
"per_page": 25,
"total": 0,
"last_page": 1
}
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/form/add
Clé + Bearer
Ajouter une information à demander au client.
type_id
integer
Facultatif
0 ou absent pour tous les types.
label_fr
string
Obligatoire
Libellé français.
label_en
string
Facultatif
Libellé anglais.
field_type
enum
Obligatoire
text | textarea | select | boolean | date | number
options
array
Facultatif
Requis pour select.
required
boolean
Facultatif
Réponse obligatoire.
sort_order
integer
Facultatif
Ordre d’affichage.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/form/update
Clé + Bearer
Modifier un champ personnalisé.
id
integer
Obligatoire
Identifiant du champ.
type_id
integer
Facultatif
Type lié ou 0.
label_fr
string
Obligatoire
Libellé français.
label_en
string
Facultatif
Libellé anglais.
field_type
enum
Obligatoire
text | textarea | select | boolean | date | number
options
array
Facultatif
Choix du menu.
required
boolean
Facultatif
Réponse obligatoire.
active
boolean
Facultatif
Champ visible.
sort_order
integer
Facultatif
Ordre.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/form/delete
Clé + Bearer
Supprimer ou archiver un champ personnalisé.
id
integer
Obligatoire
Identifiant du champ.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}Endpoints
Synchroniser l’équipe terrain, ses compétences et ses rôles, puis affecter chaque intervention au bon technicien.
/case/technician/list
Clé + Bearer
Lister séparément les techniciens avec fonction, compétences, disponibilité et charge de travail.
Aucun paramètre métier n’est attendu. Envoyez uniquement les en-têtes d’authentification indiqués.
{
"success": true,
"message": "Opération réussie",
"data": {
"items": [],
"pagination": {
"page": 1,
"per_page": 25,
"total": 0,
"last_page": 1
}
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/technician/detail
Clé + Bearer
Récupérer la fiche professionnelle complète d’un technicien.
technician_id
integer
Obligatoire
Identifiant du technicien.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/technician/profile
Clé + Bearer
Créer ou modifier le profil professionnel d’un compte technicien.
technician_id
integer
Obligatoire
Compte mobile à définir comme technicien.
employee_code
string
Facultatif
Matricule ou code interne.
job_title
string
Facultatif
Fonction du technicien.
specialties
string
Facultatif
Spécialités terrain.
skills
string
Facultatif
Compétences et certifications.
service_area
string
Facultatif
Zone d’intervention.
availability_notes
string
Facultatif
Disponibilités habituelles.
emergency_available
boolean
Facultatif
Disponible pour les urgences.
internal_notes
string
Facultatif
Notes internes non visibles dans l’app.
profile_color
string
Facultatif
#RRGGBB
active
boolean
Facultatif
Technicien actif.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/technician/role
Clé + Bearer
Attribuer le rôle Client ou Technicien à un compte mobile.
customer_id
integer
Obligatoire
Compte mobile.
role
enum
Obligatoire
client | technician
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/technician/update
Clé + Bearer
Permettre au technicien attribué de mettre à jour statut et avancement.
case_id
integer
Obligatoire
Intervention attribuée au technicien connecté.
status
enum
Obligatoire
planned | in_progress | waiting_customer | completed
progress
integer
Facultatif
0 - 100
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}Endpoints
Préparer les procédures, récupérer les étapes appliquées et enregistrer leur réalisation depuis le terrain.
/case/checklist/list
Clé + Bearer
Récupérer la checklist et sa progression pour un dossier autorisé.
case_id
integer
Obligatoire
Dossier autorisé pour le compte connecté.
{
"success": true,
"message": "Opération réussie",
"data": {
"items": [],
"pagination": {
"page": 1,
"per_page": 25,
"total": 0,
"last_page": 1
}
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/mission/update
Clé + Bearer
Définir la mission privée visible uniquement par le technicien attribué.
case_id
integer
Obligatoire
Dossier dont la mission doit être définie.
mission_note
string
Facultatif
Consigne privée du technicien, maximum 10 000 caractères. Une valeur vide efface la mission.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/checklist/item/update
Clé + Bearer
Valider ou rouvrir une étape ; réservé au technicien attribué ou au fournisseur.
case_id
integer
Obligatoire
Dossier attribué au technicien.
item_id
integer
Obligatoire
Étape de checklist.
completed
boolean
Obligatoire
Terminer ou rouvrir l’étape.
note
string
Facultatif
Note terrain facultative.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/checklist/template/list
Clé + Bearer
Lister les modèles de checklist et leurs étapes.
Aucun paramètre métier n’est attendu. Envoyez uniquement les en-têtes d’authentification indiqués.
{
"success": true,
"message": "Opération réussie",
"data": {
"items": [],
"pagination": {
"page": 1,
"per_page": 25,
"total": 0,
"last_page": 1
}
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/checklist/template/add
Clé + Bearer
Créer une checklist globale ou liée à un type d’intervention.
type_id
integer
Facultatif
Absent ou 0 pour tous les types.
title_fr
string
Obligatoire
Titre français.
title_en
string
Facultatif
Titre anglais.
items
array
Obligatoire
Étapes sous forme de chaînes ou objets label_fr, label_en, required et sort_order.
active
boolean
Facultatif
Actif par défaut.
sort_order
integer
Facultatif
Ordre du modèle.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/checklist/template/update
Clé + Bearer
Modifier le modèle et remplacer proprement ses étapes.
id
integer
Obligatoire
Identifiant du modèle.
type_id
integer
Facultatif
Type lié ou 0.
title_fr
string
Obligatoire
Titre français.
title_en
string
Facultatif
Titre anglais.
items
array
Obligatoire
Liste complète remplaçant les étapes du modèle.
active
boolean
Facultatif
Disponibilité.
sort_order
integer
Facultatif
Ordre.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/checklist/template/delete
Clé + Bearer
Supprimer un modèle inutilisé ou archiver un modèle déjà appliqué.
id
integer
Obligatoire
Un modèle déjà utilisé sera archivé.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}Endpoints
Démarrer, arrêter, ajouter et auditer le temps passé par les techniciens sur chaque dossier.
/case/time/list
Clé + Bearer
Lister les pointages et le temps total d’un dossier autorisé.
case_id
integer
Obligatoire
Dossier attribué au technicien ; fournisseur autorisé en lecture.
technician_id
integer
Facultatif
Accès fournisseur uniquement ; technicien attribué par défaut.
include_deleted
boolean
Facultatif
Accès fournisseur uniquement ; inclure les pointages supprimés et leur motif.
{
"success": true,
"message": "Opération réussie",
"data": {
"items": [],
"pagination": {
"page": 1,
"per_page": 25,
"total": 0,
"last_page": 1
}
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/time/start
Clé + Bearer
Commencer un chronomètre pour le technicien attribué.
case_id
integer
Obligatoire
Dossier attribué au technicien connecté.
note
string
Facultatif
Note facultative, maximum 1 000 caractères.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/time/stop
Clé + Bearer
Terminer et calculer le pointage actif.
case_id
integer
Obligatoire
Dossier du pointage actif.
entry_id
integer
Facultatif
Pointage actif ; le pointage courant du dossier est utilisé si absent.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/time/add
Clé + Bearer
Ajouter manuellement une date, une heure de début et une heure de fin.
case_id
integer
Obligatoire
Dossier attribué au technicien connecté.
started_at
datetime
Obligatoire
Date et heure ISO 8601 avec fuseau horaire.
ended_at
datetime
Obligatoire
Après started_at ; durée de 1 minute à 48 heures, sans chevauchement.
note
string
Facultatif
Note facultative.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/time/delete
Clé + Bearer
Supprimer logiquement un pointage avec une justification obligatoire conservée dans l’audit.
entry_id
integer
Obligatoire
Pointage terminé appartenant au technicien.
reason
string
Obligatoire
Justification obligatoire de 5 à 1 000 caractères.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}Endpoints
Échanger avec l’app, classer les documents, transmettre des photos et récupérer les fichiers autorisés.
/case/message/send
Clé + Bearer
Ajouter un message au dossier ; l’émetteur est identifié automatiquement selon le compte connecté.
case_id
integer
Obligatoire
Identifiant du dossier.
message
string
Obligatoire
Message à ajouter.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/document-type/list
Clé + Bearer
Lister les types de documents visibles dans l’app mobile.
include_inactive
boolean
Facultatif
Réservé au jeton fournisseur ; inclut les types archivés.
{
"success": true,
"message": "Opération réussie",
"data": {
"items": [],
"pagination": {
"page": 1,
"per_page": 25,
"total": 0,
"last_page": 1
}
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/document-type/add
Clé + Bearer
Créer un type de document pour la boutique.
label_fr
string
Obligatoire
Nom français du type.
label_en
string
Facultatif
Nom anglais ; reprend le français si absent.
icon
enum
Facultatif
description | photo_camera | assignment | request_quote | receipt_long | verified | folder | build
color
hex
Facultatif
#RRGGBB
sort_order
integer
Facultatif
Ordre d’affichage.
active
boolean
Facultatif
Actif par défaut.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/document-type/update
Clé + Bearer
Modifier, ordonner ou masquer un type de document.
id
integer
Obligatoire
Identifiant du type.
label_fr
string
Obligatoire
Nom français du type.
label_en
string
Facultatif
Nom anglais.
icon
enum
Facultatif
description | photo_camera | assignment | request_quote | receipt_long | verified | folder | build
color
hex
Facultatif
#RRGGBB
sort_order
integer
Facultatif
Ordre d’affichage.
active
boolean
Facultatif
Disponibilité du type.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/document-type/delete
Clé + Bearer
Supprimer un type inutilisé ou archiver un type déjà lié.
id
integer
Obligatoire
Identifiant du type. Un type utilisé sera archivé.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/document/list
Clé + Bearer
Lister tous les documents autorisés du plus récent au plus ancien avec leur provenance client, technicien ou administrateur.
page
integer
Facultatif
Numéro de page, à partir de 1.
per_page
integer
Facultatif
Nombre de résultats par page.
customer_id
integer
Facultatif
Filtre fournisseur uniquement.
case_id
integer
Facultatif
Limiter à un dossier précis.
unlinked_only
boolean
Facultatif
Retourner uniquement les documents sans dossier lié.
document_type_id
integer
Facultatif
Limiter à un type de document.
folder_path
string
Facultatif
Limiter à un chemin exact, par exemple Rapports / 2026.
{
"success": true,
"message": "Opération réussie",
"data": {
"items": [],
"pagination": {
"page": 1,
"per_page": 25,
"total": 0,
"last_page": 1
}
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/document/add
Clé + Bearer
Ajouter une ou plusieurs photos, PDF, documents ou signatures, avec liaison facultative à une étape de checklist.
case_id
integer
Facultatif
Dossier facultatif. Obligatoire si checklist_item_id est fourni.
customer_id
integer
Facultatif
Requis avec un jeton fournisseur si case_id est absent ; ignoré pour un client connecté.
document_type_id
integer
Facultatif
Type de classement ; un type actif par défaut est utilisé si absent.
checklist_item_id
integer
Facultatif
Étape de checklist appartenant obligatoirement au dossier indiqué. Répétez l’appel pour lier plusieurs pièces.
title
string
Facultatif
Titre lisible ; le nom du fichier est utilisé si absent.
folder_path
string
Facultatif
Arborescence libre séparée par /, maximum 8 niveaux.
note
string
Facultatif
Note facultative, maximum 5 000 caractères.
customer_visible
boolean
Facultatif
Un jeton fournisseur peut conserver le document en interne avec false ; un ajout mobile reste visible.
kind
enum
Facultatif
photo | document | signature
photo_stage
enum
Facultatif
general | before | after
file_name
string
Obligatoire
Nom du fichier.
mime_type
enum
Obligatoire
image/jpeg | image/png | image/webp | application/pdf
content_base64
base64
Obligatoire
Fichier encodé, maximum 6 Mo.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/document/get
Clé + Bearer
Télécharger le contenu Base64 d’un document autorisé.
id
integer
Obligatoire
Identifiant du document.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/document/preview
Clé + Bearer
Charger une miniature d’image optimisée avant l’ouverture et le zoom.
id
integer
Obligatoire
Identifiant d’un document image autorisé.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/document/delete
Clé + Bearer
Supprimer un document qui n’est pas joint à un devis.
id
integer
Obligatoire
Identifiant du document.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}Endpoints
Créer des devis détaillés, récupérer la décision du client et piloter la validation finale de l’intervention.
/case/quote/create
Clé + Bearer
Créer et envoyer un devis détaillé avec lignes, remises, TVA et pièce jointe facultative.
case_id
integer
Obligatoire
Identifiant du dossier.
lines
array
Obligatoire
1 à 100 objets : description, quantity, unit_price, discount_percent et tax_rate.
notes
string
Facultatif
Maximum 5 000 caractères.
valid_until
date
Facultatif
YYYY-MM-DD
attachment
object
Facultatif
file_name, mime_type et content_base64 ; maximum 6 Mo.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/quote/respond
Clé + Bearer
Accepter ou refuser un devis envoyé au client.
case_id
integer
Obligatoire
Identifiant du dossier.
quote_id
integer
Obligatoire
Identifiant du devis.
decision
enum
Obligatoire
accepted | rejected
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/validation/request
Clé + Bearer
Demander au client une validation et une signature.
case_id
integer
Obligatoire
Identifiant du dossier.
validation_type
string
Facultatif
completion par défaut.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/validation/send
Clé + Bearer
Enregistrer la signature du client, directement par le client ou sur le téléphone du technicien attribué.
case_id
integer
Obligatoire
Identifiant du dossier accessible au client ou au technicien attribué.
validation_type
string
Facultatif
completion par défaut.
signature_name
string
Obligatoire
Nom du client qui signe.
signature_base64
base64
Obligatoire
Image PNG de la signature encodée en Base64.
comment
string
Facultatif
Commentaire facultatif du client.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}Endpoints
Automatiser les interventions périodiques et produire les données structurées du rapport final.
/case/recurrence/list
Clé + Bearer
Lister les interventions récurrentes.
Aucun paramètre métier n’est attendu. Envoyez uniquement les en-têtes d’authentification indiqués.
{
"success": true,
"message": "Opération réussie",
"data": {
"items": [],
"pagination": {
"page": 1,
"per_page": 25,
"total": 0,
"last_page": 1
}
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/recurrence/add
Clé + Bearer
Créer une récurrence depuis un dossier modèle.
source_case_id
integer
Obligatoire
Dossier utilisé comme modèle.
frequency
enum
Obligatoire
daily | weekly | monthly | yearly
interval_value
integer
Facultatif
1 - 52
next_run_at
datetime
Obligatoire
YYYY-MM-DD HH:MM:SS
end_at
datetime
Facultatif
Fin facultative.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/recurrence/update
Clé + Bearer
Modifier une intervention récurrente.
id
integer
Obligatoire
Identifiant de la récurrence.
source_case_id
integer
Obligatoire
Dossier modèle.
frequency
enum
Obligatoire
daily | weekly | monthly | yearly
interval_value
integer
Facultatif
1 - 52
next_run_at
datetime
Obligatoire
YYYY-MM-DD HH:MM:SS
end_at
datetime
Facultatif
Fin facultative.
active
boolean
Facultatif
Récurrence active.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/recurrence/delete
Clé + Bearer
Arrêter une intervention récurrente.
id
integer
Obligatoire
Identifiant de la récurrence.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/recurrence/process
Clé + Bearer
Générer les interventions récurrentes arrivées à échéance.
limit
integer
Facultatif
Maximum 200 créations par appel.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/report/summary
Clé + Bearer
Préparer le rapport final avec champs et photos avant/après.
case_id
integer
Obligatoire
Dossier du rapport.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}Endpoints
Récupérer les alertes du client ou du technicien et synchroniser leur état de lecture.
/case/notification/list
Clé + Bearer
Lister les notifications automatiques du client ou du technicien connecté.
limit
integer
Facultatif
1 - 100
recipient_type
enum
Facultatif
Jeton fournisseur uniquement : customer ou technician.
recipient_id
integer
Facultatif
Jeton fournisseur uniquement.
{
"success": true,
"message": "Opération réussie",
"data": {
"items": [],
"pagination": {
"page": 1,
"per_page": 25,
"total": 0,
"last_page": 1
}
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/notification/read
Clé + Bearer
Marquer une notification, ou toutes les notifications, comme lue.
id
integer
Facultatif
Absent pour marquer toutes les notifications comme lues.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}Endpoints
Alimenter les procédures, FAQ et documents techniques consultables par les techniciens dans l’app mobile.
/case/knowledge/categories
Clé + Bearer
Lister les catégories de la base de connaissance. Sur mobile, accès réservé au technicien actif.
include_inactive
boolean
Facultatif
Jeton fournisseur uniquement.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/knowledge/search
Clé + Bearer
Rechercher rapidement FAQ, informations, procédures et documents par mot-clé. Accès mobile réservé aux techniciens.
q
string
Facultatif
Mot ou expression, maximum 120 caractères.
category_id
integer
Facultatif
Filtrer par catégorie.
type
enum
Facultatif
faq | information | procedure | document
page
integer
Facultatif
Page, 1 par défaut.
limit
integer
Facultatif
1 à 50 résultats.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/knowledge/detail
Clé + Bearer
Ouvrir un contenu et lister ses pièces jointes sans charger les fichiers lourds.
id
integer
Obligatoire
Identifiant du contenu.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/knowledge/document
Clé + Bearer
Télécharger une pièce jointe autorisée en Base64.
id
integer
Obligatoire
Identifiant de la pièce jointe.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/knowledge/category/add
Clé + Bearer
Créer une catégorie de connaissances.
title_fr
string
Obligatoire
Titre français.
title_en
string
Facultatif
Titre anglais avec repli français.
description_fr
string
Facultatif
Description française.
description_en
string
Facultatif
Description anglaise.
color
hex
Facultatif
#RRGGBB
active
boolean
Facultatif
Visible par défaut.
sort_order
integer
Facultatif
Ordre.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/knowledge/category/update
Clé + Bearer
Modifier, ordonner ou masquer une catégorie.
id
integer
Obligatoire
Identifiant de la catégorie.
title_fr
string
Obligatoire
Titre français.
title_en
string
Facultatif
Titre anglais.
active
boolean
Facultatif
Visibilité.
sort_order
integer
Facultatif
Ordre.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/knowledge/category/delete
Clé + Bearer
Supprimer une catégorie et conserver ses contenus sans catégorie.
id
integer
Obligatoire
Identifiant de la catégorie.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/knowledge/article/add
Clé + Bearer
Créer une FAQ, information, procédure ou documentation.
category_id
integer
Facultatif
Catégorie facultative.
content_type
enum
Obligatoire
faq | information | procedure | document
title_fr
string
Obligatoire
Titre français.
title_en
string
Facultatif
Titre anglais.
summary_fr
string
Facultatif
Résumé français.
summary_en
string
Facultatif
Résumé anglais.
content_fr
string
Facultatif
Contenu français.
content_en
string
Facultatif
Contenu anglais.
keywords
string
Facultatif
Mots-clés séparés par des virgules.
featured
boolean
Facultatif
Mise en avant.
active
boolean
Facultatif
Publié.
sort_order
integer
Facultatif
Ordre.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/knowledge/article/update
Clé + Bearer
Modifier et publier un contenu.
id
integer
Obligatoire
Identifiant du contenu.
content_type
enum
Obligatoire
faq | information | procedure | document
title_fr
string
Obligatoire
Titre français.
title_en
string
Facultatif
Titre anglais.
content_fr
string
Facultatif
Contenu français.
content_en
string
Facultatif
Contenu anglais.
active
boolean
Facultatif
Publié.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/knowledge/article/delete
Clé + Bearer
Supprimer un contenu et ses pièces jointes.
id
integer
Obligatoire
Identifiant du contenu.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/knowledge/document/add
Clé + Bearer
Joindre un document de maximum 8 Mo.
article_id
integer
Obligatoire
Contenu parent.
title_fr
string
Facultatif
Titre français.
title_en
string
Facultatif
Titre anglais.
file_name
string
Obligatoire
Nom du fichier.
mime_type
string
Obligatoire
Type MIME autorisé.
content_base64
base64
Obligatoire
Maximum 8 Mo.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}/case/knowledge/document/delete
Clé + Bearer
Supprimer une pièce jointe.
id
integer
Obligatoire
Identifiant de la pièce jointe.
{
"success": true,
"message": "Opération réussie",
"data": {
"id": 123,
"status": "ok"
},
"error": null
}{
"success": false,
"message": "La requête ne peut pas être traitée.",
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"category": "validation",
"message": "Vérifiez les paramètres indiqués.",
"details": {
"field": "parameter_name"
}
}
}Référence
Chaque ligne possède un bouton « Paramètres et réponses » qui indique les champs obligatoires ou facultatifs, les statuts possibles et des exemples JSON. Une liste vide signifie que la ressource n’est pas encore alimentée, pas que la route est en panne.