SuperAPI AI 工具集

campaigns

营销与增长

查看项目

更新于 10-16 10:30

技能介绍

用途

该技能用于通过 Spotify Ads API 管理广告系列(Campaign),包括列出或获取广告系列,以及创建、更新广告系列。默认情况下,创建和更新会先暂存为草稿(draft),仅在用户明确请求时才执行对已发布实体的直接写入(live write)。

配置

需要设置插件根目录并定义请求包装函数:

PLUGIN_ROOT="${CODEX_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-.}}"
api() { "$PLUGIN_ROOT/scripts/api-request.sh" campaigns "$@"; }

在首次调用 Ads API v3 之前,需阅读并遵循 $PLUGIN_ROOT/skills/api-reference/references/live-openapi.md。

若要在 API 调用之外获取设置值(TOKEN、AD_ACCOUNT_ID、AUTO_EXECUTE、BASE_URL、SDK_HEADER、SKILL_HEADER、PLUGIN_VERSION),可运行 api --env。其输出可安全用于 eval,即 eval $(api --env) 会为这些变量赋值。

主要能力

技能根据用户参数决定操作,支持以下操作:

  • list(无参数时的默认操作):列出已配置广告账户下的广告系列,请求 ad_accounts/{ad_account_id}/campaigns?limit=50&sort_direction=DESC,并以表格输出:ID | Name | Status | Objective / Delivery Goal Group | Created。
  • create:提示用户输入名称和广告系列目标,并将目标映射到 delivery_goal_group(AWARENESS、WEBSITE_TRAFFIC、APP_PROMOTION、ENGAGEMENT_ON_SPOTIFY 或 LEAD_GEN)。随后阅读并遵循 ad-product-validation.md 参考文档,获取一次实时目录,并针对 campaign.create 加 campaign.both 校验最终请求体。省略、UNSET 或 UNKNOWN 的 ad_product 会解析为 AUCTION。请求发往 ad_accounts/{ad_account_id}/drafts/campaigns。创建默认暂存,显示返回的草稿 ID 与当前 draft_hierarchy_version。除非用户另行通过 drafts 技能请求发布,否则不发布。
  • get <campaign_id>:按 ID 获取指定广告系列,请求 ad_accounts/{ad_account_id}/campaigns/$CAMPAIGN_ID,以可读格式显示全部字段。
  • update <campaign_id>:提示用户输入要更新的字段(至少 1 个),包括 name(可选)和 status(ACTIVE、PAUSED、ARCHIVED,可选)。在 PATCH 之前,阅读并遵循 ad-product-validation.md,获取实时目录与当前广告系列,深合并拟议变更,并针对 campaign.update 加 campaign.both 校验生效后的广告系列(仅状态更新同样适用)。若草稿 GET 返回 404,则从已发布广告系列创建草稿;若草稿已存在,先显示其当前待处理字段再合并。随后更新草稿而非已发布广告系列,再次获取草稿验证,并通过 {"action":"VALIDATE","draft_hierarchy_version":<version>} 报告为已暂存。除非用户另行要求发布并在 PUBLISH 请求前立即确认,否则不发布。
  • create-live 与 update-live <campaign_id>:仅在用户明确要求跳过草稿或对已发布实体立即/直接修改时,使用已发布的 POST /campaigns 或 PATCH /campaigns/{id} 端点。直接写入可能并非所有账户或凭证都可用。若直接写入返回 HTTP 403 或编辑权限错误,不要重试,也不要认定凭证完全只读;应说明对已发布广告系列的直接编辑被拒绝,并改为提供草稿工作流。

执行行为

  • 若 auto_execute 为 true,直接执行 curl 命令;若为 false,先向用户展示 curl 命令并确认后再执行。
  • 始终以可读格式显示 API 响应。
  • 解释响应体前,始终检查 curl 输出中的 HTTP_STATUS 行以判断成功或失败。
  • 出错(非 2xx 响应)时显示响应体中的错误消息。切勿自动重试 POST 或 PATCH 请求,因为尽管返回错误,它们可能已在服务端成功。
  • 草稿存在性检查返回 404 视为“无草稿存在”,这是调用 create-from-published 端点的唯一信号。其他错误必须显示并停止工作流。

适用场景与限制

适用于需要通过 Spotify Ads API 管理广告系列的用户,尤其是希望默认先以草稿方式暂存变更、避免直接修改线上实体的场景。限制方面,直接写入可能并非所有账户或凭证都支持;若被拒绝应改用草稿工作流。凭证与配置来自活动平台设置文件。