Las API v2 están en alfa y pueden cambiar en cualquier momento.
Analytics API v2 es la siguiente generación de la Analytics API de Devin Desktop. Expone métricas de consumo
(créditos y ACU) a través de endpoints REST claros, con filtrado por parámetros de consulta, agrupación
flexible, paginación basada en cursores y almacenamiento en caché de respuestas.
Los endpoints de v2 están disponibles actualmente bajo el prefijo /api/v2alpha mientras se termina de definir
la API. La URL base es https://server.codeium.com.
El cambio más importante respecto de v1 es la autenticación.
| v1 Analytics API | v2 Analytics API |
|---|
| Transporte | POST con un cuerpo de solicitud JSON | GET con parámetros de consulta |
| Autenticación | Campo service_key en el cuerpo de la solicitud | encabezado Authorization: Bearer <service_key> |
| Permiso | Varía según el endpoint | Analytics Read |
| Paginación | Ninguna | Basada en cursores (next_page_cursor / page_cursor) |
| Almacenamiento en caché | Ninguno | ETag + If-None-Match (304 Not Modified) |
v2 usa autenticación mediante Bearer token. Pasa tu clave de servicio en el encabezado Authorization en lugar de incluirla en el cuerpo de la solicitud:
Authorization: Bearer <your_service_key>
La clave de servicio debe tener el permiso Analytics Read.
Crear una clave de servicio
- Ve a la página de configuración de tu equipo
- Ve a la sección “Service Keys”
- Crea una nueva clave de servicio con el permiso Analytics Read
- Usa la clave como token Bearer en el encabezado
Authorization
Mantén seguras tus claves de servicio y nunca las expongas en código del cliente ni en repositorios públicos.
Se admiten claves de servicio con ámbito de grupo: cuando una clave está restringida a un grupo, los resultados se
limitan automáticamente a ese grupo.
| Endpoint | Descripción |
|---|
Obtener consumo (GET /api/v2alpha/analytics/consumption) | Consulta el consumo de créditos o ACU con filtros, agrupación, granularidad y paginación |
Obtener usuarios activos (GET /api/v2alpha/analytics/active-users) | Cuenta los usuarios activos únicos, opcionalmente por día/mes o por usuario |
Estrategia de facturación
Las respuestas se adaptan a la estrategia de facturación de tu equipo, indicada en metadata.billing_strategy:
CREDITS — las filas incluyen prompt_credits y flex_credits
ACU — las filas incluyen billed_acus
El campo message_count siempre se devuelve, independientemente de la estrategia.
Las respuestas de listar están paginadas. Cuando hay más datos disponibles, la respuesta incluye un
pagination.next_page_cursor; vuelve a enviarlo como parámetro de consulta page_cursor para obtener la siguiente
página. Los cursores caducan después de 24 horas.
Las respuestas incluyen una cabecera ETag. Vuélvela a enviar en la cabecera If-None-Match en las solicitudes posteriores
para recibir un 304 Not Modified cuando los datos no hayan cambiado.
Estos endpoints no están pensados para supervisar el uso en tiempo real. Los datos se agregan por hora y
el límite de tasa es bajo (10 solicitudes por hora por equipo). Úsalos para informes periódicos y exportaciones
masivas, no para dashboards en tiempo real ni para el seguimiento de cada solicitud.
Los endpoints v2 tienen un límite de tasa de 10 solicitudes por hora por equipo. Si se supera el límite, se devuelve
429 Too Many Requests con un header Retry-After.
Paginar una consulta anterior (siguiendo un next_page_cursor) no cuenta para el límite de tasa:
solo cuenta la consulta inicial de cada informe. El límite bajo refleja que estos endpoints están pensados
para informes periódicos, no para supervisión en tiempo real.