概览
请求
您的服务密钥,需具备“Teams Read-only”权限
将结果限定为特定用户组内的用户(可选)
用于定义要检索数据的查询请求对象数组
查询请求结构
要查询的数据源。可选值:
QUERY_DATA_SOURCE_USER_DATA
- Autocomplete 数据QUERY_DATA_SOURCE_CHAT_DATA
- Chat 数据QUERY_DATA_SOURCE_COMMAND_DATA
- Command 数据QUERY_DATA_SOURCE_PCW_DATA
- Percent Code Written 数据
要检索的字段 selections 数组(参见 Selections 章节)
要应用的过滤条件数组(参见 Filters 章节)
用于分组的 aggregations 数组(参见 Aggregations 章节)
selections
要选择的字段名称(参见“Available Fields”部分)
字段的别名。若未指定,默认采用
{aggregation_function}_{field_name}
(小写)要应用的聚合函数:
QUERY_AGGREGATION_UNSPECIFIED
(默认)QUERY_AGGREGATION_COUNT
QUERY_AGGREGATION_SUM
QUERY_AGGREGATION_AVG
QUERY_AGGREGATION_MAX
QUERY_AGGREGATION_MIN
选择示例
过滤器
要过滤的字段名
用于比较的值
过滤操作:
QUERY_FILTER_EQUAL
QUERY_FILTER_NOT_EQUAL
QUERY_FILTER_GREATER_THAN
QUERY_FILTER_LESS_THAN
QUERY_FILTER_GE
(大于等于)QUERY_FILTER_LE
(小于等于)
过滤示例
Aggregations
用于分组的字段名
该聚合字段的别名
聚合示例
可用字段
用户数据
字段名称 | 描述 | 可用聚合 |
---|---|---|
api_key | 用户 API 密钥的哈希值 | UNSPECIFIED, COUNT |
date | 自动补全的 UTC 日期 | UNSPECIFIED, COUNT |
date UTC-x | 带时区偏移的日期(例如,“date UTC-8”表示 PST) | UNSPECIFIED, COUNT |
hour | 自动补全的 UTC 小时 | UNSPECIFIED, COUNT |
language | 编程语言 | UNSPECIFIED, COUNT |
ide | 使用的 IDE | UNSPECIFIED, COUNT |
version | Windsurf 版本 | UNSPECIFIED, COUNT |
num_acceptances | Autocomplete 接受次数 | SUM, MAX, MIN, AVG |
num_lines_accepted | 接受的代码行数 | SUM, MAX, MIN, AVG |
num_bytes_accepted | 接受的字节数 | SUM, MAX, MIN, AVG |
distinct_users | 去重用户数 | UNSPECIFIED, COUNT |
distinct_developer_days | 去重的(用户,日期)二元组 | UNSPECIFIED, COUNT |
distinct_developer_hours | 去重的(用户,小时)二元组 | UNSPECIFIED, COUNT |
Chat 数据
字段名称 | 描述 | 可用 aggregations |
---|---|---|
api_key | 用户 API key 的哈希值 | UNSPECIFIED, COUNT |
model_id | Chat 模型 ID | UNSPECIFIED, COUNT |
date | Chat 回复的 UTC 日期 | UNSPECIFIED, COUNT |
date UTC-x | 带时区偏移的日期 | UNSPECIFIED, COUNT |
ide | 使用的 IDE | UNSPECIFIED, COUNT |
version | Windsurf 版本 | UNSPECIFIED, COUNT |
latest_intent_type | Chat 意图类型(见下文 Intent Types) | UNSPECIFIED, COUNT |
num_chats_received | 收到的 Chat 消息数量 | SUM, MAX, MIN, AVG |
chat_accepted | 是否接受该回复(点赞) | SUM, COUNT |
chat_inserted_at_cursor | 是否点击了“Insert”按钮 | SUM, COUNT |
chat_applied | 是否点击了“Apply Diff”按钮 | SUM, COUNT |
chat_loc_used | 来自 Chat 的代码行数 | SUM, MAX, MIN, AVG |
Chat 意图类型
CHAT_INTENT_GENERIC
- 常规 ChatCHAT_INTENT_FUNCTION_EXPLAIN
- 函数解释 code lensCHAT_INTENT_FUNCTION_DOCSTRING
- 函数文档字符串 code lensCHAT_INTENT_FUNCTION_REFACTOR
- 函数重构 code lensCHAT_INTENT_CODE_BLOCK_EXPLAIN
- 代码块解释 code lensCHAT_INTENT_CODE_BLOCK_REFACTOR
- 代码块重构 code lensCHAT_INTENT_PROBLEM_EXPLAIN
- 问题解释 code lensCHAT_INTENT_FUNCTION_UNIT_TESTS
- 函数单元测试 code lens
Command 数据
accepted
字段仅筛选已接受的命令。
字段名称 | 描述 | 可用聚合 |
---|---|---|
api_key | 用户 API 密钥的哈希值 | UNSPECIFIED, COUNT |
date | 命令的 UTC 日期 | UNSPECIFIED, COUNT |
timestamp | 命令的 UTC 时间戳 | UNSPECIFIED, COUNT |
language | 编程语言 | UNSPECIFIED, COUNT |
ide | 使用的 IDE | UNSPECIFIED, COUNT |
version | Windsurf 版本 | UNSPECIFIED, COUNT |
command_source | Command 触发来源(见下文 Command Sources) | UNSPECIFIED, COUNT |
provider_source | 生成或编辑模式 | UNSPECIFIED, COUNT |
lines_added | 新增代码行数 | SUM, MAX, MIN, AVG |
lines_removed | 移除代码行数 | SUM, MAX, MIN, AVG |
bytes_added | 新增字节数 | SUM, MAX, MIN, AVG |
bytes_removed | 移除字节数 | SUM, MAX, MIN, AVG |
selection_lines | 选中的行数(生成时为 0) | SUM, MAX, MIN, AVG |
selection_bytes | 选中的字节数(生成时为 0) | SUM, MAX, MIN, AVG |
accepted | 命令是否被接受 | SUM, COUNT |
Command 来源
COMMAND_REQUEST_SOURCE_LINE_HINT_CODE_LENS
COMMAND_REQUEST_SOURCE_DEFAULT
- 典型的 Command 用法COMMAND_REQUEST_SOURCE_RIGHT_CLICK_REFACTOR
COMMAND_REQUEST_SOURCE_FUNCTION_CODE_LENS
COMMAND_REQUEST_SOURCE_FOLLOWUP
COMMAND_REQUEST_SOURCE_CLASS_CODE_LENS
COMMAND_REQUEST_SOURCE_PLAN
COMMAND_REQUEST_SOURCE_SELECTION_HINT_CODE_LENS
提供方来源
PROVIDER_SOURCE_COMMAND_GENERATE
- 生成模式PROVIDER_SOURCE_COMMAND_EDIT
- 编辑模式
PCW 数据
Field Name | Description | Valid Aggregations |
---|---|---|
percent_code_written | 计算为 codeium_bytes / (codeium_bytes + user_bytes) | UNSPECIFIED |
codeium_bytes | 由 Codeium 生成的总字节数 | UNSPECIFIED |
user_bytes | 由用户编写的总字节数 | UNSPECIFIED |
total_bytes | codeium_bytes + user_bytes | UNSPECIFIED |
codeium_bytes_by_autocomplete | 来自 Autocomplete 的 Codeium 字节数 | UNSPECIFIED |
codeium_bytes_by_command | 来自 Command 的 Codeium 字节数 | UNSPECIFIED |
PCW 筛选项
字段名 | 说明 | 示例 |
---|---|---|
language | 编程语言 | KOTLIN, GO, JAVA |
ide | 所用 IDE | jetbrains, vscode |
version | Windsurf 版本 | 1.28.0, 130.0 |
start_timestamp
和 end_timestamp
。
示例请求
用户数据示例
Chat 数据示例
Command 数据示例
PCW 数据示例
响应
示例回复
用户数据响应
Chat 数据响应
Command 数据响应
PCW 数据响应
重要说明
- PCW(Percent Code Written,代码编写占比)在单日或单个用户层面波动较大——按周汇总能获得更稳健的洞察
- 所有被选字段要么全部使用聚合函数,要么全部不使用(不可混用)
- 符合 “distinct_*” 模式的字段不能用于 aggregations
- 字段别名在所有 selections 和 aggregations 中必须唯一
- 如未指定聚合函数,将默认为 UNSPECIFIED