Aller au contenu principal

Support

Endpoints de gestion des tickets de support utilisateur.

Authentification requise

Tous les endpoints de cette section nécessitent Authorization: Bearer {token}.


GET /api/user/support/tickets

Retourne la liste paginée des tickets de support de l'utilisateur.

Paramètres (query string)

ChampTypeObligatoireDescription
statusstringNonFiltre : open, in_progress, waiting_user, resolved, closed
per_pageintegerNonRésultats par page (défaut : 10, max : 50)
pageintegerNonNuméro de page (défaut : 1)

Réponse 200

{
"user": {},
"message": "Liste de vos tickets de support.",
"data": {
"tickets": [
{
"id": 3,
"reference": "TCK-20260307-ABCD12",
"subject": "Paiement",
"title": "Mon paiement n'a pas été pris en compte",
"description": "...",
"status": "open",
"priority": "high",
"answer": null,
"resolved_at": null,
"created_at": "2026-03-07T09:00:00.000000Z"
}
],
"meta": {
"current_page": 1,
"last_page": 1,
"per_page": 10,
"total": 1,
"has_more": false
}
},
"errors": []
}

POST /api/user/support/ticket/create

Crée un nouveau ticket de support. Supporte une pièce jointe optionnelle.

Format de la requête : multipart/form-data si pièce jointe, sinon application/json

Paramètres

ChampTypeObligatoireDescription
subjectstringOuiCatégorie du problème
titlestringOuiTitre court (max 255 caractères)
descriptionstringOuiDescription détaillée du problème
prioritystringNonlow, medium, high, urgent (défaut : medium)
attached_filefileNonPièce jointe — png, jpg, jpeg, pdf — max 4 Mo

Exemple

{
"subject": "Paiement",
"title": "Mon paiement n'a pas été pris en compte",
"description": "J'ai effectué un paiement ce matin mais mes crédits ne sont pas apparus.",
"priority": "high"
}

Réponses

201 — Ticket créé :

{
"user": {},
"message": "Ticket créé avec succès.",
"data": {
"ticket": {
"id": 3,
"reference": "TCK-20260307-ABCD12",
"subject": "Paiement",
"title": "Mon paiement n'a pas été pris en compte",
"description": "...",
"status": "open",
"priority": "high",
"answer": null,
"resolved_at": null,
"created_at": "2026-03-07T09:00:00.000000Z"
}
},
"errors": []
}

422 — Paramètres invalides :

{
"user": null,
"message": "Données invalides.",
"errors": {
"subject": ["The subject field is required."]
}
}