Beam Help
Richiedi supporto

How-to · Zoho DESK

Come cercare all'interno di un modulo specifico in Zoho Desk

Cerca record in un singolo modulo utilizzando query mirate.

Cercare all'interno di un modulo specifico in Zoho Desk tramite API è semplice: si chiama un endpoint dedicato che limita i risultati a un singolo modulo, anziché eseguire la scansione su tutti i moduli contemporaneamente.


Perché è importante


Quando la tua istanza di Zoho Desk contiene migliaia di ticket, contatti, attività o articoli, una ricerca generica può restituire risultati rumorosi e difficili da filtrare. Limitare la query a un singolo modulo — ad esempio tickets o contacts — mantiene le risposte snelle e semplifica notevolmente l'elaborazione successiva. Questo è particolarmente utile quando si creano integrazioni, automazioni o flussi di lavoro assistiti dall'IA sopra le API di Zoho Desk. Come promemoria, Beam Help è un supporto esperto indipendente per Zoho e non è il supporto ufficiale di Zoho.


---


Procedura passo dopo passo


Passaggio 1. Verifica che il tuo token OAuth includa lo scope Desk.search.READ. Senza di esso, l'endpoint di ricerca restituirà un errore di autorizzazione. Questo scope si affianca agli altri scope di Desk come Desk.tickets.READ e Desk.contacts.READ nella tua configurazione OAuth. [2]


Passaggio 2. Identifica il modulo in cui vuoi cercare. I valori comuni includono tickets, contacts, tasks, events e articles — tutti con scope di lettura/scrittura corrispondenti disponibili nell'elenco degli scope OAuth di Desk. [2]


Passaggio 3. Esegui una richiesta GET all'endpoint di ricerca con scope per modulo:


GET /api/v1/{module}/search

Sostituisci {module} con il nome del modulo in minuscolo identificato nel Passaggio 2 (ad esempio, tickets o contacts). Passa i parametri di ricerca come valori nella query string nel dizionario/oggetto p. [1]


Passaggio 4. In Python, la chiamata si presenta così:


results = desk_api.search_in_module(module="tickets", p={"word": "billing issue"})

Il metodo searchinmodule esegue una richiesta GET verso /api/v1/{module}/search e inoltra tutti i parametri forniti come argomenti della query. [1]


Passaggio 5. Se hai bisogno di risultati che coprano *tutti* i moduli contemporaneamente, utilizza invece l'endpoint di ricerca globale:


GET /api/v1/search

Questa operazione searchacrossmodules accetta lo stesso dizionario di parametri p ma non richiede il nome del modulo nel percorso. [6] Usa l'endpoint specifico per modulo (Passaggio 3) ogni volta che vuoi restringere l'ambito.


Passaggio 6. Per inizializzare correttamente il client API di Zoho Desk, assicurati che il tuo oggetto di connessione contenga un deskorgid valido. Il client viene costruito con il dominio API, il token di accesso e l'ID organizzazione; se l'ID organizzazione è assente, il sistema tenterà di rilevarlo automaticamente chiamando l'endpoint delle organizzazioni al primo utilizzo. [7]


---


Errori comuni


  • Scope Desk.search.READ mancante. Si tratta di una voce di scope distinta ed è facile trascurarla quando si copiano elenchi di scope. Verifica che compaia alla fine della configurazione degli scope di Desk. [^2,3]
  • Maiuscole o ortografia errata nel nome del modulo. Il segmento di percorso {module} deve corrispondere esattamente al valore atteso dall'API di Zoho Desk (ad es., tickets, non Tickets o ticket). Un nome di modulo non riconosciuto restituirà tipicamente un errore 404 o un insieme di risultati vuoto. [1]
  • Nessun org ID nel client. Se deskorgid è vuoto al momento dell'istanziazione del client, la prima chiamata API attiva una ricerca automatica dell'organizzazione. Questo aggiunge latenza e può fallire se il token non include Desk.basic.READ. Assicurati che Desk.basic.READ sia incluso nei tuoi scope. [^2,7]
  • Confusione tra ricerca per modulo e ricerca globale. L'endpoint specifico per modulo (/api/v1/{module}/search) e l'endpoint globale (/api/v1/search) sono operazioni separate. Chiamare l'endpoint globale aspettandosi risultati filtrati per modulo non funzionerà come previsto. [^1,6]

---


Cosa verificare


  • Elenco degli scope: Verifica che Desk.search.READ e lo scope del modulo pertinente (ad es., Desk.tickets.READ) siano entrambi presenti nella tua configurazione OAuth prima di effettuare qualsiasi chiamata di ricerca. [2]
  • Percorso dell'endpoint: Conferma che il segnaposto {module} in /api/v1/{module}/search sia sostituito con il nome del modulo corretto in minuscolo, in conformità con le convenzioni API di Zoho Desk. [1]
  • Persistenza dell'org ID: Dopo la prima chiamata API riuscita, verifica che deskorgid sia stato salvato nel record di connessione in modo che le richieste successive non incorrano nell'overhead del rilevamento automatico. [7]

Sources cited

  1. [1] GET /api/v1/{module}/search
  2. [2] config.py
  3. [3] server.py: _count_shortcut_outcome
  4. [4] browser_automation.py
  5. [5] GET /api/v1/search
  6. [6] server.py: get_zoho_api
  7. [7] server.py: build_zoho_links
Cerca in un Modulo | Beam Help — Beam Help