亚马逊广告报告员(Amazon Ads Reporter)
v3通过分别请求和轮询来异步获取Amazon Ads Sponsored Products活动报告,避免API超时,无npm依赖。
运行时依赖
安装命令
点击复制技能文档
skill-amazon-ads-reporter 描述 使用解耦的异步模式获取 Amazon Ads Sponsored Products 活动表现报告。通过将请求和轮询分成两个独立的步骤,避免了 v3 Reporting API(2-10 分钟生成时间)超时问题。还包括关键词级别的获胜/死亡分析和快速出价检查器。
为什么需要两个步骤?Amazon 的 Reporting API v3 是异步的——您请求一个报告,获取一个 reportId,然后轮询直到它准备好。在 cron 中内联执行此操作会导致超时。正确的模式:请求 → 保存 reportId → (等待 1-2 分钟)→ 轮询 + 下载
使用方法 活动级别报告(步骤式,推荐用于 cron) # 步骤 1:请求报告 — 立即退出并返回 reportId node scripts/request-report.js --days 7 # 步骤 2:轮询 + 下载(1-2 分钟后运行,或者从单独的 cron 运行) node scripts/poll-report.js 活动级别报告(所有合一,用于手动运行) node scripts/get-report.js --days 7 关键词级别获胜/死亡分析(14 天异步报告) node scripts/keyword-report.js 输出:表格中所有启用的关键词,点击次数 > 0 或展示次数 ≥ 50(获胜者),以及死亡关键词(0 次点击,<50 次展示)数量。 快速出价检查器(实时,跨活动) node scripts/get-bids.js 输出:每个活动中所有启用和暂停的关键词的当前出价。读取实时数据(无需报告)。
参数 Arg 默认值 描述 --days N 7 包括在报告中的天数(活动和关键词报告)
配置 从 AMAZON_ADS_PATH 环境变量中读取凭据,缺省为 ~/amazon-ads-api.json。 amazon-ads-api.json 格式 { "refreshToken": "...", "lwaClientId": "...", "lwaClientSecret": "...", "profileId": "...", "region": "EU" } 区域:EU(默认,包括 UAE),NA(北美),FE(远东)。
输出 ~/.openclaw/workspace/tmp/amazon-report-pending.json — 由 request-report.js 创建 ~/.openclaw/workspace/tmp/amazon-report-latest.json — 由 poll-report.js 创建(成功后) 控制台表格:活动 | 展示次数 | 点击次数 | 点击率 | 花费 | 销售 | ACOS% 报告列(活动级别) campaignName, campaignId, impressions, clicks, spend, purchases7d, sales7d 暂停的活动会自动通过 GET /sp/campaigns/list 过滤掉。 报告列(关键词级别 — keyword-report.js) keywordId, keywordText, matchType, impressions, clicks, cost, purchases7d, sales7d
依赖 仅使用 Node.js 内置模块(https, zlib, fs, path)。无需 npm install。
注意 访问令牌会过期 — 如果需要,通过 Amazon 登录广告来刷新 GZIP_JSON 格式会被 poll-report.js 自动解压 报告仅适用于前一天和更早的日期(endDate = yesterday) get-bids.js 使用实时 v3 关键词列表端点 — 无需异步报告,立即响应 keyword-report.js 使用与活动报告相同的异步模式(30 秒轮询间隔,最高 10 分钟)