POST
/
api
/
v1
/
CascadeAnalytics
获取 Cascade Analytics
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>"
          }
        ]
      }
    }
  ]
}

概览

获取 Cascade 专属的 Analytics 数据,包括建议/接受的代码行数、AI 模型使用情况、额度消耗以及工具使用统计。

请求

service_key
string
required
具有 “Teams Read-only” 权限的服务密钥
group_name
string
将结果限定为特定群组内的用户。不可与 emails 参数同时使用。
start_timestamp
string
RFC 3339 格式的开始时间(例如:2023-01-01T00:00:00Z
end_timestamp
string
RFC 3339 格式的结束时间(例如:2023-12-31T23:59:59Z
emails
array
用于筛选结果的邮箱地址数组。不可与 group_name 参数同时使用。
ide_types
array
按 IDE 类型筛选。可选项:
  • "editor" - Windsurf Editor
  • "jetbrains" - JetBrains 插件
如未指定,则返回两种 IDE 的数据。
query_requests
array
required
待执行的数据源查询数组。每个对象应包含一个受支持的数据源。

数据来源

cascade_lines

查询每天被建议和被接受的 Cascade 代码行数。
{
  "cascade_lines": {}
}
响应字段:
  • day - RFC 3339 格式的日期
  • linesSuggested - 建议的代码行数
  • linesAccepted - 接受的代码行数

cascade_runs

查询 AI 模型的使用情况、信用消耗和模式相关数据。
{
  "cascade_runs": {}
}
响应字段:
  • day - RFC 3339 格式的日期
  • model - 使用的 AI 模型名称
  • mode - Cascade 模式(见下方)
  • messagesSent - 发送的消息数
  • cascadeId - 唯一会话 ID
  • promptsUsed - 消耗的额度(以美分计)
Cascade 模式:
  • CONVERSATIONAL_PLANNER_MODE_DEFAULT - 写模式
  • CONVERSATIONAL_PLANNER_MODE_READ_ONLY - 只读模式
  • CONVERSATIONAL_PLANNER_MODE_NO_TOOL - 旧版模式
  • UNKNOWN - 未知模式

cascade_tool_usage

查询工具使用统计(汇总计数)。
{
  "cascade_tool_usage": {}
}
响应字段:
  • tool - 工具标识(见下方工具映射)
  • count - 工具的使用次数

工具使用映射

工具标识符显示名称
CODE_ACTION代码编辑
VIEW_FILE查看文件
RUN_COMMAND运行 Command
FIND查找
GREP_SEARCHGrep 搜索
VIEW_FILE_OUTLINE查看文件大纲
MQUERYRiptide
LIST_DIRECTORY列出目录
MCP_TOOLMCP 工具
PROPOSE_CODE提交代码建议
SEARCH_WEB网页搜索
MEMORYMemory
PROXY_WEB_SERVER浏览器预览
DEPLOY_WEB_APP部署 Web 应用

示例请求

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

响应

queryResults
array
查询结果数组,每个查询对应一个结果

示例回复

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

注意事项

  • API 返回的是原始数据,可能包含“UNKNOWN”值
  • 进行指标分析时,请按关注的特定字段进行聚合(例如,对 promptsUsed 求和以分析使用模式)
  • 模式与提示相关的数据可能分散在多个记录中
  • 额度消耗(promptsUsed)以“分”为单位返回(100 = 1 credit)