Beam Help
Solicitar ayuda

How-to · Zoho DESK

Cómo acceder a los análisis avanzados en Zoho Desk

Aprovecha informes detallados e información estratégica para la toma de decisiones.

Acceder al endpoint de análisis avanzados en Zoho Desk requiere un cliente de API correctamente autenticado con los scopes de OAuth adecuados y un ID de organización resuelto. Una vez cumplidos esos requisitos previos, una única solicitud GET recupera los datos de análisis.


Por qué esto es importante


Los análisis avanzados de Zoho Desk exponen métricas agregadas — volúmenes de tickets, rendimiento de agentes, cumplimiento de SLA — que no siempre son visibles en las vistas de lista estándar. Los desarrolladores y administradores que integran datos de Desk en dashboards o herramientas de copiloto de IA necesitan una ruta programática fiable para extraer esta información. Configurar correctamente los scopes de OAuth y la resolución de la organización desde el principio evita fallos silenciosos que son difíciles de depurar más adelante. *(Nota: Beam Help es soporte experto independiente para Zoho — no somos el soporte oficial de Zoho.)*


---


Paso a paso


Paso 1. Confirma que tus scopes de OAuth incluyen el conjunto completo de permisos de Zoho Desk antes de solicitar un token. La lista de scopes requeridos abarca tickets, contactos, tareas, eventos, artículos, datos básicos de organización/agente, configuración y búsqueda — por ejemplo Desk.tickets.ALL, Desk.basic.READ, Desk.settings.ALL y Desk.search.READ, entre otros. [2]


Paso 2. Configura tus variables de entorno. Como mínimo necesitas ZOHOCLIENTID, ZOHOCLIENTSECRET y ZOHO_DC (el sufijo del centro de datos, como com, eu, in, etc.). Estos valores se leen al inicio y se utilizan para construir cada llamada a la API. [8]


Paso 3. Inicializa una instancia de ZohoDeskClient pasando el dominio de la API, un token de acceso válido y el ID de organización (orgid) de tu portal de Desk. El cliente también acepta un callback tokenrefresher para que los tokens expirados se renueven automáticamente sin interrumpir procesos de larga duración. [3]


Paso 4. Resuelve el orgid si aún no lo tienes almacenado. En la primera conexión, llama a api.getall_organizations() y lee el campo id del primer elemento de la lista data devuelta. Persiste este valor para que las llamadas posteriores puedan omitir el paso de descubrimiento. [3]


Paso 5. Envuelve tu ZohoDeskClient en una instancia de ZohoDeskApi. Este objeto de nivel superior expone métodos con nombre que se corresponden con los endpoints individuales de la API de Desk, manteniendo limpio el código de llamada. [3]


Paso 6. Llama al endpoint de análisis avanzados:


result = api.get_advanced_analytics(p={})

Internamente, esto emite una solicitud GET a /api/v1/doc/advancedanalytics, reenviando cualquier parámetro de consulta que proporciones mediante el diccionario p. [1]


Paso 7. Gestiona la respuesta. El método devuelve lo que la API de Zoho Desk retorna — normalmente un objeto JSON. Inspecciona las claves de nivel superior para localizar las métricas o los datos del informe que necesita tu integración. [1]


---


Errores comunes


  • Falta el encabezado orgid. Zoho Desk requiere que el ID de organización esté presente en cada solicitud. Si orgid es una cadena vacía, el cliente intentará el autodescubrimiento, pero si esa llamada también falla (por ejemplo, por un scope Desk.basic.READ insuficiente), todas las solicitudes posteriores devolverán errores de autorización. Verifica siempre que el ID de organización esté completado antes de continuar. [3]

  • Lista de scopes incompleta. Omitir incluso un scope requerido — como Desk.basic.READ — puede provocar que la búsqueda de la organización falle silenciosamente, lo que a su vez genera un org_id ausente en la llamada de análisis. Comprueba minuciosamente la cadena de scopes completa en la configuración de tu aplicación OAuth. [2]

  • Dominio del centro de datos incorrecto. El valor de ZOHO_DC debe coincidir con la región donde se creó tu cuenta de Desk (eu, in, com.au, jp o com). Una discrepancia produce respuestas 401 o 404 que son idénticas a los errores de token. [8]

  • Expiración del token durante la sesión. Si no configuras el callback tokenrefresher, los scripts de larga duración fallarán una vez que expire el token de acceso. El refresher consulta el refreshtoken almacenado, llama a ZohoOAuth.refreshtokens() y escribe el nuevo accesstoken de vuelta en la base de datos. [3]

---


Qué verificar


  • Los scopes están completos: Verifica que tu aplicación OAuth en la Consola de API de Zoho incluya todos los scopes de ZOHODESKSCOPES, especialmente Desk.basic.READ y Desk.settings.ALL. [2]
  • El orgid está persistido: Tras el primer descubrimiento exitoso de la organización, confirma que el valor deskorg_id se ha guardado en tu almacén de conexiones para que se reutilice en cada llamada posterior a la API. [3]
  • El endpoint devuelve datos, no un objeto de error: Una llamada exitosa a GET /api/v1/doc/advancedanalytics debe devolver un payload JSON estructurado; si en cambio recibes una clave de error, vuelve a examinar la validez de tu token y la configuración de scopes. [1]

Sources cited

  1. [1] GET /api/v1/_doc/__advanced_analytics
  2. [2] config.py
  3. [3] server.py: get_zoho_api
  4. [4] server.py: build_zoho_links
  5. [5] README.md
  6. [6] browser_automation.py