siluzan-tso-cli 1.1.44-beta.3 → 1.1.44
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 +1 -2
- package/dist/index.js +209 -163
- package/dist/skill/AGENTS.md +16 -16
- package/dist/skill/_meta.json +2 -2
- package/dist/skill/assets/campaign-create-template.md +46 -46
- package/dist/skill/assets/market-analysis-rules.md +4 -4
- package/dist/skill/assets/pmax-create-template.md +17 -17
- package/dist/skill/assets/pmax-lead-form-template.md +12 -12
- package/dist/skill/assets/scripts/assemble-campaign-from-plan.mjs +3 -1
- package/dist/skill/references/README.md +31 -31
- package/dist/skill/references/accounts/accounts-balance-stats.md +38 -36
- package/dist/skill/references/accounts/accounts-list.md +21 -21
- package/dist/skill/references/accounts/accounts-permissions.md +29 -29
- package/dist/skill/references/accounts/accounts.md +9 -9
- package/dist/skill/references/accounts/finance.md +1 -2
- package/dist/skill/references/accounts/open-account-by-media.md +58 -59
- package/dist/skill/references/accounts/open-account-google-ui.md +19 -19
- package/dist/skill/references/analytics/account-analytics.md +33 -33
- package/dist/skill/references/analytics/google-analysis-batch.md +0 -1
- package/dist/skill/references/analytics/keyword-planner-workflows.md +15 -13
- package/dist/skill/references/analytics/market-analysis-guide.md +4 -1
- package/dist/skill/references/analytics/rag.md +8 -8
- package/dist/skill/references/analytics/reporting.md +5 -5
- package/dist/skill/references/analytics/website-diagnosis-guide.md +6 -6
- package/dist/skill/references/core/agent-conventions.md +54 -54
- package/dist/skill/references/core/intent-routing.md +107 -108
- package/dist/skill/references/core/setup.md +6 -5
- package/dist/skill/references/core/tips.md +0 -1
- package/dist/skill/references/core/workflows.md +15 -16
- package/dist/skill/references/google-ads/google-ads-campaign-plan.md +55 -55
- package/dist/skill/references/google-ads/google-ads-read.md +30 -12
- package/dist/skill/references/google-ads/google-ads-write.md +35 -18
- package/dist/skill/references/google-ads/google-ads.md +13 -14
- package/dist/skill/references/google-ads/rules/README.md +17 -17
- package/dist/skill/references/google-ads/rules/google-ads-account-audit.md +6 -8
- package/dist/skill/references/google-ads/rules/google-ads-compliance.md +5 -7
- package/dist/skill/references/google-ads/rules/google-ads-keyword-strategy.md +9 -9
- package/dist/skill/references/google-ads/rules/google-ads-launch-plan-template.md +16 -15
- package/dist/skill/references/google-ads/rules/google-ads-plan-source-fidelity.md +27 -27
- package/dist/skill/references/google-ads/rules/google-ads-pmax-launch-plan-template.md +41 -41
- package/dist/skill/references/misc/tso-home.md +2 -2
- package/dist/skill/references/operations/guard.md +24 -24
- package/dist/skill/references/operations/hosted-automation-self-control.md +15 -16
- package/dist/skill/references/operations/hosted-automation-user-catalog.md +18 -18
- package/dist/skill/references/report-templates/README.md +1 -1
- package/dist/skill/references/report-templates/bing-period-report.md +16 -16
- package/dist/skill/references/report-templates/google-ads-diagnosis.md +26 -23
- package/dist/skill/references/report-templates/google-inquiry-analysis.md +1 -1
- package/dist/skill/references/report-templates/google-period-report.md +5 -5
- package/dist/skill/references/report-templates/meta-account-diagnosis-report.md +2 -2
- package/dist/skill/references/report-templates/okki-weekly-google-client.md +0 -1
- package/dist/skill/references/report-templates/tiktok-period-report.md +6 -6
- package/dist/skill/report-templates/GoogleAdsDiagnosisReport.html +42 -13
- package/dist/skill/report-templates/README.md +1 -1
- package/dist/skill/report-templates/bing-period-report.html +10 -7
- package/dist/skill/report-templates/bing-period-report.md +16 -16
- package/dist/skill/report-templates/google-ads-diagnosis.md +26 -23
- package/dist/skill/report-templates/google-inquiry-analysis.md +1 -1
- package/dist/skill/report-templates/google-period-report.md +5 -5
- package/dist/skill/report-templates/meta-account-diagnosis-report.md +2 -2
- package/dist/skill/report-templates/okki-weekly-google-client.md +0 -1
- package/dist/skill/report-templates/tiktok-period-report.md +6 -6
- package/dist/skill/scripts/install.ps1 +3 -3
- package/dist/skill/scripts/install.sh +3 -3
- package/eval/cases/accounts-entityid-vs-mediaccustomerid.scenario.json +2 -14
- package/eval/cases/accounts-mcc-bind-inquiry.scenario.json +1 -3
- package/eval/cases/accounts-single-balance-not-bulk.scenario.json +3 -14
- package/eval/cases/budget-display-not-raw-micros.scenario.json +1 -8
- package/eval/cases/clue-meta-leads-json.scenario.json +2 -14
- package/eval/cases/clue-tiktok-leads-json.scenario.json +2 -11
- package/eval/cases/destructive-account-delink-needs-confirm.scenario.json +3 -9
- package/eval/cases/destructive-forewarning-delete-needs-confirm.scenario.json +3 -9
- package/eval/cases/destructive-invoice-apply-needs-confirm.scenario.json +3 -9
- package/eval/cases/facebook-analysis-google-section-aliases.scenario.json +2 -11
- package/eval/cases/facebook-analysis-not-google-keywords.scenario.json +3 -10
- package/eval/cases/facebook-analysis-period-default.scenario.json +2 -14
- package/eval/cases/finance-invoice-info-list.scenario.json +3 -11
- package/eval/cases/forewarning-list-google.scenario.json +3 -14
- package/eval/cases/google-ads-no-structural-without-confirm.scenario.json +2 -6
- package/eval/cases/google-analysis-keywords-route.scenario.json +2 -14
- package/eval/cases/guard-budget-circuit-all-google.scenario.json +2 -12
- package/eval/cases/guard-zero-conv-empty-spend.scenario.json +2 -12
- package/eval/cases/human-p1-multiturn.scenario.json +1 -5
- package/eval/cases/ir-p1-vs-p8-account-vs-url.scenario.json +5 -17
- package/eval/cases/ir-p3-cpa-monitor-not-p7.scenario.json +2 -19
- package/eval/cases/ir-p3-zero-inquiry-not-p7.scenario.json +3 -16
- package/eval/cases/ir-p4-period-not-diagnosis.scenario.json +3 -16
- package/eval/cases/ir-p8-meets-google-ads-requirements-with-url.scenario.json +3 -28
- package/eval/cases/ir-p8-network-diagnosis-with-url.scenario.json +3 -25
- package/eval/cases/ir-p8-website-monitor-report-with-url.scenario.json +3 -28
- package/eval/cases/ir-p8-website-test-report-no-url.scenario.json +3 -14
- package/eval/cases/ir-p9-industry-not-p8.scenario.json +3 -19
- package/eval/cases/ir-vague-report-clarify.scenario.json +3 -14
- package/eval/cases/ir-w3-vs-p8-from-website.scenario.json +2 -8
- package/eval/cases/ir-w5-keyword-planner-url-core-terms.scenario.json +2 -22
- package/eval/cases/meta-single-balance-not-bulk.scenario.json +3 -17
- package/eval/cases/no-legacy-json-flag.scenario.json +2 -6
- package/eval/cases/open-account-google-noninteractive.scenario.json +1 -3
- package/eval/cases/open-account-tiktok-license-file.scenario.json +1 -3
- package/eval/cases/optimize-list-by-account.scenario.json +3 -11
- package/eval/cases/p1-single-account-profile.scenario.json +1 -11
- package/eval/cases/p2-balance-scan-bulk.scenario.json +2 -9
- package/eval/cases/p3-accounts-digest.scenario.json +1 -5
- package/eval/cases/p3-cpa-scan-max-cpa.scenario.json +2 -14
- package/eval/cases/p4-fb-meta-period-report.scenario.json +2 -12
- package/eval/cases/p4-period-report-window.scenario.json +1 -8
- package/eval/cases/pmax-asset-group-create-with-bg.scenario.json +2 -13
- package/eval/cases/pmax-brand-edit-routing.scenario.json +3 -16
- package/eval/cases/pmax-edit-not-campaign-edit.scenario.json +2 -12
- package/eval/cases/pmax-enable-brand-guidelines.scenario.json +2 -12
- package/eval/cases/pmax-no-assets-update-brand-fields.scenario.json +3 -14
- package/eval/cases/rag-before-keyword-expand.scenario.json +1 -11
- package/eval/cases/rag-list-then-query.scenario.json +2 -14
- package/eval/cases/report-list-google.scenario.json +2 -11
- package/eval/cases/report-push-list-google.scenario.json +2 -11
- package/eval/cases/setup-login-or-env.scenario.json +1 -3
- package/eval/cases/setup-siluzan-data-permission-env.scenario.json +1 -3
- package/eval/cases/tiktok-bc-bind-inquiry.scenario.json +2 -6
- package/eval/cases/time-range-user-delegates-default.scenario.json +1 -8
- package/eval/cases/tips-json-out-filtering.scenario.json +1 -3
- package/eval/cases/tips-large-json-pagination.scenario.json +1 -3
- package/eval/cases/uj-ad-campaign-validate-before-create-stub.scenario.json +2 -11
- package/eval/cases/uj-ad-outdoor-campgear-search-plan.scenario.json +1 -3
- package/eval/cases/uj-ad-website-search-plan-table-format.scenario.json +1 -3
- package/eval/cases/uj-analytics-30d-pdf-campaign-device-geo.scenario.json +6 -18
- package/eval/cases/uj-analytics-compare-google-tiktok-last-month-roi.scenario.json +1 -8
- package/eval/cases/uj-analytics-ecommerce-industry-report.scenario.json +2 -14
- package/eval/cases/uj-analytics-google-weekly-trends-campaigns-keywords.scenario.json +2 -11
- package/eval/cases/uj-analytics-report-push-weekly-email.scenario.json +1 -3
- package/eval/cases/uj-finance-invoice-records-this-month.scenario.json +2 -11
- package/eval/cases/uj-life-newbie-siluzan-google-end-to-end.scenario.json +1 -4
- package/eval/cases/uj-ops-google-accounts-list-normal.scenario.json +2 -17
- package/eval/cases/uj-ops-google-yesterday-spend-conversions.scenario.json +2 -14
- package/eval/cases/uj-ops-pause-worst-adgroup-confirm.scenario.json +2 -6
- package/eval/cases/uj-ops-tiktok-leads-last-week.scenario.json +3 -17
- package/eval/cases/uj-patrol-cpc-spike-adgroups-over-15.scenario.json +1 -5
- package/eval/cases/uj-patrol-forewarning-create-daily-cap-3000.scenario.json +1 -3
- package/eval/cases/uj-patrol-forewarning-trigger-records.scenario.json +3 -17
- package/eval/cases/uj-patrol-google-balances-low.scenario.json +2 -11
- package/eval/cases/uj-roi-optimize-records-then-execute-cautiously.scenario.json +3 -14
- package/eval/cases/uj-roi-search-terms-add-negative-keywords.scenario.json +2 -14
- package/eval/cases/yandex-stats-use-porg-mediaccustomerid.scenario.json +3 -21
- package/package.json +1 -1
|
@@ -14,17 +14,17 @@
|
|
|
14
14
|
siluzan-tso list-accounts [选项]
|
|
15
15
|
```
|
|
16
16
|
|
|
17
|
-
| 选项 | 说明
|
|
18
|
-
| ----------------------- |
|
|
19
|
-
| `-m, --media <type>` | 媒体类型(留空查全部):`Google \| TikTok \| Yandex \| MetaAd \| BingV2 \| Kwai`
|
|
17
|
+
| 选项 | 说明 |
|
|
18
|
+
| ----------------------- | ---------------------------------------------------------------------------------- | ---------------------- |
|
|
19
|
+
| `-m, --media <type>` | 媒体类型(留空查全部):`Google \| TikTok \| Yandex \| MetaAd \| BingV2 \| Kwai` |
|
|
20
20
|
| `-k, --keyword <text>` | 统一模糊搜索:账户名称 **或** ID(含 Google CID 带横杠);透传 Sammamish `keyword` |
|
|
21
|
-
| `-s, --status <status>` | 账户状态:`normal \| invalid \| all`(默认 all)
|
|
22
|
-
| `-p, --page <n>` | 页码(默认 1)
|
|
23
|
-
| `--page-size <n>` | 每页数量(默认 20)
|
|
24
|
-
| `--json-out` | 输出原始 JSON
|
|
25
|
-
| `--unicode` | 表格使用 Unicode 线框;**默认**为 ASCII `+-
|
|
26
|
-
| `--plain` | 已默认 ASCII,无需再传;保留兼容旧脚本
|
|
27
|
-
| `--refresh-dp` | 强制重拉 Datapermission(排查「本页全部 OAuth 失效」类会话异常)
|
|
21
|
+
| `-s, --status <status>` | 账户状态:`normal \| invalid \| all`(默认 all) |
|
|
22
|
+
| `-p, --page <n>` | 页码(默认 1) |
|
|
23
|
+
| `--page-size <n>` | 每页数量(默认 20) |
|
|
24
|
+
| `--json-out` | 输出原始 JSON |
|
|
25
|
+
| `--unicode` | 表格使用 Unicode 线框;**默认**为 ASCII `+- | ` 线框(兼容各类终端) |
|
|
26
|
+
| `--plain` | 已默认 ASCII,无需再传;保留兼容旧脚本 |
|
|
27
|
+
| `--refresh-dp` | 强制重拉 Datapermission(排查「本页全部 OAuth 失效」类会话异常) |
|
|
28
28
|
|
|
29
29
|
**命令定位**:`list-accounts` 主打**精准查询账号信息**(列表、计数、按名称/ID 找户、`entityId` / `mediaCustomerId` / 币种 / 状态等元数据),**不是余额/消耗汇总工具**。JSON **不含**余额/消耗字段,表格也不显示余额列;**禁止**臆造数值——单户余额用 `balance`、全量余额预警用 `balance-scan`(P2)、多户消耗画像用 `accounts-digest`(P3)、单户消耗用 `stats`(均见 `accounts-balance-stats.md`)。
|
|
30
30
|
|
|
@@ -35,7 +35,7 @@ siluzan-tso list-accounts [选项]
|
|
|
35
35
|
| 用户意图 | 推荐命令(一步) | 脚本读落盘 JSON |
|
|
36
36
|
| ----------------------------- | ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
|
|
37
37
|
| 列出全部某媒体账户 | `list-accounts -m <媒体> --page-size 999 --json-out <dir>` | `items[]`(`ma.mediaCustomerId`、`ma.mediaCustomerName`、`ma.currencyCode`、`ma.invalidOAuthToken` 等) |
|
|
38
|
-
| 哪些账户 OAuth / 授权失效 | 同上(或 `-s invalid`);表格看「授权状态」列
|
|
38
|
+
| 哪些账户 OAuth / 授权失效 | 同上(或 `-s invalid`);表格看「授权状态」列 | **`ma.invalidOAuthToken === true`**(勿用审核状态 / `mediaAccountState`) |
|
|
39
39
|
| 有多少个账户 | 同上 | **`total`**(无需翻页;`itemCount < total` 时说明 page-size 不够大) |
|
|
40
40
|
| 只查某一个户 | `list-accounts -m <媒体> -k <id或名称> --json-out <dir>` | 无需大 page-size |
|
|
41
41
|
| **Meta 全部账户 + 余额/消耗** | **`accounts-digest -m MetaAd --json-out <dir>`**(一步;内部翻页+分批) | `accounts-digest-metaad.json` → `data.items[]`(含 `balance`、`spend`) |
|
|
@@ -73,16 +73,16 @@ siluzan-tso list-accounts -m Google --page 2 --page-size 999 --json-out ./snap-p
|
|
|
73
73
|
|
|
74
74
|
**输出字段说明:**
|
|
75
75
|
|
|
76
|
-
| 字段 / JSON 路径
|
|
77
|
-
|
|
|
78
|
-
| `ma.entityId`
|
|
79
|
-
| `ma.mediaCustomerId`
|
|
80
|
-
| `ma.currencyCode`
|
|
81
|
-
| `ma.mediaCustomerName`
|
|
82
|
-
| `ma.mediaAccountState` 等
|
|
83
|
-
| **`ma.invalidOAuthToken`**
|
|
76
|
+
| 字段 / JSON 路径 | 说明 |
|
|
77
|
+
| -------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
78
|
+
| `ma.entityId` | 丝路赞内部 ID,`delink`/`share`/`reauth`、**`account-active-bills`** 等操作使用此 ID(**不是** `mediaCustomerId`) |
|
|
79
|
+
| `ma.mediaCustomerId` | 媒体侧账户 ID(`stats`/`balance`/`accounts-digest` 的 `-a` 只用此字段):Google/TikTok/Bing 多为数字;**Yandex 形如 `porg-…`**;Meta 常带 `act_`。**不是** `entityId` |
|
|
80
|
+
| `ma.currencyCode` | 账户主币种:`CNY` / `USD` 等;**表格有「币种」列**;报告/Excel 须与此一致,见 `references/accounts/currency.md` |
|
|
81
|
+
| `ma.mediaCustomerName` | 账户名称(表格「账户名称」) |
|
|
82
|
+
| `ma.mediaAccountState` 等 | 平台开户/审核态(如 Approved / Linked);**不是** OAuth 是否可用 |
|
|
83
|
+
| **`ma.invalidOAuthToken`** | **OAuth 是否失效**:`true`=失效,`false`=正常。**表格必有「授权状态」列**(✅ 正常 / ⚠️ 失效),与此字段一一对应;判失效、筛 `-s invalid`、走 `reauth` 均看它 |
|
|
84
84
|
| **`ma.scopeActivatedSources`**(可选) | **仅当本次 `list-accounts` 输出中出现该字段时才可读**:非空且存在未过期条目(看 `expireAt`)= 已激活;空数组或全部过期 = 未激活。出现时 Google 表格才有「套餐激活」列。**若 JSON/表格中无此字段/列:禁止向用户谈套餐是否激活,禁止臆造未激活/已激活** |
|
|
85
|
-
| `ma.TTADInfo.status` 等
|
|
85
|
+
| `ma.TTADInfo.status` 等 | 媒体侧投放/审核细态(TikTok 表格「审核状态」等);**勿**当成 OAuth 授权状态 |
|
|
86
86
|
|
|
87
87
|
> **Agent**:用户问「哪些授权失效 / OAuth 状态」时,读盘看 `items[].ma.invalidOAuthToken`,表格看「授权状态」列;**不要**用 `mediaAccountState` 或审核状态列代替。
|
|
88
88
|
> 用户问「哪些买了套餐 / 是否激活套餐」时:**仅当**输出含 `ma.scopeActivatedSources`(或 Google 表格有「套餐激活」列)才可据此回答;**缺失时直接说明当前环境无法查询套餐激活状态**,不要用 `mediaAccountState` / 授权状态代替,也不要去猜。
|
|
@@ -167,7 +167,7 @@ siluzan-tso account-history --start 2026-03-01 --end 2026-03-31 --json-out ./sna
|
|
|
167
167
|
| 状态 | 含义 | 下一步操作 |
|
|
168
168
|
| ---------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
169
169
|
| `Pending` | 审核中 | 等待,可反复运行此命令轮询;审核周期因媒体而异 |
|
|
170
|
-
| `Approved` | 审核通过 | 运行 `list-accounts -m <媒体>` 确认账户已出现;引导用户充值激活(`config show` 取 `webUrl`,按 `finance.md` 打开对应媒体充值页;例如 Google 为 `https://www
|
|
170
|
+
| `Approved` | 审核通过 | 运行 `list-accounts -m <媒体>` 确认账户已出现;引导用户充值激活(`config show` 取 `webUrl`,按 `finance.md` 打开对应媒体充值页;例如 Google 为 `https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=Google`;Kwai、Yandex 当前没有对应充值界面) |
|
|
171
171
|
| `Rejected` | 被拒 | 查看 `--json-out` 落盘中的 `reason` 字段了解拒绝原因;修改资料后重新提交;若原因不明,引导用户联系丝路赞客服 |
|
|
172
172
|
|
|
173
173
|
---
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
- account me / check-access / auth / reauth / delink
|
|
8
8
|
- mcc-bind / mcc-unbind / share / unshare / share-detail
|
|
9
|
-
- close / bm-bind / withdraw
|
|
9
|
+
- close / bm-bind / withdraw-_ / bc-_ / email-\*
|
|
10
10
|
- 仅限网页的操作
|
|
11
11
|
|
|
12
12
|
## account — 账号管理(OAuth 授权 / 解除关联 / Google MCC / 分享)
|
|
@@ -39,11 +39,11 @@ siluzan-tso account me --check-phone 15130150466 --json-out ./snap-me
|
|
|
39
39
|
|
|
40
40
|
**套餐激活字段(可选前提)**:若 `list-accounts` 输出中**出现** `ma.scopeActivatedSources`(或 Google「套餐激活」列),须先确认有未过期条目再据此谈「授权过期」;**输出中无该字段/列时:跳过套餐判断,直接跑本命令**,且**禁止**向用户解释套餐是否激活。
|
|
41
41
|
|
|
42
|
-
| 结果
|
|
43
|
-
|
|
|
44
|
-
| `accessible`(200 / `true`)
|
|
45
|
-
| `reauth_required`(200 / `false`) | 已绑定但 Google OAuth 不可用 → 走重授权
|
|
46
|
-
| `no_permission`(403 / 账户 ID)
|
|
42
|
+
| 结果 | 含义 |
|
|
43
|
+
| ---------------------------------- | -------------------------------------------------------------------------------------------- |
|
|
44
|
+
| `accessible`(200 / `true`) | 授权可用,可继续拉数/操作 |
|
|
45
|
+
| `reauth_required`(200 / `false`) | 已绑定但 Google OAuth 不可用 → 走重授权 |
|
|
46
|
+
| `no_permission`(403 / 账户 ID) | 网关不可访问;可与 `list-accounts` 的 `invalidOAuthToken` 交叉确认是否授权失效或不在本账号下 |
|
|
47
47
|
|
|
48
48
|
**注意**:当输出能确认套餐**未激活**时,不要用本命令判断授权过期(未激活户仍可能返回 `accessible`)。无激活字段时不适用本条。
|
|
49
49
|
|
|
@@ -56,13 +56,13 @@ siluzan-tso account check-access -a <mediaCustomerId>
|
|
|
56
56
|
siluzan-tso account check-access -a 4256317784 --json-out ./snap-access
|
|
57
57
|
```
|
|
58
58
|
|
|
59
|
-
| HTTP | body | 含义
|
|
60
|
-
| ---- | --------------- |
|
|
61
|
-
| 200 | `true` | 可访问
|
|
62
|
-
| 200 | `false` | 已绑定但 Google OAuth 不可用
|
|
63
|
-
| 403 | 账户 ID | 无权限(多不在本账号下;授权失效时也可能出现) | `no_permission`(exit 1)
|
|
64
|
-
| 403 | `token不能为空` | 未绑定 Google 媒体
|
|
65
|
-
| 401 | 空 | 丝路赞 Token 失效
|
|
59
|
+
| HTTP | body | 含义 | CLI `status` |
|
|
60
|
+
| ---- | --------------- | ---------------------------------------------- | ---------------------------------------------------------------------- |
|
|
61
|
+
| 200 | `true` | 可访问 | `accessible`(exit 0) |
|
|
62
|
+
| 200 | `false` | 已绑定但 Google OAuth 不可用 | `reauth_required` → Agent 优先 `present_reauth`;备选 `account reauth` |
|
|
63
|
+
| 403 | 账户 ID | 无权限(多不在本账号下;授权失效时也可能出现) | `no_permission`(exit 1) |
|
|
64
|
+
| 403 | `token不能为空` | 未绑定 Google 媒体 | `google_not_bound` → Agent 优先平台授权;备选 `account auth -m Google` |
|
|
65
|
+
| 401 | 空 | 丝路赞 Token 失效 | `siluzan_token_invalid` → 重新 login |
|
|
66
66
|
|
|
67
67
|
> 与 `list-accounts -k` 互补:`list-accounts` 查「是否在列表 / `invalidOAuthToken`」(以及**若存在**则含套餐激活);本接口查「Google 网关是否允许当前凭据访问该 mediaCustomerId」。列表批量筛失效仍优先看 `invalidOAuthToken`;单户深查用本命令。
|
|
68
68
|
|
|
@@ -145,12 +145,12 @@ siluzan-tso account delink --id <entityId> --i-confirm --commit "用户确认解
|
|
|
145
145
|
siluzan-tso account delink --ids <id1,id2,id3> --i-confirm --commit "用户确认批量解绑"
|
|
146
146
|
```
|
|
147
147
|
|
|
148
|
-
| 选项 | 说明
|
|
149
|
-
| ----------------- |
|
|
150
|
-
| `--id <entityId>` | 断开单个账户(使用 `entityId`)
|
|
151
|
-
| `--ids <id1,id2>` | 批量断开多个账户(逗号分隔)
|
|
152
|
-
| `--i-confirm` | **必填**:用户已明确同意解绑后附加
|
|
153
|
-
| `--commit` | **必填**:写审计说明(可写用户确认的摘要)
|
|
148
|
+
| 选项 | 说明 |
|
|
149
|
+
| ----------------- | ------------------------------------------ |
|
|
150
|
+
| `--id <entityId>` | 断开单个账户(使用 `entityId`) |
|
|
151
|
+
| `--ids <id1,id2>` | 批量断开多个账户(逗号分隔) |
|
|
152
|
+
| `--i-confirm` | **必填**:用户已明确同意解绑后附加 |
|
|
153
|
+
| `--commit` | **必填**:写审计说明(可写用户确认的摘要) |
|
|
154
154
|
|
|
155
155
|
**示例:**
|
|
156
156
|
|
|
@@ -199,9 +199,9 @@ siluzan-tso account mcc-unbind --customers <mediaCustomerId> --mcc <MCC客户ID>
|
|
|
199
199
|
|
|
200
200
|
查找被分享人走主站 `GET /query/account/SimpleAccountInfo?phone=…`(须带国家码;与网页一致)。
|
|
201
201
|
|
|
202
|
-
| 选项 | 说明
|
|
203
|
-
| ----------------- |
|
|
204
|
-
| `--id <entityId>` | 账户 `entityId`
|
|
202
|
+
| 选项 | 说明 |
|
|
203
|
+
| ----------------- | ----------------------------------------------------------------------------------------------- |
|
|
204
|
+
| `--id <entityId>` | 账户 `entityId` |
|
|
205
205
|
| `--phone <phone>` | 被分享人手机号:**裸 11 位默认补 `+86`**;已是 `+86…` / `86…` **不再重复拼接**(勿写成 `++86`) |
|
|
206
206
|
|
|
207
207
|
```bash
|
|
@@ -228,11 +228,11 @@ siluzan-tso account share --id abc123def456 --phone +8618379752858
|
|
|
228
228
|
siluzan-tso account unshare --id <entityId> --account-id <userId> --i-confirm --commit "用户确认取消分享"
|
|
229
229
|
```
|
|
230
230
|
|
|
231
|
-
| 选项 | 说明
|
|
232
|
-
| ----------------------- |
|
|
233
|
-
| `--id <entityId>` | 账户 entityId
|
|
234
|
-
| `--account-id <userId>` | 被取消分享的用户 ID
|
|
235
|
-
| `--i-confirm` | **必填**:用户已明确同意后附加
|
|
231
|
+
| 选项 | 说明 |
|
|
232
|
+
| ----------------------- | ------------------------------ |
|
|
233
|
+
| `--id <entityId>` | 账户 entityId |
|
|
234
|
+
| `--account-id <userId>` | 被取消分享的用户 ID |
|
|
235
|
+
| `--i-confirm` | **必填**:用户已明确同意后附加 |
|
|
236
236
|
|
|
237
237
|
**示例:**
|
|
238
238
|
|
|
@@ -488,7 +488,7 @@ siluzan-tso account email-deauth -c <mediaCustomerId> --invitation-id <id> --res
|
|
|
488
488
|
|
|
489
489
|
| 功能 | 媒体 | 网页路径 |
|
|
490
490
|
| --------------------------------------- | ------ | ------------------------------------------------- |
|
|
491
|
-
| **账户激活**(邀请他人激活 / 充值激活) | Google | `https://www
|
|
491
|
+
| **账户激活**(邀请他人激活 / 充值激活) | Google | `https://www.siluzan.com/v3/foreign_trade/tso/manageAccounts` |
|
|
492
492
|
|
|
493
493
|
**Agent 建议话术**:
|
|
494
494
|
|
|
@@ -497,5 +497,5 @@ siluzan-tso account email-deauth -c <mediaCustomerId> --invitation-id <id> --res
|
|
|
497
497
|
siluzan-tso config show # 查看 webUrl 字段
|
|
498
498
|
|
|
499
499
|
# 账户激活(Google)→ 引导至账户管理页
|
|
500
|
-
# https://www
|
|
500
|
+
# https://www.siluzan.com/v3/foreign_trade/tso/manageAccounts
|
|
501
501
|
```
|
|
@@ -4,15 +4,15 @@
|
|
|
4
4
|
|
|
5
5
|
## 何时 Read
|
|
6
6
|
|
|
7
|
-
| 任务
|
|
8
|
-
|
|
|
9
|
-
| 列表 / 有哪些 / 有多少 / OAuth 失效筛查 / 激活账单 / 开户申请历史
|
|
10
|
-
| 单户余额、多户余额续航(**P2 `balance-scan`**)、单户消耗 `stats`、多户画像(**P3 `accounts-digest`**) | [`accounts-balance-stats.md`](accounts-balance-stats.md)
|
|
11
|
-
| 分享 / 解绑 / 重授权 / MCC / BC / BM / 关闭 / 提现 / 邮箱授权
|
|
12
|
-
| 六大媒体开户参数与首次必填
|
|
13
|
-
| 充值 / 转账 / 发票
|
|
14
|
-
| 币种与跨币种禁止求和
|
|
15
|
-
| 写审计 / `--commit` / restore
|
|
7
|
+
| 任务 | Read |
|
|
8
|
+
| ------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
|
|
9
|
+
| 列表 / 有哪些 / 有多少 / OAuth 失效筛查 / 激活账单 / 开户申请历史 | [`accounts-list.md`](accounts-list.md) |
|
|
10
|
+
| 单户余额、多户余额续航(**P2 `balance-scan`**)、单户消耗 `stats`、多户画像(**P3 `accounts-digest`**) | [`accounts-balance-stats.md`](accounts-balance-stats.md) |
|
|
11
|
+
| 分享 / 解绑 / 重授权 / MCC / BC / BM / 关闭 / 提现 / 邮箱授权 | [`accounts-permissions.md`](accounts-permissions.md) |
|
|
12
|
+
| 六大媒体开户参数与首次必填 | [`open-account-by-media.md`](open-account-by-media.md)(Google UI:[`open-account-google-ui.md`](open-account-google-ui.md)) |
|
|
13
|
+
| 充值 / 转账 / 发票 | [`finance.md`](finance.md) |
|
|
14
|
+
| 币种与跨币种禁止求和 | [`currency.md`](currency.md) |
|
|
15
|
+
| 写审计 / `--commit` / restore | [`write-audit-restore.md`](write-audit-restore.md) |
|
|
16
16
|
|
|
17
17
|
## Gotchas(账户域)
|
|
18
18
|
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
|
|
8
7
|
## Contents
|
|
9
8
|
|
|
10
9
|
- invoice-info — 发票抬头管理
|
|
@@ -127,7 +126,7 @@ siluzan-tso config show
|
|
|
127
126
|
|
|
128
127
|
### 充值页链接(按媒体 × 类型)
|
|
129
128
|
|
|
130
|
-
链接模式:`https://www
|
|
129
|
+
链接模式:`https://www.siluzan.com/v3/foreign_trade/tso/recharge/<page>?mediaType=<mediaType>`;丝路赞钱包:`https://www.siluzan.com/v3/foreign_trade/tso/recharge/siluzanWallet`(无媒体参数)。
|
|
131
130
|
|
|
132
131
|
| 充值类型 | `<page>` | 支持媒体(`mediaType` 参数) |
|
|
133
132
|
| ------------------------- | --------------------- | ------------------------------------------- |
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
# 各媒体开户
|
|
2
2
|
|
|
3
|
-
> 网页链接:`https://www
|
|
3
|
+
> 网页链接:`https://www.siluzan.com/v3/foreign_trade/tso/accountOpeningHistory?tso=%2Fv3umijs%2Ftso%2FaccountOpeningHistory`
|
|
4
4
|
> 多命令串联见 `references/core/workflows.md` § 流程一。
|
|
5
5
|
|
|
6
|
-
|
|
7
6
|
## Contents
|
|
8
7
|
|
|
9
8
|
- 首次响应硬规范(必读)
|
|
@@ -30,7 +29,7 @@
|
|
|
30
29
|
| 多媒体同时开 | 每个目标媒体各一份业务清单,**禁止**混用字段 |
|
|
31
30
|
|
|
32
31
|
**对用户清单只写**:业务项含义、格式/枚举(如「b2b / b2c / app」)、是否需本地文件路径。
|
|
33
|
-
**禁止**在对用户回复中出现:`--flag`、CLI
|
|
32
|
+
**禁止**在对用户回复中出现:`--flag`、CLI 选项名、命令行参数列、`siluzan-tso …` 完整命令块、本文件「Agent 参数」列内容。
|
|
34
33
|
CLI 参数仅供 Agent **内部**组命令使用(见下表第三列)。用户补齐后再确认并提交;写入前仍须用户确认(见 `references/core/agent-conventions.md`)。
|
|
35
34
|
|
|
36
35
|
只有 Google 开户时需要询问用户账户币种(USD|CNY);其他广告平台禁止询问币种(均仅支持 USD)。
|
|
@@ -57,35 +56,35 @@ CLI 参数仅供 Agent **内部**组命令使用(见下表第三列)。用
|
|
|
57
56
|
|
|
58
57
|
### Google(`open-account google`,无需图片)
|
|
59
58
|
|
|
60
|
-
| 业务项 | 说明
|
|
61
|
-
| -------- |
|
|
62
|
-
| 公司名称 | 用于匹配/创建广告主组
|
|
63
|
-
| 推广链接 | 可只写域名,提交时会自动补 `https://`
|
|
64
|
-
| 推广类型 | `b2b`(企业对企业)/ `b2c`(企业对消费者)/ `app`(应用) | `--promotion-type`
|
|
65
|
-
| 一级行业 | 可选;网页已隐藏;不传则 `customer_info.industry`=`-`
|
|
66
|
-
| 二级行业 | 可选;与一级成对;皆空时统一为 `-`
|
|
67
|
-
| 账户名称 | 广告账户显示名,建议 ≤22 字
|
|
68
|
-
| 币种 | `USD`(美元)或 `CNY`(人民币)
|
|
69
|
-
| 时区 | 时区 Code;可省略(USD→香港、CNY→上海);其它先查列表
|
|
70
|
-
| 邀请邮箱 | 开通后接收账户邀请的邮箱
|
|
59
|
+
| 业务项 | 说明 | Agent 参数(勿展示) |
|
|
60
|
+
| -------- | --------------------------------------------------------- | -------------------- |
|
|
61
|
+
| 公司名称 | 用于匹配/创建广告主组 | `--company` |
|
|
62
|
+
| 推广链接 | 可只写域名,提交时会自动补 `https://` | `--promotion-link` |
|
|
63
|
+
| 推广类型 | `b2b`(企业对企业)/ `b2c`(企业对消费者)/ `app`(应用) | `--promotion-type` |
|
|
64
|
+
| 一级行业 | 可选;网页已隐藏;不传则 `customer_info.industry`=`-` | `--industry1` |
|
|
65
|
+
| 二级行业 | 可选;与一级成对;皆空时统一为 `-` | `--industry2` |
|
|
66
|
+
| 账户名称 | 广告账户显示名,建议 ≤22 字 | `--account-name` |
|
|
67
|
+
| 币种 | `USD`(美元)或 `CNY`(人民币) | `--currency` |
|
|
68
|
+
| 时区 | 时区 Code;可省略(USD→香港、CNY→上海);其它先查列表 | `--timezone`(可选) |
|
|
69
|
+
| 邀请邮箱 | 开通后接收账户邀请的邮箱 | `--invite-email` |
|
|
71
70
|
|
|
72
71
|
### TikTok(`open-account tiktok`,需营业执照图片)
|
|
73
72
|
|
|
74
|
-
| 业务项 | 说明
|
|
75
|
-
| ------------ |
|
|
76
|
-
| 公司名称 | 无 OCR,须用户手填
|
|
77
|
-
| 账户名称 | 广告账户显示名
|
|
78
|
-
| 时区 | IANA;不确定时先查时区列表
|
|
79
|
-
| 行业 ID | **叶子节点**数字;不确定时先查行业列表
|
|
80
|
-
| 注册地 | 国家代码如 `CN`;不确定时先查地区列表
|
|
81
|
-
| 推广链接 | 推广网址
|
|
82
|
-
| 执照编号 | 统一社会信用代码
|
|
83
|
-
| 执照图片 | 本地 JPG/PNG 路径
|
|
84
|
-
| 法人姓名 | 必填
|
|
85
|
-
| 法人身份证 | 必填
|
|
86
|
-
| 法人银联账号 | 必填
|
|
87
|
-
| 法人手机 | 必填
|
|
88
|
-
| 币种 | 只支持 USD,无需再问用户
|
|
73
|
+
| 业务项 | 说明 | Agent 参数(勿展示) |
|
|
74
|
+
| ------------ | -------------------------------------- | ------------------------ |
|
|
75
|
+
| 公司名称 | 无 OCR,须用户手填 | `--company` |
|
|
76
|
+
| 账户名称 | 广告账户显示名 | `--account-name` |
|
|
77
|
+
| 时区 | IANA;不确定时先查时区列表 | `--timezone` |
|
|
78
|
+
| 行业 ID | **叶子节点**数字;不确定时先查行业列表 | `--industry-id` |
|
|
79
|
+
| 注册地 | 国家代码如 `CN`;不确定时先查地区列表 | `--registered-area` |
|
|
80
|
+
| 推广链接 | 推广网址 | `--promotion-link` |
|
|
81
|
+
| 执照编号 | 统一社会信用代码 | `--license-no` |
|
|
82
|
+
| 执照图片 | 本地 JPG/PNG 路径 | `--license-file` |
|
|
83
|
+
| 法人姓名 | 必填 | `--representative-name` |
|
|
84
|
+
| 法人身份证 | 必填 | `--representative-id` |
|
|
85
|
+
| 法人银联账号 | 必填 | `--unionpay-account` |
|
|
86
|
+
| 法人手机 | 必填 | `--representative-phone` |
|
|
87
|
+
| 币种 | 只支持 USD,无需再问用户 | (无 `--currency`) |
|
|
89
88
|
|
|
90
89
|
### Yandex(`open-account yandex`,无需图片)
|
|
91
90
|
|
|
@@ -97,39 +96,39 @@ CLI 参数仅供 Agent **内部**组命令使用(见下表第三列)。用
|
|
|
97
96
|
|
|
98
97
|
### BingV2(`open-account bing`,需营业执照图片)
|
|
99
98
|
|
|
100
|
-
| 业务项 | 说明
|
|
101
|
-
| ---------- |
|
|
102
|
-
| 直接/代理 | `Direct`(直接)或 `Agency`(代理)
|
|
103
|
-
| 广告主全称 | 用于匹配/创建广告主组
|
|
104
|
-
| 公司简称 |
|
|
105
|
-
| 开户名称 | 账户显示名
|
|
106
|
-
| 省份 |
|
|
107
|
-
| 城市 |
|
|
108
|
-
| 详细地址 |
|
|
109
|
-
| 邮编 |
|
|
110
|
-
| 行业 | 先查行业列表,传输出的 **id**(与网页下拉一致),勿猜中文名
|
|
111
|
-
| 推广链接 |
|
|
112
|
-
| 执照图片 | JPG/PNG/PDF 本地路径
|
|
99
|
+
| 业务项 | 说明 | Agent 参数(勿展示) |
|
|
100
|
+
| ---------- | ----------------------------------------------------------- | -------------------- |
|
|
101
|
+
| 直接/代理 | `Direct`(直接)或 `Agency`(代理) | `--pattern` |
|
|
102
|
+
| 广告主全称 | 用于匹配/创建广告主组 | `--advertiser-name` |
|
|
103
|
+
| 公司简称 | | `--name-short` |
|
|
104
|
+
| 开户名称 | 账户显示名 | `--name-remark-list` |
|
|
105
|
+
| 省份 | | `--province` |
|
|
106
|
+
| 城市 | | `--city` |
|
|
107
|
+
| 详细地址 | | `--address` |
|
|
108
|
+
| 邮编 | | `--postcode` |
|
|
109
|
+
| 行业 | 先查行业列表,传输出的 **id**(与网页下拉一致),勿猜中文名 | `--trade-id` |
|
|
110
|
+
| 推广链接 | | `--promotion-link` |
|
|
111
|
+
| 执照图片 | JPG/PNG/PDF 本地路径 | `--license-file` |
|
|
113
112
|
|
|
114
113
|
### Kwai(`open-account kwai`,需营业执照图片)
|
|
115
114
|
|
|
116
|
-
| 业务项 | 说明
|
|
117
|
-
| ------------- |
|
|
118
|
-
| 营业执照号 |
|
|
119
|
-
| 注册国家 | 如 `CN`
|
|
120
|
-
| 注册地址 | 省市区详细地址
|
|
121
|
-
| 营业范围 |
|
|
122
|
-
| 产品/品牌名 |
|
|
123
|
-
| 账户类型 | `1` 效果 / `2` 品牌
|
|
124
|
-
| 产品网址 |
|
|
125
|
-
| 执照/证件类型 | `1` 统一社会信用代码 / `2` DUNS / `3` CNPJ(与网页下拉一致;**勿用** `ENTERPRISE`)
|
|
126
|
-
| 账户名称 |
|
|
127
|
-
| 公司主体名 |
|
|
128
|
-
| 一级行业 ID |
|
|
129
|
-
| 二级行业 ID |
|
|
130
|
-
| 有效期类型 | `1` 有限期(须同时提供到期日)/ `2` 长期
|
|
131
|
-
| 投放地区 | ISO 如 `US`
|
|
132
|
-
| 执照图片 | 本地路径
|
|
115
|
+
| 业务项 | 说明 | Agent 参数(勿展示) |
|
|
116
|
+
| ------------- | ----------------------------------------------------------------------------------- | -------------------- |
|
|
117
|
+
| 营业执照号 | | `--licence-id` |
|
|
118
|
+
| 注册国家 | 如 `CN` | `--licence-country` |
|
|
119
|
+
| 注册地址 | 省市区详细地址 | `--licence-location` |
|
|
120
|
+
| 营业范围 | | `--business-scope` |
|
|
121
|
+
| 产品/品牌名 | | `--product` |
|
|
122
|
+
| 账户类型 | `1` 效果 / `2` 品牌 | `--ad-type` |
|
|
123
|
+
| 产品网址 | | `--product-url` |
|
|
124
|
+
| 执照/证件类型 | `1` 统一社会信用代码 / `2` DUNS / `3` CNPJ(与网页下拉一致;**勿用** `ENTERPRISE`) | `--licence-id-type` |
|
|
125
|
+
| 账户名称 | | `--account-name` |
|
|
126
|
+
| 公司主体名 | | `--company-name` |
|
|
127
|
+
| 一级行业 ID | | `--industry-id1` |
|
|
128
|
+
| 二级行业 ID | | `--industry-id2` |
|
|
129
|
+
| 有效期类型 | `1` 有限期(须同时提供到期日)/ `2` 长期 | `--expire-type` |
|
|
130
|
+
| 投放地区 | ISO 如 `US` | `--target-country` |
|
|
131
|
+
| 执照图片 | 本地路径 | `--license-file` |
|
|
133
132
|
|
|
134
133
|
### MetaAd(`open-account meta`)
|
|
135
134
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
## 一、开户流程(五步语义)
|
|
2
2
|
|
|
3
|
-
| 步骤 | 含义 | Agent 内部动作(勿原样贴给用户)
|
|
4
|
-
| ---- | ---------- |
|
|
5
|
-
| ① | 准备资料 | 向用户说明**业务项清单**;无法代替用户准备资质
|
|
6
|
-
| ② | 填写并提交 | `open-account google-wizard`(TTY)或 `open-account google`
|
|
7
|
-
| ③ | 等待审核 | `account-history -m Google`
|
|
8
|
-
| ④ | 审核通过 | 同上
|
|
9
|
-
| ⑤ | 充值激活 | **必须网页**;`config show` → `webUrl` + 充值路径(见 `finance.md`)
|
|
3
|
+
| 步骤 | 含义 | Agent 内部动作(勿原样贴给用户) |
|
|
4
|
+
| ---- | ---------- | -------------------------------------------------------------------- |
|
|
5
|
+
| ① | 准备资料 | 向用户说明**业务项清单**;无法代替用户准备资质 |
|
|
6
|
+
| ② | 填写并提交 | `open-account google-wizard`(TTY)或 `open-account google` |
|
|
7
|
+
| ③ | 等待审核 | `account-history -m Google` |
|
|
8
|
+
| ④ | 审核通过 | 同上 |
|
|
9
|
+
| ⑤ | 充值激活 | **必须网页**;`config show` → `webUrl` + 充值路径(见 `finance.md`) |
|
|
10
10
|
|
|
11
11
|
美元账户最低充值约 **100 USD**,人民币约 **700 CNY**(以平台为准)。
|
|
12
12
|
|
|
@@ -17,17 +17,17 @@
|
|
|
17
17
|
**对用户说明时**只使用「字段 / 说明」两列(业务语言)。
|
|
18
18
|
**Agent 参数**列仅供内部组命令,**禁止**写入对用户回复。
|
|
19
19
|
|
|
20
|
-
| 字段
|
|
21
|
-
|
|
|
22
|
-
| 公司名称
|
|
23
|
-
| 推广网址
|
|
24
|
-
| 推广类型
|
|
25
|
-
| 一级 / 二级行业
|
|
26
|
-
| 账户名称
|
|
27
|
-
| 币种
|
|
28
|
-
| 时区
|
|
29
|
-
| 开户数量
|
|
30
|
-
| 邀请邮箱
|
|
20
|
+
| 字段 | 说明(可对用户说) | Agent 参数(勿展示) |
|
|
21
|
+
| --------------- | -------------------------------------------------------------------- | ---------------------------------------------------------------- |
|
|
22
|
+
| 公司名称 | 用于匹配/创建广告主组 | `--company` |
|
|
23
|
+
| 推广网址 | 可只写域名,提交时会自动补协议 | `--promotion-link` |
|
|
24
|
+
| 推广类型 | 企业对企业(b2b)/ 企业对消费者(b2c)/ 应用(app) | `--promotion-type`:`b2b` \| `b2c` \| `app` |
|
|
25
|
+
| 一级 / 二级行业 | **可选**;网页自 2025-04-22 起已隐藏 Google 行业下拉(后端字典不稳) | `--industry1` / `--industry2`(可选);列表:`google-industries` |
|
|
26
|
+
| 账户名称 | 广告账户显示名 | `--account-name` |
|
|
27
|
+
| 币种 | CNY 或 USD | `--currency` |
|
|
28
|
+
| 时区 | 时区 Code;可省略走币种默认;勿用展示名 | `--timezone`(可选);列表:`google-timezones` |
|
|
29
|
+
| 开户数量 | 1~3 | `--counts` |
|
|
30
|
+
| 邀请邮箱 | 开通后接收账户邀请的邮箱 | `--invite-email` |
|
|
31
31
|
|
|
32
32
|
**币种默认时区**:CNY → `Asia/Shanghai`;USD(或其它非 CNY)→ `Asia/Hong_Kong`。其它时区从 `google-timezones` 取 **Code** 列。
|
|
33
33
|
|
|
@@ -65,7 +65,7 @@ siluzan-tso open-account google-wizard
|
|
|
65
65
|
|
|
66
66
|
```bash
|
|
67
67
|
siluzan-tso account-history -m Google
|
|
68
|
-
# 审核通过后:config show → https://www
|
|
68
|
+
# 审核通过后:config show → https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=Google
|
|
69
69
|
```
|
|
70
70
|
|
|
71
71
|
---
|
|
@@ -21,14 +21,14 @@
|
|
|
21
21
|
|
|
22
22
|
涉及"今天/当天/今日消耗""实时消耗排行"等问题时,**必须**先按此表确认接口口径,否则今天消耗会被误判为 0。
|
|
23
23
|
|
|
24
|
-
| 命令 / 接口 | 时效性
|
|
25
|
-
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
26
|
-
| `google-analysis --sections overview`(Google 网关 `OverviewSectionData`) | **实时**;请求起止为 **YYYY-MM-DD**(不附加时区)
|
|
27
|
-
| `google-analysis --sections campaign-types`(`types-summary`) | **实时**
|
|
28
|
-
| `google-analysis` 其他 range 维度(`campaigns` / `keywords` / `devices` / `geographic` / `daily-metrics` / …)
|
|
29
|
-
| `stats -m Google` / `balance-scan -m Google` / `accounts-digest -m Google` / `list-accounts -m Google` 合并消耗(TSO `account-spend-overview`,2026-05 起) | **后端自动分流**:窗口完全在历史 → `database`;含今天 → `googleCombined`。**`stats` 请求起止按 UTC+8 墙钟**(`…T00:00:00+08:00` ~ `…T23:59:59+08:00`)
|
|
30
|
-
| `stats` / `balance-scan` / `accounts-digest` / `list-accounts` 的 **TikTok / Yandex / BingV2 / Kwai / MetaAd** 合并消耗(TSO `accountsoverview`;MetaAd OAuth 户走 `FacebookAds` 段) | **每日同步昨天**
|
|
31
|
-
| `balance`(`GetMediaAccountInfo`) | 实时
|
|
24
|
+
| 命令 / 接口 | 时效性 | 能否查"今天" | 典型用途 |
|
|
25
|
+
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------- | ------------------------------------------------ |
|
|
26
|
+
| `google-analysis --sections overview`(Google 网关 `OverviewSectionData`) | **实时**;请求起止为 **YYYY-MM-DD**(不附加时区) | ✅ 可查当天 | 当天/今日消耗、当天高消耗账号排行 |
|
|
27
|
+
| `google-analysis --sections campaign-types`(`types-summary`) | **实时** | ✅ 可查当天 | 当天系列类型分布 |
|
|
28
|
+
| `google-analysis` 其他 range 维度(`campaigns` / `keywords` / `devices` / `geographic` / `daily-metrics` / …) | 实时(受 Google Ads API 同步延迟影响);**一律 YYYY-MM-DD**(不附加时区;与 `stats` 的 UTC+8 不同) | 可查当天,但当天可能尚未结算 | 周期分析、报告 |
|
|
29
|
+
| `stats -m Google` / `balance-scan -m Google` / `accounts-digest -m Google` / `list-accounts -m Google` 合并消耗(TSO `account-spend-overview`,2026-05 起) | **后端自动分流**:窗口完全在历史 → `database`;含今天 → `googleCombined`。**`stats` 请求起止按 UTC+8 墙钟**(`…T00:00:00+08:00` ~ `…T23:59:59+08:00`) | ✅ 可查当天(含今天时切实时聚合) | 历史回溯、巡检、周报 KPI、余额续航估算 |
|
|
30
|
+
| `stats` / `balance-scan` / `accounts-digest` / `list-accounts` 的 **TikTok / Yandex / BingV2 / Kwai / MetaAd** 合并消耗(TSO `accountsoverview`;MetaAd OAuth 户走 `FacebookAds` 段) | **每日同步昨天** | ❌ 查今天会全为 0 | 历史回溯、巡检、余额续航估算(口径为"截至昨天") |
|
|
31
|
+
| `balance`(`GetMediaAccountInfo`) | 实时 | — | 仅当前余额,不反映消耗 |
|
|
32
32
|
|
|
33
33
|
**选用规则**:
|
|
34
34
|
|
|
@@ -64,7 +64,7 @@ CLI 出口的所有 JSON / 表格金额已统一为**元**,关键字段:
|
|
|
64
64
|
| `ad campaigns --json-out ./snap` | `budget`(元,与 `--budget` 写参同口径) |
|
|
65
65
|
| `ad groups --json-out ./snap` | `maxCPCAmountYuan`、`targetCpaAmountYuan` |
|
|
66
66
|
| `google-analysis campaigns` 落盘 `campaigns-*.json` | `budgetAmountYuan`、`campaignTargetCpaYuan`、`maximizeConversionsTargetCpaYuan`;同行 `spend` / `averageCpc` / `costPerConversion` 也是元 |
|
|
67
|
-
| `keyword -k … --json-out ./snap`
|
|
67
|
+
| `keyword -k … --json-out ./snap` | `averageCpc`、`lowTopOfPageBid`、`highTopOfPageBid`;根级与每条 `bidAmountCurrency`(有 `-a` 为账户币;无 `-a` 为 USD) |
|
|
68
68
|
| `balance` 等账户余额接口 | 余额字段为`remainingAccountBudget`(元) |
|
|
69
69
|
|
|
70
70
|
旧字段 `budgetAmount`(分)、`maxCPCAmountDisplay`、`*Micros`(微元)**已不再落盘**,下游脚本无需做单位换算。金额保留 2 位小数,带货币代码(如 `¥50.00 CNY`、`$50.00 USD`),`currencyCode` 从响应读取,跨币种账户分表;细则见 `references/accounts/currency.md`。
|
|
@@ -96,22 +96,22 @@ siluzan-tso google-analysis -a <id> --exclude materials,gold-account --json-out
|
|
|
96
96
|
|
|
97
97
|
### 选项
|
|
98
98
|
|
|
99
|
-
| 选项 | 说明
|
|
100
|
-
| --------------------------- |
|
|
101
|
-
| `-a, --account <id>` | Google `mediaCustomerId`(必填)
|
|
102
|
-
| `--json-out <dir>` | 必填;每维一个 `<section>-<accountId>.json` + `manifest-<accountId>.json`
|
|
103
|
-
| `--sections <list>` | 仅执行指定维度(逗号分隔);省略=全部 25 个
|
|
104
|
-
| `--exclude <list>` | 排除指定维度;与 `--sections` 可叠加
|
|
99
|
+
| 选项 | 说明 |
|
|
100
|
+
| --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
101
|
+
| `-a, --account <id>` | Google `mediaCustomerId`(必填) |
|
|
102
|
+
| `--json-out <dir>` | 必填;每维一个 `<section>-<accountId>.json` + `manifest-<accountId>.json` |
|
|
103
|
+
| `--sections <list>` | 仅执行指定维度(逗号分隔);省略=全部 25 个 |
|
|
104
|
+
| `--exclude <list>` | 排除指定维度;与 `--sections` 可叠加 |
|
|
105
105
|
| `--start` / `--end` | 统计区间(YYYY-MM-DD,**只传年月日**;默认区间按 UTC+8 日历)。与 `stats -m Google`(会加成 `+08:00`)不同;省略=近 7 天截至昨天;`final-urls`/`campaign-types` 自动忽略 |
|
|
106
|
-
| `--concurrency <n>` | 并发数,默认 5,上限 16
|
|
107
|
-
| `--limit <n>` | 透传给 `keywords`/`search-terms`(默认 **0**=不封顶;`orderByCost=true`)
|
|
108
|
-
| `--level <lvl>` | 透传给 `extensions`(Account/Campaign/Ad Group)
|
|
109
|
-
| `--audience-type <type>` | 透传给 `audience`(SystemDefined/UserDefined)
|
|
110
|
-
| `--no-order-by-cost` | 透传给 `keywords`/`search-terms`
|
|
111
|
-
| `--cost-greater <n>` | 仅 **`geo-matched` / `campaign-geo` / `campaign-geo-matched`**:网关 `costGreater`(整数,单位以后端为准)
|
|
112
|
-
| `--click-greater <n>` | 仅 **`geo-matched` / `campaign-geo` / `campaign-geo-matched`**:网关 `clickGreater`
|
|
113
|
-
| `--conversions-greater <n>` | 仅 **`geo-matched` / `campaign-geo` / `campaign-geo-matched`**:网关 `conversionsGreater`
|
|
114
|
-
| `--verbose` | 打印详细错误
|
|
106
|
+
| `--concurrency <n>` | 并发数,默认 5,上限 16 |
|
|
107
|
+
| `--limit <n>` | 透传给 `keywords`/`search-terms`(默认 **0**=不封顶;`orderByCost=true`) |
|
|
108
|
+
| `--level <lvl>` | 透传给 `extensions`(Account/Campaign/Ad Group) |
|
|
109
|
+
| `--audience-type <type>` | 透传给 `audience`(SystemDefined/UserDefined) |
|
|
110
|
+
| `--no-order-by-cost` | 透传给 `keywords`/`search-terms` |
|
|
111
|
+
| `--cost-greater <n>` | 仅 **`geo-matched` / `campaign-geo` / `campaign-geo-matched`**:网关 `costGreater`(整数,单位以后端为准) |
|
|
112
|
+
| `--click-greater <n>` | 仅 **`geo-matched` / `campaign-geo` / `campaign-geo-matched`**:网关 `clickGreater` |
|
|
113
|
+
| `--conversions-greater <n>` | 仅 **`geo-matched` / `campaign-geo` / `campaign-geo-matched`**:网关 `conversionsGreater` |
|
|
114
|
+
| `--verbose` | 打印详细错误 |
|
|
115
115
|
|
|
116
116
|
### 维度列表(25 个)
|
|
117
117
|
|
|
@@ -210,10 +210,10 @@ const data = d.record ?? d.items; // record 非空=汇总维度;否则=列表
|
|
|
210
210
|
|
|
211
211
|
`items[]` 每行额外包含:`conversionsValue`、`conversionsValuePerCost`(`spend ≤ 0` 时为 0)、`campaignTargetCpaYuan`、`maximizeConversionsTargetCpaYuan`、`manualCpcEnhancedCpcEnabled`、`percentCpcEnhancedCpcEnabled`。所有金额字段(`*Yuan` 后缀)已统一为元,可直接展示,无需换算。
|
|
212
212
|
|
|
213
|
-
| 字段
|
|
214
|
-
|
|
|
213
|
+
| 字段 | 含义 |
|
|
214
|
+
| ------------------------------------- | ------------------------------------------------ |
|
|
215
215
|
| `campaignStatus` / `campaignStatusV2` | 网关原始枚举(`Enabled` / `Paused` / `Removed`) |
|
|
216
|
-
| `campaignStatusDisplay`
|
|
216
|
+
| `campaignStatusDisplay` | CLI 注入的中文状态文案;**报告状态列读此字段** |
|
|
217
217
|
|
|
218
218
|
日预算字段为 `budgetAmountYuan`(元),脚本可直接 `row.budgetAmountYuan`;网关原始 `budgetAmount`(分)已不再落盘。
|
|
219
219
|
|
|
@@ -356,13 +356,13 @@ siluzan-tso bing-analysis -a <mediaCustomerId> --start 2026-03-01 --end 2026-03-
|
|
|
356
356
|
|
|
357
357
|
### 点击率 / 转化率口径(必读)
|
|
358
358
|
|
|
359
|
-
Bing 的 `ctr` / `conversionRate` 为 0~1
|
|
359
|
+
Bing 的 `ctr` / `conversionRate` 为 0~1 小数\*\*(`0.007434` = 0.74%),与 Google `schemaVersion ≥ 2` 一致。
|
|
360
360
|
|
|
361
|
-
| 场景
|
|
362
|
-
|
|
|
363
|
-
| 报告 HTML 展示 | `(ctr * 100).toFixed(2) + '%'`
|
|
364
|
-
| Excel 0~1 列
|
|
365
|
-
| 脚本校验
|
|
361
|
+
| 场景 | 正确写法 | 错误写法 |
|
|
362
|
+
| -------------- | ------------------------------------------------------ | ----------------------------------------------- |
|
|
363
|
+
| 报告 HTML 展示 | `(ctr * 100).toFixed(2) + '%'` | `ctr.toFixed(2) + '%'`(会显示 74% 而非 0.74%) |
|
|
364
|
+
| Excel 0~1 列 | 直接写 JSON 数值 | 再 ÷100 |
|
|
365
|
+
| 脚本校验 | `clicks / impressions` 与 `ctr` 应一致(允许四舍五入) | 心算或凭印象 |
|
|
366
366
|
|
|
367
367
|
各 `overview-*.outline.txt` 等文件头部含 `//` 硬提示,Agent **须先读 outline** 再写报告。
|
|
368
368
|
|