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

# Obtener Analytics de Cascade

> Consultar métricas y datos de uso específicos de Cascade, incluidas líneas sugeridas/aceptadas, uso de modelos de IA, consumo de créditos y estadísticas de uso de herramientas.

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

Obtén datos de Analytics específicos de Cascade, incluidos los renglones sugeridos/aceptados, el uso del modelo de IA, el consumo de créditos y las estadísticas de uso de herramientas.

<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 a usuarios de un grupo específico. No se puede usar con el parámetro `emails`.
</ParamField>

<ParamField body="start_timestamp" type="string">
  Hora de inicio en formato RFC 3339 (p. ej., `2023-01-01T00:00:00Z`)
</ParamField>

<ParamField body="end_timestamp" type="string">
  Hora de finalización en formato RFC 3339 (p. ej., `2023-12-31T23:59:59Z`)
</ParamField>

<ParamField body="emails" type="array">
  Matriz de direcciones de correo electrónico para filtrar los resultados. No se puede usar con el parámetro `group_name`.
</ParamField>

<ParamField body="ide_types" type="array">
  Filtra por tipo de IDE. Opciones disponibles:

  * `"editor"` - Windsurf Editor
  * `"jetbrains"` - JetBrains Plugin

  Si se omite, devuelve datos para ambos IDE.
</ParamField>

<ParamField body="query_requests" type="array" required>
  Matriz de consultas de fuentes de datos a ejecutar. Cada objeto debe contener una de las fuentes de datos admitidas.
</ParamField>

<div id="data-sources">
  ## Fuentes de datos
</div>

<div id="cascade_lines">
  ### cascade\_lines
</div>

Consulta las líneas diarias de Cascade sugeridas y aceptadas.

```json theme={null}
{
  "cascade_lines": {}
}
```

**Campos de respuesta:**

* `day` - Fecha en formato RFC 3339
* `linesSuggested` - Número de líneas sugeridas
* `linesAccepted` - Número de líneas aceptadas

<div id="cascade_runs">
  ### cascade\_runs
</div>

Consulta el uso del modelo de IA, el consumo de créditos y los datos sobre los modos.

```json theme={null}
{
  "cascade_runs": {}
}
```

**Campos de respuesta:**

* `day` - Fecha en formato RFC 3339
* `model` - Nombre del modelo de IA utilizado
* `mode` - Modo de Cascade (ver modos más abajo)
* `messagesSent` - Número de mensajes enviados
* `cascadeId` - ID único de conversación
* `promptsUsed` - Créditos consumidos (en centavos de crédito)

**Modos de Cascade:**

* `CONVERSATIONAL_PLANNER_MODE_DEFAULT` - Modo de escritura
* `CONVERSATIONAL_PLANNER_MODE_READ_ONLY` - Modo de lectura
* `CONVERSATIONAL_PLANNER_MODE_NO_TOOL` - Modo heredado
* `UNKNOWN` - Modo desconocido

<div id="cascade_tool_usage">
  ### cascade\_tool\_usage
</div>

Consulta las estadísticas de uso de herramientas (conteos agregados).

```json theme={null}
{
  "cascade_tool_usage": {}
}
```

**Campos de respuesta:**

* `tool` - Identificador de la herramienta (ver asignaciones de herramientas a continuación)
* `count` - Número de veces que se usó la herramienta

<div id="tool-usage-mappings">
  ## Asignaciones de uso de herramientas
</div>

| Identificador de herramienta | Nombre visible               |
| ---------------------------- | ---------------------------- |
| `CODE_ACTION`                | Editar código                |
| `VIEW_FILE`                  | Ver archivo                  |
| `RUN_COMMAND`                | Ejecutar comando             |
| `FIND`                       | Herramienta de búsqueda      |
| `GREP_SEARCH`                | Buscar con grep              |
| `VIEW_FILE_OUTLINE`          | Ver esquema del archivo      |
| `MQUERY`                     | Riptide                      |
| `WORKFLOWS_USED`             | Flujos de trabajo utilizados |
| `LIST_DIRECTORY`             | Listar directorio            |
| `MCP_TOOL`                   | Herramienta MCP              |
| `PROPOSE_CODE`               | Proponer código              |
| `SEARCH_WEB`                 | Buscar en la web             |
| `MEMORY`                     | Memoria                      |
| `PROXY_WEB_SERVER`           | Vista previa en el navegador |
| `DEPLOY_WEB_APP`             | Implementar aplicación web   |

<div id="example-request">
  ## Ejemplo de solicitud
</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": "2025-01-01T00:00:00Z",
  "end_timestamp": "2025-01-02T00:00:00Z",
  "emails": ["user1@windsurf.com", "user2@windsurf.com"],
  "ide_types": ["editor"],
  "query_requests": [
    {
      "cascade_lines": {}
    },
    {
      "cascade_runs": {}
    },
    {
      "cascade_tool_usage": {}
    }
  ]
}' \
https://server.codeium.com/api/v1/CascadeAnalytics
```

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

<ResponseField name="queryResults" type="array">
  Array de resultados de consulta, uno por cada solicitud de consulta

  <Expandable title="Resultado de Cascade Lines">
    <ResponseField name="cascadeLines" type="object">
      <ResponseField name="cascadeLines" type="array">
        Array de estadísticas diarias de líneas

        <ResponseField name="day" type="string">
          Fecha en formato RFC 3339
        </ResponseField>

        <ResponseField name="linesSuggested" type="string">
          Número de líneas sugeridas ese día
        </ResponseField>

        <ResponseField name="linesAccepted" type="string">
          Número de líneas aceptadas ese día
        </ResponseField>
      </ResponseField>
    </ResponseField>
  </Expandable>

  <Expandable title="Resultado de Cascade Runs">
    <ResponseField name="cascadeRuns" type="object">
      <ResponseField name="cascadeRuns" type="array">
        Array de estadísticas de uso del modelo de IA

        <ResponseField name="day" type="string">
          Fecha en formato RFC 3339
        </ResponseField>

        <ResponseField name="model" type="string">
          Nombre del modelo de IA utilizado para la ejecución
        </ResponseField>

        <ResponseField name="mode" type="string">
          Identificador del modo de Cascade
        </ResponseField>

        <ResponseField name="messagesSent" type="string">
          Número de mensajes enviados
        </ResponseField>

        <ResponseField name="cascadeId" type="string">
          Identificador único de la conversación
        </ResponseField>

        <ResponseField name="promptsUsed" type="string">
          Créditos consumidos en centavos (por ejemplo, "100" = 1 crédito)
        </ResponseField>
      </ResponseField>
    </ResponseField>
  </Expandable>

  <Expandable title="Resultado de uso de herramientas de Cascade">
    <ResponseField name="cascadeToolUsage" type="object">
      <ResponseField name="cascadeToolUsage" type="array">
        Array de estadísticas de uso de herramientas

        <ResponseField name="tool" type="string">
          Identificador de la herramienta
        </ResponseField>

        <ResponseField name="count" type="string">
          Número de veces que se utilizó la herramienta
        </ResponseField>
      </ResponseField>
    </ResponseField>
  </Expandable>
</ResponseField>

<div id="example-response">
  ### Ejemplo de respuesta
</div>

```json theme={null}
{
  "queryResults": [
    {
      "cascadeLines": {
        "cascadeLines": [
          {
            "day": "2025-05-01T00:00:00Z",
            "linesSuggested": "206",
            "linesAccepted": "157"
          },
          {
            "day": "2025-05-02T00:00:00Z",
            "linesSuggested": "16"
          }
        ]
      }
    },
    {
      "cascadeRuns": {
        "cascadeRuns": [
          {
            "day": "2025-05-01T00:00:00Z",
            "model": "Claude 3.7 Sonnet (Thinking)",
            "mode": "CONVERSATIONAL_PLANNER_MODE_DEFAULT",
            "messagesSent": "1",
            "cascadeId": "0d35c1f7-0a85-41d0-ac96-a04cd2d64444"
          }
        ]
      }
    },
    {
      "cascadeToolUsage": {
        "cascadeToolUsage": [
          {
            "tool": "CODE_ACTION",
            "count": "15"
          },
          {
            "tool": "LIST_DIRECTORY",
            "count": "20"
          }
        ]
      }
    }
  ]
}
```

<div id="notes">
  ## Notas
</div>

* La API devuelve datos sin procesar que pueden contener valores "UNKNOWN"
* Para el análisis de métricas, realiza agregaciones por campos específicos de interés (por ejemplo, suma `promptsUsed` para obtener patrones de uso)
* Los datos de modo y de prompt pueden estar divididos en múltiples entradas
* El consumo de créditos (`promptsUsed`) se devuelve en centavos (100 = 1 crédito)
