TradPlus CLI 使用说明
修订历史
| 发布时间 | 修订说明 |
|---|---|
| 2026-08-06 | 补充 Unity Ads 插屏开屏创建说明(流程 B3);placement upsert 参数表对齐 Unity Ads 填写规则 |
| 2026-07-28 | 正式能力基线更新为 v0.21.0-release(本次上线 CLI/MCP 版本;安装与 tp version 说明同步) |
| 2026-07-28 | sdk-event-detail 新增 --include-closed:与 --group-id + --tradplus-placement-id 联用时可查组内已关闭源的历史事件;默认仍仅开启源 |
| 2026-07-22 | 新增 tp intermediary reorder 调整同一广告位 / AB 分组下自定义中介组优先级 |
| 2026-07-15 | SDK 事件明细补充下钻约定:metric=adsource/load_time 仅 event 800/801;800 排障优先 error_code |
| 2026-07-15 | SDK 事件报表支持 --group-id 按中介组过滤 |
| 2026-07-15 | tp report v4 支持指标 fillTime(填充时长) |
| 2026-07-06 | tp report v2 不支持中介组过滤;使用 --group-id 时 CLI 输出 warning,应改用 report v4 |
| 2026-07-06 | V4 报表 --group-id 支持传 0 表示默认中介组(所有国家组) |
| 2026-07-03 | 对齐 CLI/MCP v0.17.0-release;正式环境 version=latest 安装包版本提示 |
| 2026-07-02 | 补充管理 API 与报表 OpenAPI 双后端配置(TRADPLUS_REPORT_BASE_URL);扩展报表网关路由、只读模式与 §11.5 参数 |
| 2026-06-17 | 报表命令新增:用户价值/留存扩展、新增用户分析、设备层级数据下载;补充对应 MCP 工具说明 |
| 2026-06-12 | 新增数据报表查询命令(综合报表、用户价值、留存、A/B测试等) |
| 2026-05-22 | 扩展配置管理与写操作命令 |
| 初版 | 支持开发者后台管理 API 的命令行操作 |
1. 简介
TradPlus CLI(命令名 **tp**)是 开发者后台管理 API 与 数据报表查询 API 的命令行入口。适合在终端完成应用/广告位/广告源管理、中介组与 A/B测试配置,以及综合报表查询,而不必反复登录开发者后台点选。
您可以用它做什么(业务视角)
| 诉求 | 典型命令 |
|---|---|
| 导出应用/广告位/广告源清单 | tp placement list 等;见 §7.7 |
| 查看账号可见资源、广告网络授权摘要 | tp auth summarize、tp summarize platform |
| 按日期拉广告网络API收入、TradPlus统计展示/点击,或按国家地区/广告网络拆分 | tp report v4(及 v3 / api / tp 等子命令) |
| 查用户价值 LTV(1–90 天)或 cohort 留存(2–90 天) | tp report ltv、tp report tpltv、tp report retention |
| 查 DAU/DEU 等用户指标或 A/B测试报表 | tp report active-users;tp report abtest / confidence / forecast |
在测试环境核对配置后再改生产(写操作需 --yes) | tp placement upsert、tp adseat create 等 |
与开发者后台怎么选
| 方式 | 更适 合 |
|---|---|
| 开发者后台 | 可视化改配置、看图表、一次性操作 |
| CLI(本文) | 批量导出、定时拉取报表数据、脚本调用、自动化流水线、ssh 到跳板机执行 |
技术特点(了解即可)
- 可在 Shell 脚本、定时任务、CI 中使用。
- 支持
compact/table/json/jsonl/csv等输出,便于人看或导入表格。 - 写操作默认不执行,必须加
--yes;可先 dry-run 或--print-request核对。 - 复杂筛选、报表维度等可通过
--args '{"字段":值}'补充(字段名与 API 文档一致)。 - 新增报表命令需使用最新版 CLI;若提示命令不存在,请重新安装后执行
tp version确认(当前正式能力基线为 v0.21.0-release;也可安装时显式指定version=v0.21.0-release)。
1.1 按角色怎么读本文(导读)
| 您是… | 建议阅读顺序 | 预计时间 |
|---|---|---|
| 报表查询 | §4.5 输出示例 → §5.4 速查表 → §7.7 导 出 → §12 | 约 20 分钟 |
| 技术支持 | §6 场景 B/D → §11 参数速查 → §9 写操作 | 按需 |
| 研发 / 自动化 | §8 传参规范 → §10 功能列表 → API 文档 | 按需 |
以下为测试环境示例编号(来自示例账号,便于对照返回字段;仅当您已开通测试环境且账号下存在对应数据时适用;正式环境请使用自己开发者后台的应用/广告位编号):
- 应用
12E3E378A088B78EA80AAB035E244E06 - 广告位
0E27DC206544B7A6CE765F262F6B56C7 - 广告源
656437/656438/656439(示例,以您列表为准)
关于文档中的示例
- 文中的应用名、条数、总收入等因账号而异;示例用于说明字段含义与命令写法,不要求数字与名称完全一致。
- 测试环境:须使用贵司或 TradPlus 提供的测试网关与 API Key;未开通时,用生产地址 + 只读命令即可上手。
- 生产环境:写操作会改动真实配置;请先不加
--yes预演,确认无误后再执行。
2. 安装
CLI 安装包由 TradPlus 官方 CDN 分发(https://mcp.tradplusad.com/cli/tp/);下载安装后即可在终端独立使用,无需其他工具。
推荐使用安装脚本。脚本会自动识别操作系统和 CPU 架构,下载对应的 tp 二进制包并安装。
| 系统 | CPU 架构 | 安装命令 |
|---|---|---|
| macOS / Linux | amd64 / arm64 | install-tp.sh |
| Windows | amd64 / arm64 | install-tp.ps1 |
2.1 macOS / Linux
复制并执行:
curl -fsSL "https://mcp.tradplusad.com/cli/tp/install-tp.sh?version=latest" | bash
如果只想确认会下载哪个版本,不实际安装:
curl -fsSL "https://mcp.tradplusad.com/cli/tp/install-tp.sh?version=latest" | bash -s -- --dry-run
2.2 Windows PowerShell
复制并执行:
iwr "https://mcp.tradplusad.com/cli/tp/install-tp.ps1?version=latest" -UseB | iex
如遇执行策略限制,可先下载安装脚本,再用下面方式执行:
powershell -ExecutionPolicy Bypass -File .\install-tp.ps1
2.3 安装后验证
tp version
tp --help
tp version 应显示 v0.21.0-release 或更高版本。若版本过旧、缺少报表子命令,请重新执行安装脚本(可使用 ?version=v0.21.0-release 或 version=latest)。
如果提示 tp: command not found,说明安装目录不在 PATH 中。请根据安装脚本输出,把安装目录加入当前 shell 或系统环境变量。
3. 配置凭证
CLI 调用 API 时需要 API Key 和密钥。可在开发者后台「我的账号」中获取。
双后端说明(必读):配置与报表走不同网关。管理类接口(应用、广告位、广告源等)走 管理 API(Bear + Secret + sign);多数报表走 报表 OpenAPI(仅 Bearer)。CLI 通过两个地址分别路由,一般只需正确设置 base_url,report_base_url 可自动推断(见 §3.4)。
| 名称 | CLI / 环境变量 | 说明 |
|---|---|---|
| API Key | bear / TRADPLUS_BEAR | 即开发者后台「API Key」;CLI 参数名为 bear(历史命名) |
| 密钥 | secret / TRADPLUS_SECRET | 管理 API 及开发者网关报表的请求签名 |
| 管理 API 地址 | base_url / TRADPLUS_BASE_URL | 生产:https://api-developer.tradplusad.com;测试须使用贵司或 TradPlus 提供的开发者网关(示例:https://test-2-api-developer.tradplusad.com) |
| 报表 API 地址 | report_base_url / TRADPLUS_REPORT_BASE_URL | 生产:https://openapi.tradplusad.com;测试:https://test-openapi.tradplusad.com(见 §3.4) |
3.1 写入本地配置
推荐把凭证写入本地配置,后续命令就不需要重复输入。将 <您的 API Key> 和 <您的密钥> 替换为开发者后台「我的账号」中的值:
生产环境:
tp config set \
--bear "<您的 API Key>" \
--secret "<您的密钥>" \
--base-url "https://api-developer.tradplusad.com"
执行 config set --base-url 时,若未显式指定 --report-base-url,会自动配对报表地址为 https://openapi.tradplusad.com。
测试环境:
tp config set \
--bear "<您的 API Key>" \
--secret "<您的密钥>" \
--base-url "https://test-2-api-developer.tradplusad.com"
测试管理网关会自动配对 https://test-openapi.tradplusad.com。也可显式指定:tp config set --report-base-url "https://test-openapi.tradplusad.com"。
查看本地配置:
tp config get
输出含 base_url 与 report_base_url(敏感字段脱敏)。配置文件默认保存到:
~/.tradplus/config.yaml
3.2 使用环境变量
适合脚本、CI、容器等不希望写入本地配置文件的场景。
export TRADPLUS_BEAR="<您的 API Key>"
export TRADPLUS_SECRET="<您的密钥>"
export TRADPLUS_BASE_URL="https://api-developer.tradplusad.com"
export TRADPLUS_REPORT_BASE_URL="https://openapi.tradplusad.com"
其中 TRADPLUS_BASE_URL 为管理 API 根地址。TRADPLUS_REPORT_BASE_URL 可省略:未设置时,若 TRADPLUS_BASE_URL 含 test- 等测试标识,则推断为 https://test-openapi.tradplusad.com,否则为 https://openapi.tradplusad.com。环境变量只在当前终端会话中生效,新的终端窗口需要重新设置,或写入自己的 shell 配置文件。
3.3 使用命令行参数
也可以在单次命令中直接传入:
tp app list --bear "<您的 API Key>" --secret "<您的密钥>"
如需显式指定网关:
tp app list \
--bear "<您的 API Key>" --secret "<您的密钥>" \
--base-url "https://api-developer.tradplusad.com" \
--report-base-url "https://openapi.tradplusad.com"
鉴权优先级从高到低为:
- 命令行参数:
--bear、--secret、--base-url、--report-base-url - 环境变量:
TRADPLUS_BEAR、TRADPLUS_SECRET、TRADPLUS_BASE_URL、TRADPLUS_REPORT_BASE_URL - 本地配置文件:
~/.tradplus/config.yaml
3.4 管理 API 与报表 API 路由
| 环境 | 管理 API(TRADPLUS_BASE_URL) | 报表 API(TRADPLUS_REPORT_BASE_URL) |
|---|---|---|
| 生产 | https://api-developer.tradplusad.com | https://openapi.tradplusad.com |
| 测试 | https://test-2-api-developer.tradplusad.com(或贵司分配的测试开发者网关) | https://test-openapi.tradplusad.com |
下列 CLI / MCP 能力 走报表 OpenAPI(路径如 /v4/allreport,仅 Bearer):
tp report v3/v4/api/tp/abtest/forecast/confidencetp report ltv/tpltv/retention/user-arpu/user-imp/user-ecpmtp report device(v3/v4 设备 CSV 链接)
下列能力走 管理 API 开发者网关(路径如 /api/V2/funnelReport,Bear + Secret + sign):
tp report active-userstp report ltv-imp/user-type/deu-retentiontp report funnel/sdk-event/sdk-event-detail
HTTP 路径与 数据报表查询 API 一致;CLI 负责按上表选择网关,调用方无需手工拼接 URL。
4. 快速开始(按步骤操作)
完成 §3 后,在终端从上到下复制执行。下列「正常时您应看到」指返回结构正确;具体应用名、条数、编号以您账号为准(练习时可参考 §1.1 示例编号)。
| 顺序 | 您执行的命令 | 正常时您应看到 |
|---|---|---|
| 1 | tp version | 显示 CLI 版本号(如 x.y.z) |
| 2 | tp auth summarize | 摘要中含 visible_apps_total、visible_adseats_total 等字段,且为大于 0 的整数 |
| 3 | tp app list --limit 3 | 列表中出现若干应用名称与 app_uuid |
| 4 | tp adseat list --app-uuid "<您的应用编号>" | 列出该应用下的广告位(adseat_list 非空或符合后台) |
| 5 | tp placement list --currency USD --adseat-uuid "<您的广告位编号>" | placements 数组中有广告源,含 placement_id、name、adsource_id(见 §7.7.1) |
若第 2 步摘要正常、第 5 步能列出广告源,说明安装与密钥配置正确。更多场景见 §6;导出表格见 §7.7。
查某个功能怎么写参数时,可在命令后加 --help,例如:tp report v4 --help。
4.5 终端输出示例(长什么样)
下列为在测试环境执行命令后的输出示例(字段名与结构应与您的终端一致;文中名称、条数、编号来自示例账号,您的结果以实际账号为准)。练习时可对照 §1.1 中的示例编号。
准备(只需一次,密钥勿写入文档或截图):
$ export TRADPLUS_BASE_URL="https://test-api-developer.tradplusad.com"
$ export TRADPLUS_BEAR="<您的 API Key>"
$ export TRADPLUS_SECRET="<您的密钥>"
$ tp version
tp CLI version 1.0.0
步骤 1:确认连上的是自己的测试账号
tp auth summarize --format compact
终端实际输出(裁剪,其中数字仅为示例):
{
"account_visibility": {
"authorized_api_accounts": 240,
"visible_adseats_total": 1182,
"visible_apps_total": 121
},
...
"samples": {
"app_uuids": [
"12E3E378A088B78EA80AAB035E244E06",
...
]
}
}
| 在输出里找这一行 | 和开发者后台怎么理解 |
|---|---|
visible_apps_total | 当前 API Key 可见的应用总数(应 > 0) |
visible_adseats_total | 可见的广告位总数(应 > 0) |
samples.app_uuids | 部分账号会返回便于试用的应用编号列表,可用于后续命令 |
步骤 2:打开某个应用
tp app get --app-uuid "12E3E378A088B78EA80AAB035E244E06" --format compact
{
"app_list": [
{
"app_name": "QQ音乐-123123歌手5,梦想的声音高品质免费下载",
"app_uuid": "12E3E378A088B78EA80AAB035E244E06",
...
}
]
}
→ 应用名与开发者后台「应用管理」里一致即正常。
步骤 3:列出该应用下的广告位
tp adseat list --app-uuid "12E3E378A088B78EA80AAB035E244E06" --format compact
{
"adseat_list": [
{
"adseat_uuid": "0E27DC206544B7A6CE765F262F6B56C7",
"seat_name": "asfasdf",
"ad_type": 4,
...
}
]
}
→ seat_name 应与开发者后台广告位名称一致;该应用下有几条以您的列表为准。
步骤 4:列出广告位下的广告源(本示例为 3 条 Bigo 广告源)
tp placement list --currency USD --adseat-uuid "0E27DC206544B7A6CE765F262F6B56C7" --format compact
终端里会出现 "placements": [ ... ] 数组,共 3 个对象。把关键字段摘出来,和开发者后台「广告源列表」对比如下:
终端里 placement_id | 终端里 name(节选) | adsource_id | is_header_bidding |
|---|---|---|---|
| 656437 | OpenAPI Bigo banner 11166177… | 57 | 1(Header Bidding) |
| 656438 | QA OAP-BIGO-BNR-01… | 57 | 1 |
| 656439 | QA OAP-BIGO-BNR-02… | 57 | 0 |
终端实际输出(裁剪):
{
"has_more": 0,
"placements": [
{
"placement_id": "656437",
"name": "OpenAPI Bigo banner 11166177 1778671995",
"adsource_id": "57",
"is_header_bidding": "1",
"account_name": "默认账号",
"seat_name": "asfasdf",
...
},
{
"placement_id": "656438",
"name": "QA OAP-BIGO-BNR-01 1778672197-0",
"adsource_id": "57",
"is_header_bidding": "1",
...
},
{
"placement_id": "656439",
"name": "QA OAP-BIGO-BNR-02 1778672197-1",
"adsource_id": "57",
"is_header_bidding": "0",
...
}
]
}
若您只看到 0 条,请检查是否漏了 --currency USD 或广告位 UUID 是否抄错。
步骤 5:权限自检(客户 UUID 能不能看见)
tp auth scope --app-uuid "12E3E378A088B78EA80AAB035E244E06" --format compact
{
"checks": {
"app_access": {
"visible": true,
"matched_count": 1,
...
},
"placement_access": {
"visible": true,
"matched_count": 3,
...
}
}
}
→ visible": true 且 matched_count": 3:应用可见,且 3 条广告源都能查到。