ActionKey / 路径 02

让 AI Agent 完成多步投放任务

给出目标,让 Agent 读取数据、选择工具、整理方案,再按约定执行。ActionKey 提供真实的资产操作能力,你的 Agent 运行环境负责推理、任务状态与执行控制。

先看流程,再按教程接入

播放 AI Agent 六步流程演示 ↗。可以随时暂停、逐步查看,或切换到另外两种方式比较;演示使用示意数据,不连接账户或执行请求。

01 / 先分清:你要一次对话,还是一项任务?

聊天调用从你当下的一句指令开始:查询一个账户、整理一份数据,或在确认后执行一次修改。Agent 调用从任务目标开始:Agent 规划多个步骤,观察工具结果,再决定下一步,直到产出结果或触发停止条件。

调用方式谁决定下一步适合什么需求
01 聊天调用你在对话中提出请求、补充信息和确认。临时查账户、查看计划、确认后调整一次预算。
02 AI Agent 调用Agent 根据目标、工具结果和任务边界选择步骤。核对多个账户、整理晨报、发现异常并提出处理方案。
03 开发自己的系统你编写的后端代码按业务规则执行;也可接入 AI。自己的投放后台、审批、队列、调度和执行记录。
分类看工作方式,不看 AI 品牌

Claude、Codex、Gemini 等工具都可能用于聊天或 Agent 任务。同一个环境也可以两种方式并用;Agent 任务不等于自动修改,模型和 Token 本身也不提供定时调度。

  1. 定义目标:第一项任务建议只读,例如“核对指定账户的投放数据,输出晨报和待确认建议”。
  2. 选定运行环境:需要能加载工具、执行调用并保留任务状态;持续执行还需要真实的调度器和后台运行能力。
  3. 明确范围:账户、计划 ID、工具白名单、数据口径、可执行动作与停止条件都要提前写清。

02 / 连接 ActionKey,并把权限边界落实到工具层

具备对应工具能力的 Agent 运行环境,可通过 MCP 发现和调用工具,也可以调用你封装的 REST 工具。连接方式取决于客户端的传输和认证支持;不能把任意模型 API 或网页聊天都当作 MCP 客户端。连接步骤见聊天调用与助手连接指南;自建工具的后端、认证和请求示例见开发自己的系统。

接口路线Agent 如何调用凭证与域名
ActionKey MCP / REST运行环境连接远程 MCP,或运行你的 REST 工具。MCP 为 https://baiz.ai/mcp,REST 为 https://baiz.ai/api/mcp;使用 ActionKey 服务凭证。
尤里改内部 Graph 中转将已有 Graph 查询、修改函数封装成 Agent 工具。内部中转 access_token 必须配合 facebook-graph.baiz.ai;查看中转路线。
Meta System UserAgent 调用你封装的 Meta Graph 工具。使用 graph.facebook.com。通过授权 App 生成 Token,并把广告户和主页都分配给对应 System User;查看授权准备。

三类凭证各自对应自己的接口,不能互换。Token 由运行环境的私密配置提供,不写入任务指令、不输出到聊天。Meta System User Token 不填入 ActionKey MCP / REST 认证头。

先检查真实工具能力
列出当前连接的查询、修改和创建工具,以及参数和实际返回字段。
先只启用晨报需要的查询工具。不要执行修改、创建或发布。
说明哪些工具支持指定统计时间范围;无法确认的字段标为未确认。
不要输出任何 Token。
提示词与执行限制一起设置

在任务说明中写“只读”后,还应由工具白名单或你自己的工具包装层限制可调用操作。模型提出的每次工具调用都先检查工具、目标资产和参数;它无法从任务文本获得超出真实授权的权限。

03 / 用一次只读任务验证链路

第一次先手动运行。验证的是“模型选工具 → 运行环境发请求 → ActionKey 返回真实数据 → Agent 整理结果”整条链路,而不是只看到已连接的图标。

只读验证任务
只读取【广告账户内部 ID】及其对应的【计划内部 ID】。
使用真实查询工具,返回账户名称、ActionKey 内部 ID、Facebook 广告账户 ID,以及计划关联关系。
继续读取该计划的可用投放指标,注明查询时间、统计时间范围和币种。
检查完整返回中的错误与缺失字段;未返回的值不补造。
如果目标匹配不唯一或没有权限,停止并说明需补充的信息。
本次不调整预算,不创建、发布、暂停或恢复广告。

ActionKey 的 list_ad_accounts、list_campaigns、get_campaign 和 list_campaign_ads 可以参与这条只读链路。以当前实际工具定义为准,内部 ID 与 Facebook ID 分列记录;不能把同名资产当成同一个对象。

如果使用 Meta System User 工具,分别查询目标广告账户和主页,确认同一个 System User 可访问两者。查询成功只证明该查询有权限,不能推出创建、发布或预算修改也一定可用。

保留证据,再判断是否成功

结果至少包含执行时间、目标 ID、工具名称、真实返回与错误摘要。部分数据请求可能在 errors 中报告失败,不能把“部分成功”包装成完整报告。

04 / 一个完整示例:只读投放晨报

目标是让 Agent 整理已授权资产的数据与待核对项。下面的多步流程可以手动触发,也可以在验证后交给运行环境的调度器。

  1. 核对资产:读取白名单内广告户和计划,确认内部 ID、Facebook ID、关联关系与币种。超出名单的对象不继续处理。
  2. 选择查询:按实际工具能力读取投放指标,处理分页,记录返回的统计范围和部分失败。
  3. 分析完整数据:按一致口径整理花费、购买数与 CPA;购买数为零或指标缺失时标记原因,不填入猜测值。
  4. 形成建议:指出哪些计划需要进一步核查,并写出依据;数据缺失的对象不生成修改结论。
  5. 交付结果:输出汇总、异常、缺失项及每项查询证据。本任务至此结束,不修改资产。
交给 Agent 的晨报任务
目标:为【广告账户内部 ID 列表】和【计划内部 ID 列表】整理只读投放晨报。
1. 先核对账户与计划关联关系,只处理清单内对象。
2. 按真实工具返回的数据整理花费、购买数、CPA、状态和错误。
3. 记录查询时间、统计范围、币种、分页是否完整和失败资产。
4. 比较时只使用口径一致的数据;购买数为零、数据缺失或范围不明时说明原因。
5. 输出汇总、异常证据、待补充信息和待人工确认的建议。
6. 不调用任何修改、创建、发布、暂停或恢复工具。
权限错误、目标不唯一或数据不足时停止对应对象,不猜测,也不扩大查询范围。
每天早上运行,不等于返回昨天的数据

调度时间与统计时间范围是两件事。当前公开的 list_campaign_ads 参数未声明按日期筛选,不能自行增加“昨天”参数或声称数据覆盖昨日。需要昨日数据时,先确认可用的报表接口与统计口径;否则明确报告实际返回范围或范围未确认。

输出至少包含这些内容

输出应提供的信息
运行概况执行时间、目标清单、已完成与失败对象。
数据汇总账户 / 计划 ID、统计范围、币种、真实指标及分页完整性。
待核对项错误、缺失字段、范围不明、同名对象、缺少权限。
建议与证据对应对象、判断依据、需要补充的条件;建议不代表已执行。

需要修改时,再加入确认与回读

先读取当前状态 → 展示对象、参数和影响范围 → 由人确认这一次变更 → 执行 → 回读真实结果。把“提出建议”与“已执行”分开记录。

预算工具实际作用于关联广告户

adjust_budget 用计划内部 ID 定位,但修改的是关联广告账户预算,可能影响同一账户其他投放。budget_field 为 limit_daily_amount 或 limit_amount,amount 单位为 USD。缺少实际账户预算、币种或换算规则时停止;接口返回 success 后仍需回读实际账户预算,无法核对时记录为未确认成功。

创建和发布同样需要核对广告户、主页、素材、预算与时间。发布可能异步处理或进入审核;超时后先查询对象和状态,避免重复创建或重复修改。

05 / 持续运行:由 Agent 运行环境管理任务

ActionKey 提供接口调用能力。定时执行、工具白名单、状态保存、确认、重试和通知都要由你的 Agent 运行环境或后端实现。普通会话退出后能否继续运行,取决于该环境的真实后台能力。

下面是任务设计示例,用于交给开发者或映射到你所选运行环境,不是 ActionKey 配置格式,复制后不会自动建立任务。

任务定义示例 · 需在运行环境实现
task: 只读投放晨报
trigger: 每天 09:00,Asia/Shanghai
scope: 经确认的广告账户与计划内部 ID 清单
tool_allowlist:
  - list_ad_accounts
  - list_campaigns
  - get_campaign
  - list_campaign_ads
execution: 只允许查询,校验每次工具调用的目标与参数
limits: 运行环境设定最大步骤数、最长运行时间与查询重试上限
stop_on: 权限失效、目标不唯一、超出资产范围、必需字段缺失
partial_failure: 标记失败对象,输出部分报告,不修改资产
output: 汇总、统计口径、缺失项、建议、真实调用记录
notification: 配置你自己的报告入口与发送权限
stop_method: 在运行环境关闭该任务并取消后续调度
  1. 先只读:手动验证目标、数据范围和输出,再建立调度,确认至少一次实际任务记录。
  2. 明确运行边界:设置工具与资产白名单、任务超时、最大步骤、查询重试上限以及权限失效的停止处理。
  3. 修改默认等确认:确认内容应固定对象、参数、影响范围和这一次动作;确认前数据已变化时重新读取并确认。
  4. 自动修改需额外定义:只有在真实运行环境实现并获授权后,才能按限定账户、动作、金额上限、频率和有效期执行;超出条件转人工确认。
  5. 处理不确定结果:修改超时、返回状态不明或回读不一致时停止写入,先查询核对;不直接重复请求。

任务创建完成后,应能查看下一次执行时间、任务状态、日志位置和停用入口。仅在聊天中写“每天运行”或“自动调预算”,不能代替这些配置。

停止调度会阻止后续任务,不会自动撤销已经发出的广告修改或发布请求。遇到运行超时、取消或连接中断时,先查询实际对象与任务记录,确认结果后再决定下一步。

常见问题

使用 Claude、Codex 或 Gemini,就算 Agent 调用吗?

取决于如何使用。逐次在对话中提出操作请求属于聊天调用;给出目标,让模型按工具结果推进多个步骤属于本页 Agent 工作流。同一种产品可以支持两者。

Agent 和自己开发的投放系统有什么关系?

Agent 是任务决策方式,你的系统是你控制的业务软件。系统可以按固定规则调用接口,也可以把部分分析与规划交给 Agent;审批、调度、状态与执行记录仍需落实到后端。见开发自己的系统。

可以把已有代码作为 Agent 的工具吗?

可以将查询和修改函数封装成具有明确参数与返回结构的工具,并在执行层检查资产和动作。ActionKey REST、内部 Graph 中转与 Meta System User 路线的凭证和域名不同,见凭证与接口参考。

System User Token 能看广告户,但不能发广告?

同时检查投放主页是否分配给生成 Token 的同一个 System User,以及 App、Token 和资产操作权限。广告户与主页都要授权,再按实际错误排查。

有了 Token,能无限循环执行吗?

Token 提供授权范围内的接口能力。任务运行需要模型、网络、运行环境和有效凭证;还应设置步骤、时间与重试上限。服务费为 ¥5,000 / 月,不限制请求数,广告消耗、模型与运行环境费用另行承担,接口本身的限制仍适用。

Agent 可以绕过 Facebook 风控吗?

不能。所有路线仍受 Facebook 权限、广告审核和账户风控约束,代理不会清除已有资产关联。