Skip to main content
Las API v2 están en alfa y pueden cambiar en cualquier momento.

Descripción general

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.

Novedades de v2

El cambio más importante respecto de v1 es la autenticación.

Autenticación

v2 usa autenticación mediante token Bearer. Pasa tu credencial en el encabezado Authorization en lugar de incluirla en el cuerpo de la solicitud:
Se aceptan dos tipos de credenciales: una clave de API de usuario de servicio de Devin (recomendada: la misma clave cog_ que usas para la API de Devin) o una clave de servicio de Windsurf.

Claves de API de usuarios de servicio de Devin

Si ya gestionas usuarios de servicio de Devin, no necesitas credenciales independientes de Windsurf:
  1. Crea un usuario de servicio en Settings > Usuarios de servicio (organización) o Settings de Enterprise > Usuarios de servicio (Enterprise)
  2. Asígnale un rol personalizado que incluya el permiso Use Local Analytics API (el rol de Admin integrado ya lo incluye)
  3. Genera una clave de API para el usuario de servicio; empieza por cog_
  4. Usa esa clave como token Bearer
Los resultados abarcan toda la cuenta de Devin a la que pertenece el usuario de servicio, y metadata.team_id es el identificador del equipo de Devin de la cuenta (devin-team$<account_id>).
El filtro group_id es un concepto propio de los equipos de Windsurf y no se admite con credenciales de Devin; las solicitudes que combinan ambos devuelven 400 Bad Request.

Claves de servicio de Windsurf

  1. Ve a la página de configuración de tu equipo
  2. Ve a la sección “Service Keys”
  3. Crea una nueva clave de servicio con el permiso Analytics Read
  4. Usa la clave como token Bearer en el encabezado Authorization
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.
Mantén seguras estas credenciales y nunca las expongas en código del cliente ni en repositorios públicos.

Endpoints disponibles

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.

Almacenamiento en caché

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.

Límites de tasa

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.