Référence de l’API
Messages
Les messages appartiennent à une conversation. Ils sont rédigés par le visiteur (contact), l’assistant (bot), un membre de l’équipe (agent) ou Yuno Chat (system, par exemple « Léa a rejoint la conversation »).
L’objet message
Attributs
idstringIdentifiant unique, préfixé par
msg_.objectstringToujours
message.conversation_idstringLa conversation à laquelle appartient ce message.
authorobjectL’auteur du message.
typeenumLe type d’auteur.
contactbotagentsystemidstring | nullIdentifiant du contact ou du membre de l’équipe. Null pour
botetsystem.namestring | nullNom affiché.
bodystringLe texte du message. Les liens Markdown sont autorisés.
attachmentsarrayLes fichiers joints au message.
urlstringUne URL de téléchargement signée, valable une heure.
namestringNom d’origine du fichier.
sizeintegerTaille en octets.
sourcesarrayPour les réponses de l’assistant : les pages utilisées pour formuler la réponse.
titlestringTitre de la page.
urlstringURL de la page.
created_atstringDate de création de l’objet, au format ISO 8601 en UTC.
{
"id": "msg_2Wd7nPq1",
"object": "message",
"conversation_id": "conv_8HqL2v9K",
"author": {
"type": "agent",
"id": "usr_team_lea",
"name": "Léa"
},
"body": "C’est fait ! La commande sera livrée à l’adresse de votre bureau.",
"attachments": [],
"sources": [],
"created_at": "2026-10-03T09:14:02Z"
}Lister les messages
/conversations/{id}/messagesRenvoie les messages d’une conversation, du plus ancien au plus récent.
Paramètres de chemin
idstringobligatoireL’identifiant de la conversation.
Paramètres de requête
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/conversations/conv_8HqL2v9K/messages \
-H "Authorization: Bearer $YUNO_SECRET_KEY" \
-d limit=50{
"object": "list",
"data": [
{
"id": "msg_2Wd7nPq1",
"object": "message",
"conversation_id": "conv_8HqL2v9K",
"author": {
"type": "agent",
"id": "usr_team_lea",
"name": "Léa"
},
"body": "C’est fait ! La commande sera livrée à l’adresse de votre bureau.",
"attachments": [],
"sources": [],
"created_at": "2026-10-03T09:14:02Z"
}
],
"has_more": false,
"next_cursor": null
}Envoyer un message
/conversations/{id}/messagesEnvoie un message au visiteur au nom d’un membre de l’équipe. Si la conversation était à waiting, elle passe à handed_off.
Paramètres de chemin
idstringobligatoireL’identifiant de la conversation.
Paramètres du corps
bodystringobligatoireLe texte du message, limité à 4 000 caractères.
author_idstringobligatoireLe membre de l’équipe qui l’envoie.
attachmentsarrayJusqu’à 5 fichiers, chacun fourni sous forme d’une URL publique depuis laquelle Yuno Chat le téléchargera.
urlstringobligatoireURL HTTPS du fichier.
namestringNom du fichier à afficher.
curl -X POST https://api.yuno.chat/v1/conversations/conv_8HqL2v9K/messages \
-H "Authorization: Bearer $YUNO_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{
"body": "C’est fait ! La commande sera livrée à l’adresse de votre bureau.",
"author_id": "usr_team_lea"
}'{
"id": "msg_2Wd7nPq1",
"object": "message",
"conversation_id": "conv_8HqL2v9K",
"author": {
"type": "agent",
"id": "usr_team_lea",
"name": "Léa"
},
"body": "C’est fait ! La commande sera livrée à l’adresse de votre bureau.",
"attachments": [],
"sources": [],
"created_at": "2026-10-03T09:14:02Z"
}Récupérer un message
/messages/{id}Renvoie un seul message.
Paramètres de chemin
idstringobligatoireL’identifiant du message.
curl https://api.yuno.chat/v1/messages/msg_2Wd7nPq1 \
-H "Authorization: Bearer $YUNO_SECRET_KEY"{
"id": "msg_2Wd7nPq1",
"object": "message",
"conversation_id": "conv_8HqL2v9K",
"author": {
"type": "agent",
"id": "usr_team_lea",
"name": "Léa"
},
"body": "C’est fait ! La commande sera livrée à l’adresse de votre bureau.",
"attachments": [],
"sources": [],
"created_at": "2026-10-03T09:14:02Z"
}