skills/platform-eaglelab.tcl.com/nebula-event-viewer

nebula-event-viewer

SKILL.md

埋点定义查看 Skill

Overview

通过两步 API 调用,根据用户输入的项目名称和关键字,查询 IDSAAS 系统中的埋点定义详情。

鉴权: 请求头 X-User-Api-Key: a951cad699de405aade583437a8871dd(从 Skills Hub 下载时自动注入)


执行流程

digraph flow {
    rankdir=TB;
    A [label="解析用户输入\n提取项目名 & 关键字", shape=box];
    B [label="GET /project/listByUserId\n获取全部项目列表", shape=box];
    C [label="模糊匹配项目名\n得到 projectId 列表", shape=diamond];
    D [label="告知用户:未找到匹配项目\n请求确认", shape=box];
    E [label="POST /customReportType/pageList\n逐个 projectId 查询", shape=box];
    F [label="格式化输出埋点定义", shape=box];

    A -> B -> C;
    C -> D [label="无匹配"];
    C -> E [label="有匹配"];
    E -> F;
}

Step 1:获取项目列表

GET https://idsaas-o.api.leiniao.com/dc-cms-dataimport/project/listByUserId?userId=all
Header: X-User-Api-Key: a951cad699de405aade583437a8871dd

返回字段说明(result 数组每项):

字段 说明
id 项目 ID(pageList 查询使用此值)
name 项目名称(用于模糊匹配用户输入)
projectType 平台类型(Android/iOS 等)
terminalType 终端类型(tv/mobile 等)
appName 应用名称
desc 项目描述
isDeleted 0=正常,1=已删除(过滤掉)

项目匹配规则:

  • 对用户输入的项目名做大小写不敏感模糊匹配(包含即命中)
  • 匹配 nameappName 字段
  • 过滤掉 isDeleted=1 的项目
  • 若匹配到多个,全部查询;若无匹配,列出候选项请用户确认

Step 2:查询埋点定义

POST https://idsaas-o.api.leiniao.com/dc-cms-dataimport/customReportType/pageList
Header: X-User-Api-Key: a951cad699de405aade583437a8871dd
Header: Content-Type: application/json

请求体:

{
  "page": {
    "size": 10,
    "page": 0,
    "key": "updateTime",
    "value": "desc",
    "echo": 1,
    "search": "<关键字,无则空字符串>"
  },
  "userId": "all",
  "projectId": "<Step1 中得到的项目 id>"
}

参数说明:

  • projectId:每次只传一个项目 ID;多项目需分多次调用后汇总
  • search:用户输入的关键字(如"点击"、"曝光"),无关键字时传 ""
  • page:默认 size=10,可视结果数量调整;iTotalRecords 为总数

响应结构(顶层字段):

{
  "iTotalRecords": 2,
  "iTotalDisplayRecords": 2,
  "result": [ ... ],
  "errcode": 0,
  "des": "请求成功"
}

注意:iTotalRecordsiTotalDisplayRecordsresult 均在响应顶层,不是嵌套在某个对象内。解析时直接用 data["iTotalRecords"]data["result"]不要data["result"]["iTotalRecords"]

返回字段说明(result 数组每项):

字段 说明
name 埋点名称
reportTypeFlag 埋点唯一标识码
desc 功能描述
reportTimeDesc 上报时机
resultDesc 数据用途说明
properties 字段列表(见下)
projectName 所属项目名
developer 负责开发者
updateTime 最后更新时间

properties 数组每项:

字段 说明
fieldName 字段名(英文)
fieldType 类型(string/int 等)
fieldDesc 字段说明
valueRange 取值范围/枚举说明

输出格式

对每条埋点,按以下格式呈现:

## [埋点名称] (projectName)
- 标识码:reportTypeFlag
- 描述:desc
- 上报时机:reportTimeDesc
- 数据用途:resultDesc
- 更新时间:updateTime
- 开发者:developer

### 字段列表
| 字段名 | 类型 | 说明 | 取值范围 |
|--------|------|------|----------|
| ...    | ...  | ...  | ...      |

多项目结果用项目名分组展示,并在开头注明:「共找到 N 条埋点定义(项目A: X条,项目B: Y条)」


示例

用户输入: "我要查看VOD项目下和点击相关的埋点"

执行步骤:

  1. 提取:项目名=VOD,关键字=点击
  2. 调用 Step1,模糊匹配到:腾讯VOD (id=587df318f428480630df8722)、VOD-8月买赠活动 (id=5992a97f0e5b084148a871ba) 等
  3. 确认是否查询全部,或让用户选择
  4. 对每个 id,以 search="点击" 调用 Step2
  5. 汇总展示结果

常见情况处理

情况 处理方式
用户只说项目名,无关键字 search="" 查全部,提示总数后按需翻页
匹配到 3+ 个项目 列出匹配列表让用户确认,再决定全查或选择
结果超过 10 条 告知总数(iTotalRecords),询问是否继续翻页(增大 size 或递增 page)
无任何结果 提示关键字可能过于精确,建议换宽泛词重试
Installs
3
First Seen
Apr 9, 2026