POST
/
api
/
v1
/
CascadeAnalytics
Obter Analytics do Cascade
curl --request POST \
  --url https://server.codeium.com/api/v1/CascadeAnalytics \
  --header 'Content-Type: application/json' \
  --data '{
  "service_key": "<string>",
  "group_name": "<string>",
  "start_timestamp": "<string>",
  "end_timestamp": "<string>",
  "emails": [
    {}
  ],
  "ide_types": [
    {}
  ],
  "query_requests": [
    {}
  ]
}'
{
  "queryResults": [
    {
      "cascadeLines": {
        "cascadeLines": [
          {
            "day": "<string>",
            "linesSuggested": "<string>",
            "linesAccepted": "<string>"
          }
        ]
      },
      "cascadeRuns": {
        "cascadeRuns": [
          {
            "day": "<string>",
            "model": "<string>",
            "mode": "<string>",
            "messagesSent": "<string>",
            "cascadeId": "<string>",
            "promptsUsed": "<string>"
          }
        ]
      },
      "cascadeToolUsage": {
        "cascadeToolUsage": [
          {
            "tool": "<string>",
            "count": "<string>"
          }
        ]
      }
    }
  ]
}

Visão geral

Recupere dados de Analytics específicos do Cascade, incluindo linhas sugeridas/aceitas, uso de modelos de IA, consumo de créditos e estatísticas de uso de ferramentas.

Solicitação

service_key
string
required
Sua Chave de serviço com permissões “Teams somente leitura”
group_name
string
Filtre os resultados para usuários de um grupo específico. Não pode ser usado com o parâmetro emails.
start_timestamp
string
Horário de início no formato RFC 3339 (por exemplo, 2023-01-01T00:00:00Z)
end_timestamp
string
Horário de término no formato RFC 3339 (por exemplo, 2023-12-31T23:59:59Z)
emails
array
Array de endereços de email para filtrar os resultados. Não pode ser usado com o parâmetro group_name.
ide_types
array
Filtrar por tipo de IDE. Opções disponíveis:
  • "editor" - Windsurf Editor
  • "jetbrains" - Plugin do JetBrains
Se omitido, retorna dados para ambos os IDEs.
query_requests
array
required
Array de consultas de fontes de dados a serem executadas. Cada objeto deve conter uma das fontes de dados compatíveis.

Fontes de Dados

cascade_lines

Consulta por linhas diárias do Cascade sugeridas e aceitas.
{
  "cascade_lines": {}
}
Campos da resposta:
  • day - Data no formato RFC 3339
  • linesSuggested - Número de linhas sugeridas
  • linesAccepted - Número de linhas aceitas

cascade_runs

Consultar uso do modelo de IA, consumo de créditos e dados de modo.
{
  "cascade_runs": {}
}
Campos de resposta:
  • day - Data no formato RFC 3339
  • model - Nome do modelo utilizado
  • mode - Modo do Cascade (consulte os modos abaixo)
  • messagesSent - Número de mensagens enviadas
  • cascadeId - ID exclusivo da conversa
  • promptsUsed - Créditos consumidos (em centavos)
Modos do Cascade:
  • CONVERSATIONAL_PLANNER_MODE_DEFAULT - Modo de escrita
  • CONVERSATIONAL_PLANNER_MODE_READ_ONLY - Modo de leitura
  • CONVERSATIONAL_PLANNER_MODE_NO_TOOL - Modo legado
  • UNKNOWN - Modo desconhecido

cascade_tool_usage

Consulta de estatísticas de uso de ferramentas (contagens agregadas).
{
  "cascade_tool_usage": {}
}
Campos de resposta:
  • tool - Identificador da ferramenta (consulte os mapeamentos de ferramentas abaixo)
  • count - Número de vezes que a ferramenta foi usada

Mapeamentos de Uso de Ferramentas

Tool IdentifierDisplay Name
CODE_ACTIONEdição de código
VIEW_FILEVisualizar arquivo
RUN_COMMANDExecutar Command
FINDFerramenta de busca
GREP_SEARCHBusca com grep
VIEW_FILE_OUTLINEVisualizar estrutura do arquivo
MQUERYRiptide
LIST_DIRECTORYListar diretório
MCP_TOOLFerramenta MCP
PROPOSE_CODEPropor código
SEARCH_WEBPesquisar na web
MEMORYMemória
PROXY_WEB_SERVERPré-visualização no navegador
DEPLOY_WEB_APPImplantar aplicativo web

Exemplo de solicitação

curl -X POST --header "Content-Type: application/json" \
--data '{
  "service_key": "sua_chave_de_servico_aqui",
  "group_name": "equipe_engenharia",
  "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

Resposta

queryResults
array
Matriz de resultados de consulta, um para cada solicitação

Exemplo de resposta

{
  "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"
          }
        ]
      }
    }
  ]
}

Observações

  • A API retorna dados brutos que podem conter valores “UNKNOWN”
  • Para análise de métricas, agregue por campos específicos de interesse (por exemplo, some promptsUsed para identificar padrões de uso)
  • Os dados de modo e de prompt podem estar distribuídos em várias entradas
  • O consumo de créditos (promptsUsed) é retornado em centavos (100 = 1 crédito)