Lister tous les fils de discussion dans un ticket Zoho Desk est simple dès lors que vous connaissez le bon endpoint API et les paramètres requis. Cet article vous guide à travers l'appel, les scopes OAuth nécessaires et ce qu'il convient de vérifier ensuite.
Pourquoi c'est important
Les tickets de support dans Zoho Desk accumulent plusieurs fils de discussion — réponses des clients, réponses des agents et notes internes — tout au long de leur cycle de vie. Lorsque vous devez auditer une conversation, créer une intégration ou afficher l'historique des fils dans une application personnalisée, vous devez être en mesure de récupérer chaque fil par programmation plutôt que de faire défiler l'interface manuellement.
Étape par étape
Étape 1. Vérifiez que votre token OAuth inclut les scopes Zoho Desk corrects avant d'effectuer tout appel. Vous avez au minimum besoin de Desk.tickets.READ dans votre liste de scopes autorisés ; les intégrations plus larges incluent généralement aussi Desk.tickets.ALL pour couvrir les opérations d'écriture dans la même session. [2]
Étape 2. Identifiez le ticket_id du ticket dont vous souhaitez récupérer les fils. Il s'agit de l'identifiant numérique que Zoho Desk attribue à chaque enregistrement de ticket — vous pouvez le trouver dans l'URL du ticket dans le portail agent, qui suit le modèle https://desk.zoho.com/agent/{portal}/tickets/details/{TicketId}. [4]
Étape 3. Envoyez une requête GET vers l'endpoint des fils, en substituant l'identifiant de votre ticket dans le chemin :
GET /api/v1/tickets/{ticket_id}/threads
Inclure votre token Bearer dans l'en-tête Authorization. L'endpoint accepte également un paramètre optionnel p (un dictionnaire d'options de requête supplémentaires telles que les contrôles de pagination) si vous devez parcourir une longue liste de fils. [3]
Étape 4. Analysez la réponse. Chaque élément de la collection retournée représente un fil du ticket — une réponse, un transfert ou une note — avec ses propres métadonnées telles que l'expéditeur, l'horodatage et le contenu. Affichez ou stockez les champs pertinents pour votre cas d'usage. [3]
Étape 5. Si vous n'avez besoin que du dernier échange plutôt que de l'historique complet, utilisez plutôt l'endpoint dédié au fil le plus récent :
GET /api/v1/tickets/{ticket_id}/threads/latest
Celui-ci retourne uniquement l'objet du fil le plus récent et est plus efficace lorsque vous n'avez besoin que d'une vérification rapide du statut. [7]
Erreurs courantes
- Token manquant ou avec des scopes insuffisants. Si votre client OAuth n'a reçu que
Desk.tickets.WRITEouDesk.tickets.CREATEmais pasDesk.tickets.READ, l'API rejettera la requête. Vérifiez queDesk.tickets.READ(ouDesk.tickets.ALL) apparaît bien dans la chaîne de scopes active. [2]
- Format d'identifiant de ticket incorrect. Passer une chaîne de sujet ou un identifiant d'enregistrement CRM au lieu de l'identifiant numérique du ticket Desk entraînera une réponse 404 ou vide. Récupérez toujours l'identifiant directement depuis les enregistrements de tickets Zoho Desk. [4]
- Oubli de la pagination. Les tickets avec de longs historiques peuvent retourner des résultats sur plusieurs pages. Utilisez le paramètre
ppour parcourir les pages plutôt que de supposer que la première réponse contient tous les fils. [3]
- Incompatibilité de centre de données. Zoho héberge les données dans plusieurs régions (
.com,.eu,.in, etc.). Assurez-vous que l'URL de base que vous appelez correspond au centre de données où votre organisation Desk est provisionnée — par exemplehttps://desk.zoho.eupour les comptes hébergés en Europe. [4]
Ce qu'il faut vérifier
- Vérifiez que le
ticket_iddans le chemin de votre requête correspond à un ticket réel dans votre organisation Zoho Desk et que le token agent dispose au minimum du scopeDesk.tickets.READ. [^2, ^3] - Confirmez que la réponse contient le nombre attendu d'objets de fils ; si le nombre semble faible, vérifiez si la pagination tronque les résultats et itérez en utilisant le paramètre
p. [3] - Si vous n'aviez besoin que du message le plus récent, comparez le résultat de
/threads/latestavec le dernier élément retourné par/threadspour vous assurer qu'ils correspondent. [7]
---
*Beam Help est une ressource d'assistance experte indépendante pour les produits Zoho et ne constitue pas le support officiel de Zoho. Référez-vous toujours à la documentation de l'API Zoho Desk pour les dernières spécifications des endpoints.*