Référence de l’API
Tickets
Les tickets permettent de suivre les problèmes nécessitant un suivi. Les visiteurs les créent depuis le widget ; vous pouvez aussi les créer depuis vos systèmes, par exemple lors d’une demande de retour.
L’objet ticket
Attributs
idstringIdentifiant unique, préfixé par
tkt_.objectstringToujours
ticket.numberintegerLa référence courte affichée aux visiteurs, par exemple T-4821.
subjectstringRésumé en une ligne.
descriptionstring | nullInformations détaillées.
statusenumpendingsignifie que vous attendez une réponse du visiteur.openpendingsolvedclosedpriorityenumValeur par défaut :
normal.lownormalhighurgentcontact_idstringLe destinataire du ticket. Il reçoit les mises à jour par e-mail.
conversation_idstring | nullLa conversation à l’origine du ticket, le cas échéant.
assignee_idstring | nullLe membre de l’équipe responsable.
tagsarray of stringsÉtiquettes libres.
metadataobjectJusqu’à 20 paires clé-valeur de vos propres données. Les clés peuvent contenir 40 caractères et les valeurs 500. Définissez une clé sur null pour la supprimer.
created_atstringDate de création de l’objet, au format ISO 8601 en UTC.
updated_atstringDate de dernière mise à jour de l’objet, au format ISO 8601 en UTC.
solved_atstring | nullDate à laquelle le ticket a été marqué comme résolu.
{
"id": "tkt_7Hc1vQ",
"object": "ticket",
"number": 4821,
"subject": "Tasse ébréchée dans la commande n° 1187",
"description": "L’une des deux tasses est arrivée avec un éclat sur le bord.",
"status": "open",
"priority": "high",
"contact_id": "ctc_4mR8tYw2",
"conversation_id": "conv_8HqL2v9K",
"assignee_id": null,
"tags": [
"damaged",
"shipping"
],
"metadata": {
"order_id": "1187"
},
"created_at": "2026-10-03T09:15:30Z",
"updated_at": "2026-10-03T09:15:30Z",
"solved_at": null
}Créer un ticket
/ticketsCrée un ticket et envoie un e-mail de confirmation au contact. Fournissez contact_id ou un objet contact ; un contact est créé si l’adresse e-mail est nouvelle.
Paramètres du corps
subjectstringobligatoireRésumé en une ligne, limité à 200 caractères.
descriptionstringInformations détaillées, limitées à 10 000 caractères.
contact_idstringUn contact existant.
contactobjectRecherche ou crée un contact à partir de son adresse e-mail.
emailstringobligatoireAdresse e-mail du contact.
namestringNom du contact.
priorityenumValeur par défaut :
normal.lownormalhighurgentconversation_idstringAssocie le ticket à une conversation.
assignee_idstringUn membre de l’équipe.
tagsarray of stringsJusqu’à 10 étiquettes.
notify_contactbooleanEnvoie l’e-mail de confirmation. Valeur par défaut :
true.metadataobjectJusqu’à 20 paires clé-valeur de vos propres données. Les clés peuvent contenir 40 caractères et les valeurs 500. Définissez une clé sur null pour la supprimer.
curl -X POST https://api.yuno.chat/v1/tickets \
-H "Authorization: Bearer $YUNO_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{
"subject": "Tasse ébréchée dans la commande n° 1187",
"description": "L’une des deux tasses est arrivée avec un éclat sur le bord.",
"contact": {
"email": "[email protected]",
"name": "Marta Kowalski"
},
"priority": "high",
"tags": [
"damaged",
"shipping"
],
"metadata": {
"order_id": "1187"
}
}'{
"id": "tkt_7Hc1vQ",
"object": "ticket",
"number": 4821,
"subject": "Tasse ébréchée dans la commande n° 1187",
"description": "L’une des deux tasses est arrivée avec un éclat sur le bord.",
"status": "open",
"priority": "high",
"contact_id": "ctc_4mR8tYw2",
"conversation_id": "conv_8HqL2v9K",
"assignee_id": null,
"tags": [
"damaged",
"shipping"
],
"metadata": {
"order_id": "1187"
},
"created_at": "2026-10-03T09:15:30Z",
"updated_at": "2026-10-03T09:15:30Z",
"solved_at": null
}Lister les tickets
/ticketsRenvoie les tickets, du plus récent au plus ancien.
Paramètres de requête
statusenumFiltre par statut.
openpendingsolvedclosedpriorityenumFiltre par priorité.
lownormalhighurgentcontact_idstringFiltre par contact.
tagstringUniquement les tickets portant cette étiquette.
created_afterstringHorodatage ISO 8601.
created_beforestringHorodatage ISO 8601.
limitintegerNombre d’objets à renvoyer, entre 1 et 100. Valeur par défaut : 20.
cursorstringLe
next_cursord’une page précédente. Omettez-le pour commencer par l’objet le plus récent.
curl -G https://api.yuno.chat/v1/tickets \
-H "Authorization: Bearer $YUNO_SECRET_KEY" \
-d status=open \
-d priority=high{
"object": "list",
"data": [
{
"id": "tkt_7Hc1vQ",
"object": "ticket",
"number": 4821,
"subject": "Tasse ébréchée dans la commande n° 1187",
"description": "L’une des deux tasses est arrivée avec un éclat sur le bord.",
"status": "open",
"priority": "high",
"contact_id": "ctc_4mR8tYw2",
"conversation_id": "conv_8HqL2v9K",
"assignee_id": null,
"tags": [
"damaged",
"shipping"
],
"metadata": {
"order_id": "1187"
},
"created_at": "2026-10-03T09:15:30Z",
"updated_at": "2026-10-03T09:15:30Z",
"solved_at": null
}
],
"has_more": true,
"next_cursor": "eyJpZCI6ImNvbnZfM..."
}Récupérer un ticket
/tickets/{id}Renvoie un seul ticket. Vous pouvez aussi fournir son numéro, par exemple /tickets/4821.
Paramètres de chemin
idstringobligatoireL’identifiant ou le numéro du ticket.
curl https://api.yuno.chat/v1/tickets/tkt_7Hc1vQ \
-H "Authorization: Bearer $YUNO_SECRET_KEY"{
"id": "tkt_7Hc1vQ",
"object": "ticket",
"number": 4821,
"subject": "Tasse ébréchée dans la commande n° 1187",
"description": "L’une des deux tasses est arrivée avec un éclat sur le bord.",
"status": "open",
"priority": "high",
"contact_id": "ctc_4mR8tYw2",
"conversation_id": "conv_8HqL2v9K",
"assignee_id": null,
"tags": [
"damaged",
"shipping"
],
"metadata": {
"order_id": "1187"
},
"created_at": "2026-10-03T09:15:30Z",
"updated_at": "2026-10-03T09:15:30Z",
"solved_at": null
}Mettre à jour un ticket
/tickets/{id}Met à jour un ticket. Le passage au statut solved envoie un e-mail au contact, sauf si notify_contact vaut false.
Paramètres de chemin
idstringobligatoireL’identifiant ou le numéro du ticket.
Paramètres du corps
subjectstringNouveau résumé.
statusenumNouveau statut.
openpendingsolvedclosedpriorityenumNouvelle priorité.
lownormalhighurgentassignee_idstring | nullUn membre de l’équipe, ou null.
tagsarray of stringsRemplace les étiquettes existantes.
notify_contactbooleanInforme le contact de cette modification par e-mail. Valeur par défaut :
true.metadataobjectJusqu’à 20 paires clé-valeur de vos propres données. Les clés peuvent contenir 40 caractères et les valeurs 500. Définissez une clé sur null pour la supprimer.
curl -X PATCH https://api.yuno.chat/v1/tickets/tkt_7Hc1vQ \
-H "Authorization: Bearer $YUNO_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{
"status": "solved"
}'{
"id": "tkt_7Hc1vQ",
"object": "ticket",
"number": 4821,
"subject": "Tasse ébréchée dans la commande n° 1187",
"description": "L’une des deux tasses est arrivée avec un éclat sur le bord.",
"status": "solved",
"priority": "high",
"contact_id": "ctc_4mR8tYw2",
"conversation_id": "conv_8HqL2v9K",
"assignee_id": null,
"tags": [
"damaged",
"shipping"
],
"metadata": {
"order_id": "1187"
},
"created_at": "2026-10-03T09:15:30Z",
"updated_at": "2026-10-03T09:15:30Z",
"solved_at": "2026-10-03T11:02:00Z"
}Supprimer un ticket
/tickets/{id}Supprime définitivement un ticket. Cette action est irréversible ; vous pouvez aussi choisir de le fermer.
Paramètres de chemin
idstringobligatoireL’identifiant ou le numéro du ticket.
curl -X DELETE https://api.yuno.chat/v1/tickets/tkt_7Hc1vQ \
-H "Authorization: Bearer $YUNO_SECRET_KEY"{
"id": "tkt_7Hc1vQ",
"object": "ticket",
"deleted": true
}