sino-bc-cli 1.0.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +256 -0
- package/dist/affordance/auth.md +31 -0
- package/dist/affordance/bill.md +48 -0
- package/dist/affordance/biz-line-ai-strategy.md +35 -0
- package/dist/affordance/biz-line-metrics.md +47 -0
- package/dist/affordance/biz-line.md +84 -0
- package/dist/affordance/common-file.md +25 -0
- package/dist/affordance/dashboard.md +75 -0
- package/dist/affordance/dict.md +28 -0
- package/dist/affordance/document.md +67 -0
- package/dist/affordance/im.md +91 -0
- package/dist/affordance/invoice.md +49 -0
- package/dist/affordance/media.md +17 -0
- package/dist/affordance/organization.md +47 -0
- package/dist/affordance/project-analysis.md +95 -0
- package/dist/affordance/project.md +321 -0
- package/dist/affordance/quota.md +19 -0
- package/dist/affordance/reconciliation.md +41 -0
- package/dist/affordance/report.md +75 -0
- package/dist/affordance/sso-team-group.md +30 -0
- package/dist/affordance/task.md +148 -0
- package/dist/affordance/tenant.md +17 -0
- package/dist/affordance/user.md +41 -0
- package/dist/affordance/wallet.md +100 -0
- package/dist/api-doc/README.md +67 -0
- package/dist/api-doc/custom/template.md +0 -0
- package/dist/api-doc/oapi/auth.md +61 -0
- package/dist/api-doc/oapi/bill.md +130 -0
- package/dist/api-doc/oapi/biz-line-ai-strategy.md +119 -0
- package/dist/api-doc/oapi/biz-line-metrics.md +419 -0
- package/dist/api-doc/oapi/biz-line.md +382 -0
- package/dist/api-doc/oapi/common-file.md +50 -0
- package/dist/api-doc/oapi/dashboard.md +218 -0
- package/dist/api-doc/oapi/dict.md +49 -0
- package/dist/api-doc/oapi/document.md +182 -0
- package/dist/api-doc/oapi/im.md +278 -0
- package/dist/api-doc/oapi/invoice.md +129 -0
- package/dist/api-doc/oapi/media.md +17 -0
- package/dist/api-doc/oapi/organization.md +94 -0
- package/dist/api-doc/oapi/project-analysis.md +364 -0
- package/dist/api-doc/oapi/project.md +1114 -0
- package/dist/api-doc/oapi/quota.md +21 -0
- package/dist/api-doc/oapi/reconciliation.md +98 -0
- package/dist/api-doc/oapi/report.md +254 -0
- package/dist/api-doc/oapi/sso-team-group.md +54 -0
- package/dist/api-doc/oapi/task.md +528 -0
- package/dist/api-doc/oapi/tenant.md +17 -0
- package/dist/api-doc/oapi/user.md +98 -0
- package/dist/api-doc/oapi/wallet.md +275 -0
- package/dist/generated/api-catalog.json +39681 -0
- package/dist/generated/api-directory-index.json +1509 -0
- package/dist/index.js +2 -0
- package/dist/skill-manifest.json +336 -0
- package/dist/skills/biz-line-strategy-generate/SKILL.md +122 -0
- package/dist/skills/biz-line-strategy-generate/references/ai-strategy-prompt.md +50 -0
- package/dist/skills/biz-line-strategy-generate/references/api-flow.md +155 -0
- package/dist/skills/biz-line-strategy-generate/references/four-strategies.md +58 -0
- package/dist/skills/biz-line-strategy-generate/references/metrics.md +119 -0
- package/dist/skills/biz-line-strategy-generate/references/output-excel.md +63 -0
- package/dist/skills/biz-line-strategy-generate/references/runtime.md +127 -0
- package/dist/skills/biz-line-strategy-generate/references/spec.md +500 -0
- package/dist/skills/biz-line-strategy-generate/scripts/ai_strategy.py +89 -0
- package/dist/skills/biz-line-strategy-generate/scripts/build_report.py +629 -0
- package/dist/skills/biz-line-strategy-generate/scripts/cleanup.py +87 -0
- package/dist/skills/biz-line-strategy-generate/scripts/cli_json.py +705 -0
- package/dist/skills/biz-line-strategy-generate/scripts/fetch_data.py +449 -0
- package/dist/skills/biz-line-strategy-generate/scripts/run_workflow.py +402 -0
- package/dist/skills/biz-line-strategy-generate/scripts/strategy_output.py +556 -0
- package/dist/skills/biz-line-strategy-generate/scripts/submit_tags.py +32 -0
- package/dist/skills/biz-line-strategy-generate/scripts/summarize.py +932 -0
- package/dist/skills/biz-line-strategy-generate/scripts/test_ai_strategy.py +235 -0
- package/dist/skills/biz-line-strategy-generate/scripts/test_cli_json.py +97 -0
- package/dist/skills/biz-line-strategy-generate/scripts/test_database_output.py +904 -0
- package/dist/skills/biz-line-strategy-generate/scripts/test_pipeline.py +253 -0
- package/dist/skills/biz-line-strategy-generate/scripts/test_strategy_rules.py +224 -0
- package/dist/skills/biz-line-strategy-generate/scripts/test_tag_submission.py +238 -0
- package/dist/skills/biz-line-strategy-generate/scripts/test_workflow.py +1233 -0
- package/dist/skills/sino-bc-cli/SKILL.md +62 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-auth/SKILL.md +36 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-bill/SKILL.md +48 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-biz-line/SKILL.md +58 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-biz-line/references/common-mistakes.md +7 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-biz-line/references/enums.md +13 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-biz-line-ai-strategy/SKILL.md +46 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-biz-line-metrics/SKILL.md +46 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-common-file/SKILL.md +44 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-dashboard/SKILL.md +50 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-dict/SKILL.md +48 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-document/SKILL.md +53 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-im/SKILL.md +62 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-invoice/SKILL.md +48 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-media/SKILL.md +40 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-organization/SKILL.md +46 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-project/SKILL.md +112 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-project-analysis/SKILL.md +61 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-project-analysis/references/analysis-workflow.md +21 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-project-analysis/references/filters-and-metrics.md +30 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-quota/SKILL.md +44 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-reconciliation/SKILL.md +47 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-report/SKILL.md +53 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-sso-team-group/SKILL.md +45 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-task/SKILL.md +73 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-task/references/state-machine.md +18 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-tenant/SKILL.md +34 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-user/SKILL.md +57 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-wallet/SKILL.md +55 -0
- package/dist/skills/sino-bc-cli/references/domain-index/module-8534789.md +53 -0
- package/dist/skills/sino-bc-cli/references/domain-index/module-8551546.md +70 -0
- package/dist/skills/sino-bc-cli/references/domain-index/module-8562638.md +13 -0
- package/dist/skills/sino-bc-cli/references/domain-index/module-8566367.md +13 -0
- package/dist/skills/sino-bc-cli/references/domain-index/module-8581524.md +17 -0
- package/dist/skills/sino-bc-cli/references/domain-index/module-8601540.md +13 -0
- package/dist/skills/sino-bc-cli/references/domain-index/module-8614891.md +33 -0
- package/dist/skills/sino-bc-cli/references/domain-index/module-8621792.md +17 -0
- package/dist/skills/sino-bc-shared/SKILL.md +31 -0
- package/dist/skills/sino-bc-shared/references/auth-recovery.md +36 -0
- package/dist/skills/sino-bc-shared/references/config-and-env.md +60 -0
- package/dist/skills/sino-bc-shared/references/output-contract.md +86 -0
- package/dist/skills/sino-bc-shared/references/skill-lifecycle.md +17 -0
- package/dist/skills/sino-bc-shared/references/tenant-context.md +21 -0
- package/dist/skills/sino-bc-shared/references/write-approval.md +16 -0
- package/package.json +70 -0
- package/scripts/postinstall.cjs +36 -0
|
@@ -0,0 +1,419 @@
|
|
|
1
|
+
# 业务线策略广告成效数据
|
|
2
|
+
|
|
3
|
+
对应命令:`biz-line-metrics +<shortcut>` 与 `biz-line-metrics api <name>`。
|
|
4
|
+
|
|
5
|
+
执行前 MUST 读取 [sino-bc-shared](../../skills/sino-bc-shared/SKILL.md) 轻量入口,再按命中条件读取其 references;当前上下文已读且仍适用时可复用。可用 `sino-bc-cli /skill` 查询真实路径。
|
|
6
|
+
|
|
7
|
+
## 1. Facebook广告策略维度数据
|
|
8
|
+
|
|
9
|
+
`POST /sino-icenter/mcp/strategy/dimension/facebook/ad/list`
|
|
10
|
+
|
|
11
|
+
主体上下文:`tenant=false`。
|
|
12
|
+
|
|
13
|
+
角色范围:`sso/system`。
|
|
14
|
+
|
|
15
|
+
风险:`read`。
|
|
16
|
+
|
|
17
|
+
查询 Facebook(Meta)渠道的广告策略配置数据。按指定广告账户和日期范围,返回广告的策略设置明细(广告目标、成效目标、创意类型、出价方式、调整出价、受众类型、兴趣词包、年龄、性别等),用于分析某批账户在某段时间内各广告的策略配置分布。本接口只返回策略维度,不含消耗、点击等成效指标,需要成效数据请改用「Facebook广告策略成效数据」接口。
|
|
18
|
+
|
|
19
|
+
【国家维度特别说明】
|
|
20
|
+
country_code(国家)只能单独传,或与 calendar_date(投放日期)两个一起传;与其他任何维度同传都会报错「[country_code]只能和[calendar_date]同时传入」。
|
|
21
|
+
传入 country_code 时服务端转走跨渠道广告数据接口取数,由此有两点差异:
|
|
22
|
+
一是 dimensionValues 里额外支持 country_code 作为过滤条件,传国家码数组即可按国家筛选;不传 country_code 维度时该过滤条件无效。
|
|
23
|
+
二是 headerMap 的列名来自跨渠道接口,calendar_date 列名为「日期」而不是「投放日期」,country_code 列名为「国家/地区」;展示列名请以 headerMap 实际返回值为准,不要写死。
|
|
24
|
+
|
|
25
|
+
【入参填写规则】
|
|
26
|
+
1. startDate / endDate:字符串,格式 yyyy-MM-dd,两者都必填。
|
|
27
|
+
2. dimensionValues:过滤条件,结构是「字段名 → 取值数组」的键值对(Java 类型 Map<String, List<Object>>)。每个 key 是字段 code,对应的 value 必须是数组,即使只筛一个值也要用数组包裹;同一个 key 内的多个值之间是「或」关系,命中任意一个即返回。本接口默认只有 account_id 这一个 key 生效;当 dimensions 里传了 country_code 时,额外支持 country_code 作为过滤条件。传入其余 key 不会报错,但也不会产生任何过滤效果。
|
|
28
|
+
3. dimensions:分组维度数组,必填。传多个维度时按多个字段组合分组,效果等同 SQL 的 GROUP BY 多列,维度越多返回行数越多、粒度越细。
|
|
29
|
+
4. 排序:单字段排序用 order(字段名)+ orderType(desc / asc);多字段排序用 orders,结构是「字段名 → 排序方向」的有序键值对,按书写顺序依次排序,例如 {"calendar_date":"desc","account_id":"asc"}。两者可同时使用,order 指定的字段会追加到 orders 之后。
|
|
30
|
+
5. 分页:page 从 1 开始(默认 1),size 为每页条数(默认 10)。返回的 result.total 是总条数,据此判断是否还有下一页。
|
|
31
|
+
|
|
32
|
+
【请求示例】
|
|
33
|
+
{
|
|
34
|
+
"startDate": "2026-08-01",
|
|
35
|
+
"endDate": "2026-08-31",
|
|
36
|
+
"dimensionValues": {
|
|
37
|
+
"account_id": [
|
|
38
|
+
"act_1036928420879324"
|
|
39
|
+
]
|
|
40
|
+
},
|
|
41
|
+
"dimensions": [
|
|
42
|
+
"calendar_date",
|
|
43
|
+
"optimization_goal"
|
|
44
|
+
],
|
|
45
|
+
"order": "calendar_date",
|
|
46
|
+
"orderType": "desc",
|
|
47
|
+
"page": 1,
|
|
48
|
+
"size": 20
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
【返回格式】
|
|
52
|
+
result.data 为数据行数组,每行的每个字段有两个 key:
|
|
53
|
+
一是原始值,key 即请求的 code,做计算或比较时用这个;
|
|
54
|
+
二是展示值,key 加 display_ 前缀,直接呈现给用户时用这个,空值为 "-"。
|
|
55
|
+
result.headerMap 是字段 code 到中文列名的映射,用于给用户展示列名。
|
|
56
|
+
result.total 为总条数,result.page 和 result.size 为当前分页。
|
|
57
|
+
|
|
58
|
+
**输入参数(--data)**
|
|
59
|
+
|
|
60
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
61
|
+
| --- | --- | --- | --- | --- |
|
|
62
|
+
| `startDate` | string | body | 是 | 统计开始日期,字符串,格式 yyyy-MM-dd,例如 "2026-08-01"。必填。 |
|
|
63
|
+
| `endDate` | string | body | 是 | 统计结束日期,字符串,格式 yyyy-MM-dd,例如 "2026-08-31"。必填,需大于等于 startDate。 |
|
|
64
|
+
| `dimensionValues` | object | body | 是 | 过滤条件。结构为「字段名 → 取值数组」的键值对(Java 类型 Map<String, List<Object>>),value 必须是数组,即使只筛一个值也要用数组包裹。本接口默认只有 account_id 一个 key 生效;当 dimensions 里传了 country_code 时,额外支持 country_code 作为过滤条件(国家码数组)。其余 key 传入不报错但无过滤效果。示例:{"account_id": ["act_123", "act_456"]} |
|
|
65
|
+
| `dimensions` | array | body | 是 | 分组维度,字符串数组,必传且不能为空数组(传空数组返回结果为空)。传多个维度时按多字段组合分组,等同 SQL 的 GROUP BY 多列,维度越多粒度越细、返回行数越多。各维度含义:calendar_date(投放日期)、account_id(广告账户ID)、account_name(广告账户名称)、campaign_id(广告系列ID)、campaign_name(广告系列名称)、adgroup_id(广告组ID)、adgroup_name(广告组名称)、ad_id(广告ID)、ad_name(广告名称)、bid_amount(调整出价)、objective(广告目标)、optimization_goal(成效目标)、ad_format(创意类型)、bid_strategy(出价方式)、audience_type(受众类型)、targeting_interests(兴趣词包)、targeting_flexible_interests(弹性兴趣词包)、targeting_exclusion_interests(排除兴趣词包)、targeting_age(年龄)、targeting_genders(性别)、country_code(国家,只能单独传或与 calendar_date 两个一起传) |
|
|
66
|
+
| `order` | string | body | 否 | 单字段排序的字段名,填单个 code,取值范围为 dimensions 的可选值。不必包含在已传的字段中,服务端会自动补入参与排序,但该字段不会作为列返回。与 orders 可同时使用,order 指定的字段会追加到 orders 之后。 |
|
|
67
|
+
| `orderType` | string | body | 否 | 排序方向,配合 order 使用。desc 降序,asc 升序,默认 asc。 |
|
|
68
|
+
| `orders` | object | body | 否 | 多字段排序,结构为「字段名 → 排序方向」的有序键值对(Java 类型 LinkedHashMap<String, String>),按 key 的书写顺序依次排序,方向取值 desc 或 asc。示例:{"calendar_date":"desc","account_id":"asc"}。只需单字段排序时用 order + orderType 即可,不必传本字段。 |
|
|
69
|
+
| `page` | integer | body | 否 | 页码,从 1 开始,默认 1。 |
|
|
70
|
+
| `size` | integer | body | 否 | 每页条数,默认 10,建议显式指定。返回的 result.total 为总条数,据此判断是否还有下一页。 |
|
|
71
|
+
|
|
72
|
+
## 2. Google广告策略维度数据
|
|
73
|
+
|
|
74
|
+
`POST /sino-icenter/mcp/strategy/dimension/google/ad/list`
|
|
75
|
+
|
|
76
|
+
主体上下文:`tenant=false`。
|
|
77
|
+
|
|
78
|
+
角色范围:`sso/system`。
|
|
79
|
+
|
|
80
|
+
风险:`read`。
|
|
81
|
+
|
|
82
|
+
查询 Google 渠道的广告策略配置数据。按指定广告账户和日期范围,返回广告的策略设置明细(成效目标、创意类型、出价方式、CPC/CPM/CPV 出价、广告系列类型、关键字等),用于分析某批账户在某段时间内各广告的策略配置分布。Google 渠道不支持广告目标和兴趣词包维度,出价字段使用 cpc_bid_amount、cpm_bid_amount、cpv_bid_amount 三个独立维度。本接口只返回策略维度,不含消耗、点击等成效指标,需要成效数据请改用「Google广告策略成效数据」接口。
|
|
83
|
+
|
|
84
|
+
【国家维度特别说明】
|
|
85
|
+
country_code(国家)只能单独传,或与 calendar_date(投放日期)两个一起传;与其他任何维度同传都会报错「[country_code]只能和[calendar_date]同时传入」。
|
|
86
|
+
传入 country_code 时服务端转走跨渠道广告数据接口取数,由此有两点差异:
|
|
87
|
+
一是 dimensionValues 里额外支持 country_code 作为过滤条件,传国家码数组即可按国家筛选;不传 country_code 维度时该过滤条件无效。
|
|
88
|
+
二是 headerMap 的列名来自跨渠道接口,calendar_date 列名为「日期」而不是「投放日期」,country_code 列名为「国家/地区」;展示列名请以 headerMap 实际返回值为准,不要写死。
|
|
89
|
+
|
|
90
|
+
【入参填写规则】
|
|
91
|
+
1. startDate / endDate:字符串,格式 yyyy-MM-dd,两者都必填。
|
|
92
|
+
2. dimensionValues:过滤条件,结构是「字段名 → 取值数组」的键值对(Java 类型 Map<String, List<Object>>)。每个 key 是字段 code,对应的 value 必须是数组,即使只筛一个值也要用数组包裹;同一个 key 内的多个值之间是「或」关系,命中任意一个即返回。本接口默认只有 account_id 这一个 key 生效;当 dimensions 里传了 country_code 时,额外支持 country_code 作为过滤条件。传入其余 key 不会报错,但也不会产生任何过滤效果。
|
|
93
|
+
3. dimensions:分组维度数组,必填。传多个维度时按多个字段组合分组,效果等同 SQL 的 GROUP BY 多列,维度越多返回行数越多、粒度越细。
|
|
94
|
+
4. 排序:单字段排序用 order(字段名)+ orderType(desc / asc);多字段排序用 orders,结构是「字段名 → 排序方向」的有序键值对,按书写顺序依次排序,例如 {"calendar_date":"desc","account_id":"asc"}。两者可同时使用,order 指定的字段会追加到 orders 之后。
|
|
95
|
+
5. 分页:page 从 1 开始(默认 1),size 为每页条数(默认 10)。返回的 result.total 是总条数,据此判断是否还有下一页。
|
|
96
|
+
|
|
97
|
+
【请求示例】
|
|
98
|
+
{
|
|
99
|
+
"startDate": "2026-08-01",
|
|
100
|
+
"endDate": "2026-08-31",
|
|
101
|
+
"dimensionValues": {
|
|
102
|
+
"account_id": [
|
|
103
|
+
"<广告账户ID,格式同 account_id 维度返回值>"
|
|
104
|
+
]
|
|
105
|
+
},
|
|
106
|
+
"dimensions": [
|
|
107
|
+
"calendar_date",
|
|
108
|
+
"optimization_goal"
|
|
109
|
+
],
|
|
110
|
+
"order": "calendar_date",
|
|
111
|
+
"orderType": "desc",
|
|
112
|
+
"page": 1,
|
|
113
|
+
"size": 20
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
【返回格式】
|
|
117
|
+
result.data 为数据行数组,每行的每个字段有两个 key:
|
|
118
|
+
一是原始值,key 即请求的 code,做计算或比较时用这个;
|
|
119
|
+
二是展示值,key 加 display_ 前缀,直接呈现给用户时用这个,空值为 "-"。
|
|
120
|
+
result.headerMap 是字段 code 到中文列名的映射,用于给用户展示列名。
|
|
121
|
+
result.total 为总条数,result.page 和 result.size 为当前分页。
|
|
122
|
+
|
|
123
|
+
**输入参数(--data)**
|
|
124
|
+
|
|
125
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
126
|
+
| --- | --- | --- | --- | --- |
|
|
127
|
+
| `startDate` | string | body | 是 | 开始日期,格式 yyyy-MM-dd,例如 2026-08-01 |
|
|
128
|
+
| `endDate` | string | body | 是 | 结束日期,格式 yyyy-MM-dd,例如 2026-08-31 |
|
|
129
|
+
| `dimensionValues` | object | body | 是 | 过滤条件。结构为「字段名 → 取值数组」的键值对(Java 类型 Map<String, List<Object>>),value 必须是数组,即使只筛一个值也要用数组包裹。本接口默认只有 account_id 一个 key 生效;当 dimensions 里传了 country_code 时,额外支持 country_code 作为过滤条件(国家码数组)。其余 key 传入不报错但无过滤效果。示例:{"account_id": ["act_123", "act_456"]} |
|
|
130
|
+
| `dimensions` | array | body | 是 | 分组维度,必传且不能为空数组,否则返回结果为空。各维度含义:calendar_date(投放日期)、account_id(广告账户ID)、account_name(广告账户名称)、campaign_id(广告系列ID)、campaign_name(广告系列名称)、adgroup_id(广告组ID)、adgroup_name(广告组名称)、ad_id(广告ID)、ad_name(广告名称)、optimization_goal(成效目标)、ad_format(创意类型)、bid_strategy(出价方式)、audience_type(受众类型)、targeting_age(年龄)、targeting_genders(性别)、cpc_bid_amount(CPC出价)、cpm_bid_amount(CPM出价)、cpv_bid_amount(CPV出价)、advertising_channel_type(广告系列类型)、keywords(关键字)、country_code(国家,只能单独传或与 calendar_date 两个一起传) |
|
|
131
|
+
| `order` | string | body | 否 | 排序字段,填单个 code,取值范围为 dimensions 的可选值。不必包含在已传的字段中,服务端会自动补入参与排序,但该字段不会作为列返回 |
|
|
132
|
+
| `orderType` | string | body | 否 | 排序方向,默认 asc |
|
|
133
|
+
| `orders` | object | body | 否 | 多字段排序,结构为「字段名 → 排序方向」的有序键值对(Java 类型 LinkedHashMap<String, String>),按 key 的书写顺序依次排序,方向取值 desc 或 asc。示例:{"calendar_date":"desc","account_id":"asc"}。只需单字段排序时用 order + orderType 即可,不必传本字段。 |
|
|
134
|
+
| `page` | integer | body | 否 | 页码,从1开始,默认1 |
|
|
135
|
+
| `size` | integer | body | 否 | 每页条数,默认10,建议显式传且不超过1000 |
|
|
136
|
+
|
|
137
|
+
## 3. TikTok广告策略维度数据
|
|
138
|
+
|
|
139
|
+
`POST /sino-icenter/mcp/strategy/dimension/tiktok/ad/list`
|
|
140
|
+
|
|
141
|
+
主体上下文:`tenant=false`。
|
|
142
|
+
|
|
143
|
+
角色范围:`sso/system`。
|
|
144
|
+
|
|
145
|
+
风险:`read`。
|
|
146
|
+
|
|
147
|
+
查询 TikTok 渠道的广告策略配置数据。按指定广告账户和日期范围,返回广告的策略设置明细(广告目标、成效目标、创意类型、出价方式、调整出价、转化出价、深度转化出价、兴趣词包、年龄、性别等),用于分析某批账户在某段时间内各广告的策略配置分布。转化出价和深度转化出价是 TikTok 渠道独有的维度。本接口只返回策略维度,不含消耗、点击等成效指标,需要成效数据请改用「TikTok广告策略成效数据」接口。
|
|
148
|
+
|
|
149
|
+
【国家维度特别说明】
|
|
150
|
+
country_code(国家)只能单独传,或与 calendar_date(投放日期)两个一起传;与其他任何维度同传都会报错「[country_code]只能和[calendar_date]同时传入」。
|
|
151
|
+
传入 country_code 时服务端转走跨渠道广告数据接口取数,由此有两点差异:
|
|
152
|
+
一是 dimensionValues 里额外支持 country_code 作为过滤条件,传国家码数组即可按国家筛选;不传 country_code 维度时该过滤条件无效。
|
|
153
|
+
二是 headerMap 的列名来自跨渠道接口,calendar_date 列名为「日期」而不是「投放日期」,country_code 列名为「国家/地区」;展示列名请以 headerMap 实际返回值为准,不要写死。
|
|
154
|
+
|
|
155
|
+
【入参填写规则】
|
|
156
|
+
1. startDate / endDate:字符串,格式 yyyy-MM-dd,两者都必填。
|
|
157
|
+
2. dimensionValues:过滤条件,结构是「字段名 → 取值数组」的键值对(Java 类型 Map<String, List<Object>>)。每个 key 是字段 code,对应的 value 必须是数组,即使只筛一个值也要用数组包裹;同一个 key 内的多个值之间是「或」关系,命中任意一个即返回。本接口默认只有 account_id 这一个 key 生效;当 dimensions 里传了 country_code 时,额外支持 country_code 作为过滤条件。传入其余 key 不会报错,但也不会产生任何过滤效果。
|
|
158
|
+
3. dimensions:分组维度数组,必填。传多个维度时按多个字段组合分组,效果等同 SQL 的 GROUP BY 多列,维度越多返回行数越多、粒度越细。
|
|
159
|
+
4. 排序:单字段排序用 order(字段名)+ orderType(desc / asc);多字段排序用 orders,结构是「字段名 → 排序方向」的有序键值对,按书写顺序依次排序,例如 {"calendar_date":"desc","account_id":"asc"}。两者可同时使用,order 指定的字段会追加到 orders 之后。
|
|
160
|
+
5. 分页:page 从 1 开始(默认 1),size 为每页条数(默认 10)。返回的 result.total 是总条数,据此判断是否还有下一页。
|
|
161
|
+
|
|
162
|
+
【请求示例】
|
|
163
|
+
{
|
|
164
|
+
"startDate": "2026-08-01",
|
|
165
|
+
"endDate": "2026-08-31",
|
|
166
|
+
"dimensionValues": {
|
|
167
|
+
"account_id": [
|
|
168
|
+
"<广告账户ID,格式同 account_id 维度返回值>"
|
|
169
|
+
]
|
|
170
|
+
},
|
|
171
|
+
"dimensions": [
|
|
172
|
+
"calendar_date",
|
|
173
|
+
"optimization_goal"
|
|
174
|
+
],
|
|
175
|
+
"order": "calendar_date",
|
|
176
|
+
"orderType": "desc",
|
|
177
|
+
"page": 1,
|
|
178
|
+
"size": 20
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
【返回格式】
|
|
182
|
+
result.data 为数据行数组,每行的每个字段有两个 key:
|
|
183
|
+
一是原始值,key 即请求的 code,做计算或比较时用这个;
|
|
184
|
+
二是展示值,key 加 display_ 前缀,直接呈现给用户时用这个,空值为 "-"。
|
|
185
|
+
result.headerMap 是字段 code 到中文列名的映射,用于给用户展示列名。
|
|
186
|
+
result.total 为总条数,result.page 和 result.size 为当前分页。
|
|
187
|
+
|
|
188
|
+
**输入参数(--data)**
|
|
189
|
+
|
|
190
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
191
|
+
| --- | --- | --- | --- | --- |
|
|
192
|
+
| `startDate` | string | body | 是 | 统计开始日期,字符串,格式 yyyy-MM-dd,例如 "2026-08-01"。必填。 |
|
|
193
|
+
| `endDate` | string | body | 是 | 统计结束日期,字符串,格式 yyyy-MM-dd,例如 "2026-08-31"。必填,需大于等于 startDate。 |
|
|
194
|
+
| `dimensionValues` | object | body | 是 | 过滤条件。结构为「字段名 → 取值数组」的键值对(Java 类型 Map<String, List<Object>>),value 必须是数组,即使只筛一个值也要用数组包裹。本接口默认只有 account_id 一个 key 生效;当 dimensions 里传了 country_code 时,额外支持 country_code 作为过滤条件(国家码数组)。其余 key 传入不报错但无过滤效果。示例:{"account_id": ["act_123", "act_456"]} |
|
|
195
|
+
| `dimensions` | array | body | 是 | 分组维度,字符串数组,必传且不能为空数组(传空数组返回结果为空)。传多个维度时按多字段组合分组,等同 SQL 的 GROUP BY 多列,维度越多粒度越细、返回行数越多。各维度含义:calendar_date(投放日期)、account_id(广告账户ID)、account_name(广告账户名称)、campaign_id(广告系列ID)、campaign_name(广告系列名称)、adgroup_id(广告组ID)、adgroup_name(广告组名称)、ad_id(广告ID)、ad_name(广告名称)、bid_amount(调整出价)、objective(广告目标)、optimization_goal(成效目标)、ad_format(创意类型)、bid_strategy(出价方式)、audience_type(受众类型)、targeting_interests(兴趣词包)、targeting_age(年龄)、targeting_genders(性别)、conversion_bid(转化出价)、deep_cpabid(深度转化出价)、country_code(国家,只能单独传或与 calendar_date 两个一起传) |
|
|
196
|
+
| `order` | string | body | 否 | 单字段排序的字段名,填单个 code,取值范围为 dimensions 的可选值。不必包含在已传的字段中,服务端会自动补入参与排序,但该字段不会作为列返回。与 orders 可同时使用,order 指定的字段会追加到 orders 之后。 |
|
|
197
|
+
| `orderType` | string | body | 否 | 排序方向,配合 order 使用。desc 降序,asc 升序,默认 asc。 |
|
|
198
|
+
| `orders` | object | body | 否 | 多字段排序,结构为「字段名 → 排序方向」的有序键值对(Java 类型 LinkedHashMap<String, String>),按 key 的书写顺序依次排序,方向取值 desc 或 asc。示例:{"calendar_date":"desc","account_id":"asc"}。只需单字段排序时用 order + orderType 即可,不必传本字段。 |
|
|
199
|
+
| `page` | integer | body | 否 | 页码,从 1 开始,默认 1。 |
|
|
200
|
+
| `size` | integer | body | 否 | 每页条数,默认 10,建议显式指定。返回的 result.total 为总条数,据此判断是否还有下一页。 |
|
|
201
|
+
|
|
202
|
+
## 4. Facebook广告策略成效数据
|
|
203
|
+
|
|
204
|
+
`POST /sino-icenter/mcp/strategy/metrics/facebook/ad/list`
|
|
205
|
+
|
|
206
|
+
主体上下文:`tenant=false`。
|
|
207
|
+
|
|
208
|
+
角色范围:`sso/system`。
|
|
209
|
+
|
|
210
|
+
风险:`read`。
|
|
211
|
+
|
|
212
|
+
查询 Facebook(Meta)渠道广告的策略维度加成效指标数据。在广告策略配置(广告目标、成效目标、创意类型、出价方式、受众定向等)的分组下,返回消耗、曝光、点击、购买、安装等成效指标,用于分析哪种策略配置带来更好的投放效果。
|
|
213
|
+
|
|
214
|
+
【国家维度特别说明】
|
|
215
|
+
country_code(国家)只能单独传,或与 calendar_date(投放日期)两个一起传;与其他任何维度同传都会报错「[country_code]只能和[calendar_date]同时传入」。
|
|
216
|
+
传入 country_code 时服务端转走跨渠道广告数据接口取数,indicators 里的 12 个指标在该接口同样支持、照常返回聚合值,但有两点差异:
|
|
217
|
+
一是 dimensionValues 里额外支持 country_code 作为过滤条件,传国家码数组即可按国家筛选;不传 country_code 维度时该过滤条件无效。
|
|
218
|
+
二是 headerMap 的列名来自跨渠道接口,calendar_date 列名为「日期」而不是「投放日期」,country_code 列名为「国家/地区」;展示列名请以 headerMap 实际返回值为准,不要写死。
|
|
219
|
+
|
|
220
|
+
【入参填写规则】
|
|
221
|
+
1. startDate / endDate:字符串,格式 yyyy-MM-dd,两者都必填。
|
|
222
|
+
2. dimensionValues:过滤条件,结构是「字段名 → 取值数组」的键值对(Java 类型 Map<String, List<Object>>)。每个 key 是字段 code,对应的 value 必须是数组,即使只筛一个值也要用数组包裹;同一个 key 内的多个值之间是「或」关系,命中任意一个即返回。本接口默认只有 account_id 这一个 key 生效;当 dimensions 里传了 country_code 时,额外支持 country_code 作为过滤条件。传入其余 key 不会报错,但也不会产生任何过滤效果。
|
|
223
|
+
3. dimensions:分组维度数组,必填。传多个维度时按多个字段组合分组,效果等同 SQL 的 GROUP BY 多列,维度越多返回行数越多、粒度越细。
|
|
224
|
+
4. indicators:成效指标数组,必填。指标会在 dimensions 指定的分组粒度上做求和聚合。
|
|
225
|
+
5. 排序:单字段排序用 order(字段名)+ orderType(desc / asc);多字段排序用 orders,结构是「字段名 → 排序方向」的有序键值对,按书写顺序依次排序,例如 {"spend_usd":"desc","clicks":"asc"}。两者可同时使用,order 指定的字段会追加到 orders 之后。
|
|
226
|
+
6. 分页:page 从 1 开始(默认 1),size 为每页条数(默认 10)。返回的 result.total 是总条数,据此判断是否还有下一页。
|
|
227
|
+
|
|
228
|
+
【请求示例】
|
|
229
|
+
{
|
|
230
|
+
"startDate": "2026-08-01",
|
|
231
|
+
"endDate": "2026-08-31",
|
|
232
|
+
"dimensionValues": {
|
|
233
|
+
"account_id": [
|
|
234
|
+
"act_1036928420879324"
|
|
235
|
+
]
|
|
236
|
+
},
|
|
237
|
+
"dimensions": [
|
|
238
|
+
"calendar_date",
|
|
239
|
+
"optimization_goal"
|
|
240
|
+
],
|
|
241
|
+
"indicators": [
|
|
242
|
+
"spend_usd",
|
|
243
|
+
"impressions",
|
|
244
|
+
"clicks"
|
|
245
|
+
],
|
|
246
|
+
"order": "spend_usd",
|
|
247
|
+
"orderType": "desc",
|
|
248
|
+
"page": 1,
|
|
249
|
+
"size": 20
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
【返回格式】
|
|
253
|
+
result.data 为数据行数组,每行的每个字段有两个 key:
|
|
254
|
+
一是原始值,key 即请求的 code,如 spend_usd 的值为 618.42,做计算或比较时用这个;
|
|
255
|
+
二是展示值,key 加 display_ 前缀,如 display_spend_usd 的值带货币符号,直接呈现给用户时用这个,空值为 "-"。
|
|
256
|
+
result.headerMap 是字段 code 到列名的映射,维度列名为中文,指标列名为英文(如 spend_usd 对应 Spend)。
|
|
257
|
+
result.total 为总条数,result.page 和 result.size 为当前分页。
|
|
258
|
+
result.conflictField 是传入但当前渠道不支持的指标,会被忽略且不报错,为空数组表示全部指标都生效。
|
|
259
|
+
|
|
260
|
+
**输入参数(--data)**
|
|
261
|
+
|
|
262
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
263
|
+
| --- | --- | --- | --- | --- |
|
|
264
|
+
| `startDate` | string | body | 是 | 统计开始日期,字符串,格式 yyyy-MM-dd,例如 "2026-08-01"。必填。 |
|
|
265
|
+
| `endDate` | string | body | 是 | 统计结束日期,字符串,格式 yyyy-MM-dd,例如 "2026-08-31"。必填,需大于等于 startDate。成效数据最多支持查询近21天,超出范围可能返回空数据。 |
|
|
266
|
+
| `dimensionValues` | object | body | 是 | 过滤条件。结构为「字段名 → 取值数组」的键值对(Java 类型 Map<String, List<Object>>),value 必须是数组,即使只筛一个值也要用数组包裹。本接口默认只有 account_id 一个 key 生效;当 dimensions 里传了 country_code 时,额外支持 country_code 作为过滤条件(国家码数组)。其余 key 传入不报错但无过滤效果。示例:{"account_id": ["act_123", "act_456"]} |
|
|
267
|
+
| `dimensions` | array | body | 是 | 分组维度,字符串数组,必传且不能为空数组(传空数组返回结果为空)。传多个维度时按多字段组合分组,等同 SQL 的 GROUP BY 多列,维度越多粒度越细、返回行数越多。各维度含义:calendar_date(投放日期)、account_id(广告账户ID)、account_name(广告账户名称)、campaign_id(广告系列ID)、campaign_name(广告系列名称)、adgroup_id(广告组ID)、adgroup_name(广告组名称)、ad_id(广告ID)、ad_name(广告名称)、objective(广告目标)、optimization_goal(成效目标)、ad_format(创意类型)、bid_strategy(出价方式)、audience_type(受众类型)、targeting_interests(兴趣词包)、targeting_flexible_interests(弹性兴趣词包)、targeting_exclusion_interests(排除兴趣词包)、targeting_age(年龄)、targeting_genders(性别)、country_code(国家,只能单独传或与 calendar_date 两个一起传) |
|
|
268
|
+
| `indicators` | array | body | 是 | 成效指标,字符串数组,必传且不能为空数组。指标会在 dimensions 指定的分组粒度上做求和聚合。各指标含义:spend_usd(消耗金额,美元)、impressions(曝光量)、clicks(点击量)、video_views(视频观看次数)、add_to_cart(添加购物车次数)、checkouts(发起结账次数)、purchase(购买次数)、purchase_value(购买金额,美元)、installs(应用安装量)、complete_registration(完成注册量)、leads(留下潜客信息次数)、engagement(互动次数) |
|
|
269
|
+
| `order` | string | body | 否 | 单字段排序的字段名,填单个 code,取值范围为 dimensions 或 indicators 的可选值。不必包含在已传的字段中,服务端会自动补入参与排序,但该字段不会作为列返回。与 orders 可同时使用,order 指定的字段会追加到 orders 之后。 |
|
|
270
|
+
| `orderType` | string | body | 否 | 排序方向,配合 order 使用。desc 降序,asc 升序,默认 asc。 |
|
|
271
|
+
| `orders` | object | body | 否 | 多字段排序,结构为「字段名 → 排序方向」的有序键值对(Java 类型 LinkedHashMap<String, String>),按 key 的书写顺序依次排序,方向取值 desc 或 asc。示例:{"spend_usd":"desc","clicks":"asc"}。只需单字段排序时用 order + orderType 即可,不必传本字段。 |
|
|
272
|
+
| `page` | integer | body | 否 | 页码,从 1 开始,默认 1。 |
|
|
273
|
+
| `size` | integer | body | 否 | 每页条数,默认 10,建议显式指定。返回的 result.total 为总条数,据此判断是否还有下一页。 |
|
|
274
|
+
|
|
275
|
+
## 5. Google广告策略成效数据
|
|
276
|
+
|
|
277
|
+
`POST /sino-icenter/mcp/strategy/metrics/google/ad/list`
|
|
278
|
+
|
|
279
|
+
主体上下文:`tenant=false`。
|
|
280
|
+
|
|
281
|
+
角色范围:`sso/system`。
|
|
282
|
+
|
|
283
|
+
风险:`read`。
|
|
284
|
+
|
|
285
|
+
查询 Google 渠道广告的策略维度加成效指标数据。在广告策略配置(成效目标、创意类型、出价方式、广告系列类型、关键字等)的分组下,返回消耗、曝光、点击、购买、安装等成效指标,用于分析哪种策略配置带来更好的投放效果。Google 渠道不支持广告目标和兴趣词包维度。
|
|
286
|
+
|
|
287
|
+
【国家维度特别说明】
|
|
288
|
+
country_code(国家)只能单独传,或与 calendar_date(投放日期)两个一起传;与其他任何维度同传都会报错「[country_code]只能和[calendar_date]同时传入」。
|
|
289
|
+
传入 country_code 时服务端转走跨渠道广告数据接口取数,indicators 里的 12 个指标在该接口同样支持、照常返回聚合值,但有两点差异:
|
|
290
|
+
一是 dimensionValues 里额外支持 country_code 作为过滤条件,传国家码数组即可按国家筛选;不传 country_code 维度时该过滤条件无效。
|
|
291
|
+
二是 headerMap 的列名来自跨渠道接口,calendar_date 列名为「日期」而不是「投放日期」,country_code 列名为「国家/地区」;展示列名请以 headerMap 实际返回值为准,不要写死。
|
|
292
|
+
|
|
293
|
+
【入参填写规则】
|
|
294
|
+
1. startDate / endDate:字符串,格式 yyyy-MM-dd,两者都必填。
|
|
295
|
+
2. dimensionValues:过滤条件,结构是「字段名 → 取值数组」的键值对(Java 类型 Map<String, List<Object>>)。每个 key 是字段 code,对应的 value 必须是数组,即使只筛一个值也要用数组包裹;同一个 key 内的多个值之间是「或」关系,命中任意一个即返回。本接口默认只有 account_id 这一个 key 生效;当 dimensions 里传了 country_code 时,额外支持 country_code 作为过滤条件。传入其余 key 不会报错,但也不会产生任何过滤效果。
|
|
296
|
+
3. dimensions:分组维度数组,必填。传多个维度时按多个字段组合分组,效果等同 SQL 的 GROUP BY 多列,维度越多返回行数越多、粒度越细。
|
|
297
|
+
4. indicators:成效指标数组,必填。指标会在 dimensions 指定的分组粒度上做求和聚合。
|
|
298
|
+
5. 排序:单字段排序用 order(字段名)+ orderType(desc / asc);多字段排序用 orders,结构是「字段名 → 排序方向」的有序键值对,按书写顺序依次排序,例如 {"spend_usd":"desc","clicks":"asc"}。两者可同时使用,order 指定的字段会追加到 orders 之后。
|
|
299
|
+
6. 分页:page 从 1 开始(默认 1),size 为每页条数(默认 10)。返回的 result.total 是总条数,据此判断是否还有下一页。
|
|
300
|
+
|
|
301
|
+
【请求示例】
|
|
302
|
+
{
|
|
303
|
+
"startDate": "2026-08-01",
|
|
304
|
+
"endDate": "2026-08-31",
|
|
305
|
+
"dimensionValues": {
|
|
306
|
+
"account_id": [
|
|
307
|
+
"<广告账户ID,格式同 account_id 维度返回值>"
|
|
308
|
+
]
|
|
309
|
+
},
|
|
310
|
+
"dimensions": [
|
|
311
|
+
"calendar_date",
|
|
312
|
+
"optimization_goal"
|
|
313
|
+
],
|
|
314
|
+
"indicators": [
|
|
315
|
+
"spend_usd",
|
|
316
|
+
"impressions",
|
|
317
|
+
"clicks"
|
|
318
|
+
],
|
|
319
|
+
"order": "spend_usd",
|
|
320
|
+
"orderType": "desc",
|
|
321
|
+
"page": 1,
|
|
322
|
+
"size": 20
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
【返回格式】
|
|
326
|
+
result.data 为数据行数组,每行的每个字段有两个 key:
|
|
327
|
+
一是原始值,key 即请求的 code,如 spend_usd 的值为 618.42,做计算或比较时用这个;
|
|
328
|
+
二是展示值,key 加 display_ 前缀,如 display_spend_usd 的值带货币符号,直接呈现给用户时用这个,空值为 "-"。
|
|
329
|
+
result.headerMap 是字段 code 到列名的映射,维度列名为中文,指标列名为英文(如 spend_usd 对应 Spend)。
|
|
330
|
+
result.total 为总条数,result.page 和 result.size 为当前分页。
|
|
331
|
+
result.conflictField 是传入但当前渠道不支持的指标,会被忽略且不报错,为空数组表示全部指标都生效。
|
|
332
|
+
|
|
333
|
+
**输入参数(--data)**
|
|
334
|
+
|
|
335
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
336
|
+
| --- | --- | --- | --- | --- |
|
|
337
|
+
| `startDate` | string | body | 是 | 开始日期,格式 yyyy-MM-dd,例如 2026-08-01 |
|
|
338
|
+
| `endDate` | string | body | 是 | 结束日期,格式 yyyy-MM-dd,例如 2026-08-31。最多支持查询近21天 |
|
|
339
|
+
| `dimensionValues` | object | body | 是 | 过滤条件。结构为「字段名 → 取值数组」的键值对(Java 类型 Map<String, List<Object>>),value 必须是数组,即使只筛一个值也要用数组包裹。本接口默认只有 account_id 一个 key 生效;当 dimensions 里传了 country_code 时,额外支持 country_code 作为过滤条件(国家码数组)。其余 key 传入不报错但无过滤效果。示例:{"account_id": ["act_123", "act_456"]} |
|
|
340
|
+
| `dimensions` | array | body | 是 | 分组维度,必传且不能为空数组,否则返回结果为空。各维度含义:calendar_date(投放日期)、account_id(广告账户ID)、account_name(广告账户名称)、campaign_id(广告系列ID)、campaign_name(广告系列名称)、adgroup_id(广告组ID)、adgroup_name(广告组名称)、ad_id(广告ID)、ad_name(广告名称)、optimization_goal(成效目标)、ad_format(创意类型)、bid_strategy(出价方式)、audience_type(受众类型)、targeting_age(年龄)、targeting_genders(性别)、cpc_bid_amount(CPC出价)、cpm_bid_amount(CPM出价)、cpv_bid_amount(CPV出价)、advertising_channel_type(广告系列类型)、keywords(关键字)、country_code(国家,只能单独传或与 calendar_date 两个一起传) |
|
|
341
|
+
| `indicators` | array | body | 是 | 成效指标,必传且不能为空数组。各指标含义:spend_usd(消耗金额,美元)、impressions(曝光量)、clicks(点击量)、video_views(视频观看次数)、add_to_cart(添加购物车次数)、checkouts(发起结账次数)、purchase(购买次数)、purchase_value(购买金额,美元)、installs(应用安装量)、complete_registration(完成注册量)、leads(留下潜客信息次数)、engagement(互动次数) |
|
|
342
|
+
| `order` | string | body | 否 | 排序字段,填单个 code,取值范围为 dimensions 或 indicators 的可选值。不必包含在已传的字段中,服务端会自动补入参与排序,但该字段不会作为列返回 |
|
|
343
|
+
| `orderType` | string | body | 否 | 排序方向,默认 asc |
|
|
344
|
+
| `orders` | object | body | 否 | 多字段排序,结构为「字段名 → 排序方向」的有序键值对(Java 类型 LinkedHashMap<String, String>),按 key 的书写顺序依次排序,方向取值 desc 或 asc。示例:{"spend_usd":"desc","clicks":"asc"}。只需单字段排序时用 order + orderType 即可,不必传本字段。 |
|
|
345
|
+
| `page` | integer | body | 否 | 页码,从1开始,默认1 |
|
|
346
|
+
| `size` | integer | body | 否 | 每页条数,默认10,建议显式传且不超过1000 |
|
|
347
|
+
|
|
348
|
+
## 6. TikTok广告策略成效数据
|
|
349
|
+
|
|
350
|
+
`POST /sino-icenter/mcp/strategy/metrics/tiktok/ad/list`
|
|
351
|
+
|
|
352
|
+
主体上下文:`tenant=false`。
|
|
353
|
+
|
|
354
|
+
角色范围:`sso/system`。
|
|
355
|
+
|
|
356
|
+
风险:`read`。
|
|
357
|
+
|
|
358
|
+
查询 TikTok 渠道广告的策略维度加成效指标数据。在广告策略配置(广告目标、成效目标、创意类型、出价方式、转化出价、深度转化出价、兴趣词包等)的分组下,返回消耗、曝光、点击、购买、安装等成效指标,用于分析哪种策略配置带来更好的投放效果。
|
|
359
|
+
|
|
360
|
+
【国家维度特别说明】
|
|
361
|
+
country_code(国家)只能单独传,或与 calendar_date(投放日期)两个一起传;与其他任何维度同传都会报错「[country_code]只能和[calendar_date]同时传入」。
|
|
362
|
+
传入 country_code 时服务端转走跨渠道广告数据接口取数,indicators 里的 12 个指标在该接口同样支持、照常返回聚合值,但有两点差异:
|
|
363
|
+
一是 dimensionValues 里额外支持 country_code 作为过滤条件,传国家码数组即可按国家筛选;不传 country_code 维度时该过滤条件无效。
|
|
364
|
+
二是 headerMap 的列名来自跨渠道接口,calendar_date 列名为「日期」而不是「投放日期」,country_code 列名为「国家/地区」;展示列名请以 headerMap 实际返回值为准,不要写死。
|
|
365
|
+
|
|
366
|
+
【入参填写规则】
|
|
367
|
+
1. startDate / endDate:字符串,格式 yyyy-MM-dd,两者都必填。
|
|
368
|
+
2. dimensionValues:过滤条件,结构是「字段名 → 取值数组」的键值对(Java 类型 Map<String, List<Object>>)。每个 key 是字段 code,对应的 value 必须是数组,即使只筛一个值也要用数组包裹;同一个 key 内的多个值之间是「或」关系,命中任意一个即返回。本接口默认只有 account_id 这一个 key 生效;当 dimensions 里传了 country_code 时,额外支持 country_code 作为过滤条件。传入其余 key 不会报错,但也不会产生任何过滤效果。
|
|
369
|
+
3. dimensions:分组维度数组,必填。传多个维度时按多个字段组合分组,效果等同 SQL 的 GROUP BY 多列,维度越多返回行数越多、粒度越细。
|
|
370
|
+
4. indicators:成效指标数组,必填。指标会在 dimensions 指定的分组粒度上做求和聚合。
|
|
371
|
+
5. 排序:单字段排序用 order(字段名)+ orderType(desc / asc);多字段排序用 orders,结构是「字段名 → 排序方向」的有序键值对,按书写顺序依次排序,例如 {"spend_usd":"desc","clicks":"asc"}。两者可同时使用,order 指定的字段会追加到 orders 之后。
|
|
372
|
+
6. 分页:page 从 1 开始(默认 1),size 为每页条数(默认 10)。返回的 result.total 是总条数,据此判断是否还有下一页。
|
|
373
|
+
|
|
374
|
+
【请求示例】
|
|
375
|
+
{
|
|
376
|
+
"startDate": "2026-08-01",
|
|
377
|
+
"endDate": "2026-08-31",
|
|
378
|
+
"dimensionValues": {
|
|
379
|
+
"account_id": [
|
|
380
|
+
"<广告账户ID,格式同 account_id 维度返回值>"
|
|
381
|
+
]
|
|
382
|
+
},
|
|
383
|
+
"dimensions": [
|
|
384
|
+
"calendar_date",
|
|
385
|
+
"optimization_goal"
|
|
386
|
+
],
|
|
387
|
+
"indicators": [
|
|
388
|
+
"spend_usd",
|
|
389
|
+
"impressions",
|
|
390
|
+
"clicks"
|
|
391
|
+
],
|
|
392
|
+
"order": "spend_usd",
|
|
393
|
+
"orderType": "desc",
|
|
394
|
+
"page": 1,
|
|
395
|
+
"size": 20
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
【返回格式】
|
|
399
|
+
result.data 为数据行数组,每行的每个字段有两个 key:
|
|
400
|
+
一是原始值,key 即请求的 code,如 spend_usd 的值为 618.42,做计算或比较时用这个;
|
|
401
|
+
二是展示值,key 加 display_ 前缀,如 display_spend_usd 的值带货币符号,直接呈现给用户时用这个,空值为 "-"。
|
|
402
|
+
result.headerMap 是字段 code 到列名的映射,维度列名为中文,指标列名为英文(如 spend_usd 对应 Spend)。
|
|
403
|
+
result.total 为总条数,result.page 和 result.size 为当前分页。
|
|
404
|
+
result.conflictField 是传入但当前渠道不支持的指标,会被忽略且不报错,为空数组表示全部指标都生效。
|
|
405
|
+
|
|
406
|
+
**输入参数(--data)**
|
|
407
|
+
|
|
408
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
409
|
+
| --- | --- | --- | --- | --- |
|
|
410
|
+
| `startDate` | string | body | 是 | 开始日期,格式 yyyy-MM-dd,例如 2026-08-01 |
|
|
411
|
+
| `endDate` | string | body | 是 | 结束日期,格式 yyyy-MM-dd,例如 2026-08-31。最多支持查询近21天 |
|
|
412
|
+
| `dimensionValues` | object | body | 是 | 过滤条件。结构为「字段名 → 取值数组」的键值对(Java 类型 Map<String, List<Object>>),value 必须是数组,即使只筛一个值也要用数组包裹。本接口默认只有 account_id 一个 key 生效;当 dimensions 里传了 country_code 时,额外支持 country_code 作为过滤条件(国家码数组)。其余 key 传入不报错但无过滤效果。示例:{"account_id": ["act_123", "act_456"]} |
|
|
413
|
+
| `dimensions` | array | body | 是 | 分组维度,必传且不能为空数组,否则返回结果为空。各维度含义:calendar_date(投放日期)、account_id(广告账户ID)、account_name(广告账户名称)、campaign_id(广告系列ID)、campaign_name(广告系列名称)、adgroup_id(广告组ID)、adgroup_name(广告组名称)、ad_id(广告ID)、ad_name(广告名称)、optimization_goal(成效目标)、ad_format(创意类型)、bid_strategy(出价方式)、audience_type(受众类型)、targeting_age(年龄)、targeting_genders(性别)、objective(广告目标)、targeting_interests(兴趣词包)、conversion_bid(转化出价)、deep_cpabid(深度转化出价)、country_code(国家,只能单独传或与 calendar_date 两个一起传) |
|
|
414
|
+
| `indicators` | array | body | 是 | 成效指标,必传且不能为空数组。各指标含义:spend_usd(消耗金额,美元)、impressions(曝光量)、clicks(点击量)、video_views(视频观看次数)、add_to_cart(添加购物车次数)、checkouts(发起结账次数)、purchase(购买次数)、purchase_value(购买金额,美元)、installs(应用安装量)、complete_registration(完成注册量)、leads(留下潜客信息次数)、engagement(互动次数) |
|
|
415
|
+
| `order` | string | body | 否 | 排序字段,填单个 code,取值范围为 dimensions 或 indicators 的可选值。不必包含在已传的字段中,服务端会自动补入参与排序,但该字段不会作为列返回 |
|
|
416
|
+
| `orderType` | string | body | 否 | 排序方向,默认 asc |
|
|
417
|
+
| `orders` | object | body | 否 | 多字段排序,结构为「字段名 → 排序方向」的有序键值对(Java 类型 LinkedHashMap<String, String>),按 key 的书写顺序依次排序,方向取值 desc 或 asc。示例:{"spend_usd":"desc","clicks":"asc"}。只需单字段排序时用 order + orderType 即可,不必传本字段。 |
|
|
418
|
+
| `page` | integer | body | 否 | 页码,从1开始,默认1 |
|
|
419
|
+
| `size` | integer | body | 否 | 每页条数,默认10,建议显式传且不超过1000 |
|