> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devin.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Obtener estadísticas de la página de usuarios

> Obtiene estadísticas de actividad de los usuarios, incluidos nombres, correos electrónicos, fecha y hora de la última actividad, días activos y créditos de prompt usados en la página de Teams.

<div id="overview">
  ## Información general
</div>

Obtén las estadísticas de actividad de los usuarios que aparecen en la página de Teams, incluidos sus nombres, correos electrónicos, horas de la última actividad, días activos y créditos de prompt utilizados.

<div id="request">
  ## Solicitud
</div>

<ParamField body="service_key" type="string" required>
  Tu clave de servicio con permisos "Teams Read-only"
</ParamField>

<ParamField body="group_name" type="string">
  Filtra los resultados para mostrar solo los usuarios de un grupo específico (opcional)
</ParamField>

<ParamField body="start_timestamp" type="string">
  Hora de inicio en formato RFC 3339 (p. ej., `2023-01-01T00:00:00Z`). **Solo afecta al cálculo de `activeDays`.** Si no se proporciona, por defecto se usa hace 1 año.
</ParamField>

<ParamField body="end_timestamp" type="string">
  Hora de finalización en formato RFC 3339 (p. ej., `2023-12-31T23:59:59Z`). **Solo afecta al cálculo de `activeDays`.** Si no se proporciona, por defecto se usa la hora actual.
</ParamField>

<div id="example-request">
  ### Solicitud de ejemplo
</div>

```bash theme={null}
curl -X POST --header "Content-Type: application/json" \
--data '{
  "service_key": "your_service_key_here",
  "group_name": "engineering_team",
  "start_timestamp": "2024-01-01T00:00:00Z",
  "end_timestamp": "2024-12-31T23:59:59Z"
}' \
https://server.codeium.com/api/v1/UserPageAnalytics
```

<div id="response">
  ## Respuesta
</div>

<ResponseField name="userTableStats" type="array">
  Array de objetos de estadísticas de usuarios

  <Expandable title="Objeto de estadísticas de usuario">
    <ResponseField name="name" type="string">
      Nombre para mostrar del usuario
    </ResponseField>

    <ResponseField name="email" type="string">
      Dirección de correo electrónico del usuario
    </ResponseField>

    <ResponseField name="lastUpdateTime" type="string">
      Marca de tiempo de la última actividad del usuario en formato RFC 3339
    </ResponseField>

    <ResponseField name="apiKey" type="string">
      Versión con hash de la API key del usuario
    </ResponseField>

    <ResponseField name="activeDays" type="number">
      La cantidad de días en que el usuario estuvo activo dentro del intervalo de tiempo consultado (definido por `start_timestamp` y `end_timestamp`). Un día se considera activo si el usuario tuvo alguna aceptación de autocompletado, uso de Cascade o uso de Command ese día.
    </ResponseField>

    <ResponseField name="disableCodeium" type="boolean">
      Indica si un admin ha deshabilitado el acceso a Devin Desktop para el usuario. Este campo solo está presente si el acceso se ha deshabilitado explícitamente y, en ese caso, siempre tendrá el valor true.
    </ResponseField>

    <ResponseField name="role" type="string">
      El rol del usuario dentro del equipo (p. ej., admin, miembro)
    </ResponseField>

    <ResponseField name="signupTime" type="string">
      Marca de tiempo de cuando el usuario se registró, en formato RFC 3339
    </ResponseField>

    <ResponseField name="lastAutocompleteUsageTime" type="string">
      La marca de tiempo más reciente en que se usó la modalidad Tab/Autocomplete, en formato RFC 3339
    </ResponseField>

    <ResponseField name="lastChatUsageTime" type="string">
      La marca de tiempo más reciente en que se usó la modalidad Cascade, en formato RFC 3339
    </ResponseField>

    <ResponseField name="lastCommandUsageTime" type="string">
      La marca de tiempo más reciente en que se usó la modalidad Command, en formato RFC 3339
    </ResponseField>

    <ResponseField name="promptCreditsUsed" type="number">
      La cantidad total de prompt credits usados por este usuario durante el **ciclo de facturación actual**, devuelta en **centavos** (1 crédito = 100 centavos). Para obtener el uso real de créditos, divide este valor entre 100. Este valor **no** se ve afectado por los parámetros de solicitud `start_timestamp` o `end_timestamp`. El periodo del ciclo de facturación está indicado por los campos de nivel superior `billingCycleStart` y `billingCycleEnd`.
    </ResponseField>

    <ResponseField name="teamStatus" type="string">
      El estado de la membresía del usuario en el equipo. Valores posibles: `USER_TEAM_STATUS_UNSPECIFIED`, `USER_TEAM_STATUS_PENDING`, `USER_TEAM_STATUS_APPROVED`, `USER_TEAM_STATUS_REJECTED`. Ten en cuenta que la API devuelve todos los usuarios independientemente de su estado en el equipo, mientras que la UI de Manage Members solo muestra los usuarios aprobados.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="billingCycleStart" type="string">
  El inicio del ciclo de facturación actual en formato RFC 3339. Los valores de `promptCreditsUsed` en `userTableStats` corresponden al uso dentro de este ciclo de facturación.
</ResponseField>

<ResponseField name="billingCycleEnd" type="string">
  El final del ciclo de facturación actual en formato RFC 3339. Los valores de `promptCreditsUsed` en `userTableStats` corresponden al uso dentro de este ciclo de facturación.
</ResponseField>

<div id="example-response">
  ### Respuesta de ejemplo
</div>

```json theme={null}
{
  "userTableStats": [
    {
      "name": "Alice",
      "email": "alice@cognition.ai",
      "lastUpdateTime": "2024-10-10T22:56:10.771591Z",
      "apiKey": "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa",
      "activeDays": 178,
      "role": "admin",
      "signupTime": "2024-01-15T08:30:00Z",
      "lastAutocompleteUsageTime": "2024-10-10T22:56:10Z",
      "lastChatUsageTime": "2024-10-10T20:30:00Z",
      "promptCreditsUsed": 12500,
      "teamStatus": "USER_TEAM_STATUS_APPROVED"
    },
    {
      "name": "Bob",
      "email": "bob@cognition.ai",
      "lastUpdateTime": "2024-10-10T18:11:23.980237Z",
      "apiKey": "bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb",
      "activeDays": 210,
      "role": "member",
      "signupTime": "2024-02-01T10:00:00Z",
      "lastAutocompleteUsageTime": "2024-10-10T18:11:23Z",
      "lastChatUsageTime": "2024-10-09T14:22:00Z",
      "lastCommandUsageTime": "2024-10-08T09:15:00Z",
      "promptCreditsUsed": 8300,
      "teamStatus": "USER_TEAM_STATUS_APPROVED"
    }
  ],
  "billingCycleStart": "2024-10-01T00:00:00Z",
  "billingCycleEnd": "2024-11-01T00:00:00Z"
}
```

<div id="error-responses">
  ## Respuestas de error
</div>

<ResponseField name="error" type="string">
  Mensaje de error que describe el problema
</ResponseField>

Escenarios de error comunes:

* Clave de servicio no válida o permisos insuficientes
* Formato de marca de tiempo no válido
* Grupo no encontrado
* Se superó el límite de solicitudes
