Reportes

Yuju analytics maneja reportes que permiten juntar varias métricas con el fin de facilitar el procesamiento de los datos

La manera de consultar estos reportes es por medio del siguiente endpoint.

Estructura:

Endpoint:

POST https://api.tp.yuju.io/analytics/reports/custom

Parámetros:

ParámetroDescripción
report_nameNombre del reporte. Ejemplo: sales_and_profitability_summary
start_dateFecha de inicio de la consulta de datos
end_dateFecha de fin de la consulta de datos

📘

Notas Importantes:

  • El rango de fechas no puede ser mayor a un año
  • Los parámetros podrían variar entre cada reporte, es importarte leer la sección de cada uno de ellos para entender cómo se aplica cada uno de ellos

Respuesta:

El procesamiento del reporte se realiza de manera asincrona, en la respuesta se regresa un ID de tarea con el que puedes consultar su estado y resultado.

Cuando el proceso finalice lanzaremos una notificación (webhook) con el tópico analytics-report

Código: 200

AtributoDescripción
id_taskIdentificador de la solicitud para poder consultar en otro endpoint
statusEstado de la solicitud: ‘PENDING’, ‘FAILED’, ‘COMPLETED’
messageDescripción del estado de la solicitud.

Ejemplo de petición:

POST https://api.tp.yuju.io/analytics/reports/custom

{
	"report_name: "sales_and_profitability_summary",
	"start_date": "2025-01-01",
	"end_date": "2025-04-22"
}

{
  "id_task": "79934340ccc74a6497e432595d011816",
  "status": "PENDING",
  "message": "El reporte se esta generando."
}

Webhook

Como se mencionaba anteriormente, cuando el reporte esté listo se te hará llegar una notificación con el tópico analytics-report. El id de la tarea lo encontrarás en el header x-yuju-resource

Puedes ver cómo configurar las notificaciones aquí

Consultar el estado de una tarea

Endpoint

GET https://api.tp.yuju.io/analytics/reports/tasks/{id_task}

ParámetroDescripción
id_taskid de la tarea

Respuesta:

CampoDescripción
statusEstado de la tarea, posibles valores: PENDING, FAILED, COMPLETED, ERROR
urlUrl del archivo generado, únicamente tiene valor cuando la tarea está en estado COMPLETED
{  
   "status": "COMPLETED",  
   "url": "https\://..../file.jsonl"  
}