Beam Help
Richiedi supporto

How-to · Zoho DESK

Come elencare le attività di un ticket in Zoho Desk

Recupera tutte le attività e gli eventi registrati su un ticket.

Elencare le attività di un ticket in Zoho Desk è semplice una volta che disponi dell'endpoint corretto e degli scope OAuth appropriati — una singola richiesta GET alla sotto-risorsa activities restituisce il registro completo delle attività per qualsiasi ticket.


Perché è importante


Ogni ticket di supporto accumula una traccia di cambiamenti di stato, assegnazioni agli agenti e altri eventi di sistema. Recuperare questa traccia in modo programmatico ti consente di verificare la cronologia del ticket, creare dashboard personalizzate o inviare i dati delle attività a flussi di lavoro successivi. Se stai integrando Zoho Desk con un sistema esterno, questo endpoint è il metodo canonico per estrarre tali informazioni senza dover fare scraping dell'interfaccia utente.


Procedura passo dopo passo


Passaggio 1. Verifica che gli scope OAuth includano l'accesso ai ticket.


Prima di effettuare qualsiasi chiamata API, verifica che all'applicazione connessa sia stato concesso lo scope Desk.tickets.READ (come minimo). Una concessione più ampia come Desk.tickets.ALL soddisfa anch'essa questo requisito. Questi scope devono essere dichiarati quando registri il client OAuth e autorizzi la connessione. [2]


Passaggio 2. Recupera il tuo ID organizzazione.


L'API di Zoho Desk richiede un'intestazione orgId in ogni richiesta. Se non hai ancora memorizzato questo valore, chiama l'endpoint delle organizzazioni per recuperarlo. La prima organizzazione restituita nell'array di risposta può essere utilizzata come orgId di lavoro, e dovresti salvarla in modo da non doverla cercare ad ogni chiamata. [8]


Passaggio 3. Identifica l'ID del ticket di destinazione.


Hai bisogno del ticketId numerico del ticket di cui vuoi elencare le attività. Puoi ottenerlo da una precedente chiamata di ricerca o lookup del ticket, oppure direttamente dall'URL dell'interfaccia agente di Zoho Desk, che segue il pattern https://desk.zoho.{dc}/agent/{portal}/tickets/details/{TicketId}. [3]


Passaggio 4. Chiama l'endpoint per elencare le attività del ticket.


Invia una richiesta HTTP GET a:


GET /api/v1/tickets/{ticketId}/activities

Sostituisci {ticketId} con l'identificatore effettivo del ticket ottenuto al Passaggio 3. La richiesta accetta un parametro opzionale p come oggetto per la paginazione o il filtraggio. Includi il tuo token di accesso nell'intestazione Authorization e il tuo orgId nell'intestazione orgId. [4]


Un esempio minimo in Python è il seguente:


# Assuming `desk_api` is an initialised ZohoDeskApi instance
activities = desk_api.list_ticket_activities(ticketId="98765", p=None)
print(activities)

Il metodo internamente esegue GET /api/v1/tickets/98765/activities e restituisce la risposta analizzata. [4]


Passaggio 5. Gestisci la paginazione se necessario.


Il parametro p accetta argomenti di paginazione. Se il ticket ha una cronologia lunga, passa i valori appropriati di pagina o limite all'interno di quel dizionario per scorrere tutti i risultati. [4]


Passaggio 6. (Facoltativo) Confronta con le attività (task).


Le attività e i task sono risorse separate in Zoho Desk. Se hai bisogno anche dei record dei task associati al ticket, utilizza l'endpoint distinto:


GET /api/v1/tickets/{ticket_id}/tasks

Questo restituisce oggetti task anziché il registro delle attività, quindi mantieni le due chiamate separate in base a ciò che richiede la tua integrazione. [7]


Errori comuni


  • Intestazione orgId mancante. Zoho Desk rifiuta le richieste che non includono un ID organizzazione valido. Se il tuo orgId memorizzato è vuoto, avvia il flusso di auto-discovery sull'endpoint delle organizzazioni prima di riprovare. [8]
  • Scope insufficienti. Richiedere le attività con solo Desk.basic.READ risulterà in un errore di autorizzazione. Assicurati che Desk.tickets.READ o Desk.tickets.ALL sia presente nella stringa degli scope. [2]
  • Confondere le attività con i task. Le sotto-risorse /activities e /tasks non sono intercambiabili. Le attività registrano eventi di audit generati dal sistema; i task sono elementi d'azione creati dagli utenti. Chiamare l'endpoint sbagliato restituirà un insieme di risultati vuoto o irrilevante. [4][7]
  • Token di accesso scaduti. I token di accesso di Zoho hanno una durata limitata. La tua integrazione dovrebbe implementare un flusso di aggiornamento del token che scambia il refresh token memorizzato con un nuovo token di accesso ogni volta che viene ricevuta una risposta 401. [8]

Cosa verificare


  • Elenco degli scope: Conferma che Desk.tickets.READ (o Desk.tickets.ALL) compaia nella stringa degli scope OAuth utilizzata durante l'autorizzazione. [2]
  • ID ticket corretto: Verifica che il ticketId nella tua richiesta corrisponda a un ticket reale nella tua organizzazione Zoho Desk — una mancata corrispondenza restituirà un 404 o un array di attività vuoto. [4]
  • Persistenza dell'ID organizzazione: Dopo la prima chiamata di org-discovery riuscita, conferma che l'orgId sia salvato in modo che le richieste successive non richiedano un ulteriore round-trip. [8]

---


*Beam Help fornisce supporto esperto indipendente per i prodotti Zoho e non è il supporto ufficiale di Zoho. Fai sempre riferimento alla documentazione API di Zoho Desk per le specifiche più aggiornate degli endpoint.*

Sources cited

  1. [1] server.py: build_zoho_links
  2. [2] config.py
  3. [3] GET /api/v1/tickets/{ticketId}/activities
  4. [4] server.py: chat_stream
  5. [5] server.py: get_zoho_api
  6. [6] GET /api/v1/tickets/{ticket_id}/tasks
Elenca Attività Ticket Zoho Desk | Beam Help — Beam Help