通过 Plai API 创建和管理 Meta(Facebook 和 Instagram)广告系列、潜在客户表单、受众、追踪像素和产品目录。还可连接 Facebook/Inst...
Meta Ads通过 Plai.是一项面向实际任务的技能,主要用于Manage Meta( 脸书 & Instagram) 通过 Plai API...;Setup. 要求两个环境变量:.;
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。
执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
通过 Plai API 管理 Meta(Facebook 与 Instagram)广告。
需设置以下两个环境变量:
PLAI_API_KEY — 您的 Plai API 密钥(从 Plai 账户控制台获取)PLAI_USER_ID — 您的 Plai 用户 ID所有操作均通过以下命令执行:
node scripts/plai-meta.js[options]
选项以 --key value 形式传入。JSON 数组或对象值必须作为带引号的 JSON 字符串传入,例如:--locations '[{"id":"2537","type":"city","countryCode":"AE"}]'。
此步骤必须在执行任何广告操作前完成。 若广告工具返回 "User has no connected Facebook account" 或类似提示,请生成账户连接链接并提供给用户,以便其完成 OAuth 流程。
# 连接 Facebook / Instagram Ads 账户 node scripts/plai-meta.js create-connection-link --platform FACEBOOK # 连接 Google Ads 账户 node scripts/plai-meta.js create-connection-link --platform GOOGLE # 自定义连接完成后的跳转地址 node scripts/plai-meta.js create-connection-link --platform FACEBOOK --redirectUri "https://yourapp.com/connected"
必需参数:--platform(可选值:FACEBOOK 或 GOOGLE)
可选参数:--redirectUri — 用户完成 OAuth 后跳转的目标 URL
命令将返回一个 link,用户需在浏览器中打开该链接以完成账户连接。请直接将该链接提供给用户;切勿尝试自动打开。
node scripts/plai-meta.js list-campaigns
node scripts/plai-meta.js create-campaign
--campaignName "My Campaign"
--campaignType LEAD_GENERATION
--budget 50
--url "https://example.com"
--locations '[{"id":"2537","type":"city","countryCode":"AE"}]'
--primaryText '[{"text":"Join us today!"}]'
--images '["https://example.com/image.jpg"]'
--leadsFormId "1234567890"
必需参数:campaignName、campaignType、budget、locations
按类型额外必需参数:
LEAD_GENERATION → 还需提供 --leadsFormIdCONVERSIONS / OUTCOME_SALES → 还需提供 --pixelId 和 --conversionGoal可选参数:--url、--primaryText、--headlines、--images、--videos、--interests、--gender("1" 表示男性 / "2" 表示女性)、--minAge、--maxAge、--targetLocales、--audienceId
注意事项:
--images 接收一个 URL 字符串组成的 JSON 数组,系统会自动将其转换为 {url} 对象格式。--minAge 与 --maxAge 必须成对提供。callToAction 固定为 LEARN_MORE(由系统自动设定)。campaignType 可选值:LEAD_GENERATION | LINK_CLICKS | CONVERSIONS | OUTCOME_SALES
通过即时通讯应用(Messenger、Instagram DM、WhatsApp)引导用户开启对话。
node scripts/plai-meta.js create-message-engagement
--campaignName "Chat with Us"
--budget 50
--url "https://example.com"
--locations '[{"id":"2537","type":"city","countryCode":"AE"}]'
--messagingApps '["MESSENGER","WHATSAPP"]'
--multipleCreatives '[{
"url": "https://example.com",
"primaryText": "Chat with us today!",
"greetingText": "Hi {{user_first_name}}! How can we help you?",
"conversations": [{"title": "Learn more about our products"},{"title": "Get a quote"}],
"image": "https://example.com/image.jpg"
}]'
必需参数:campaignName、budget、url、locations、messagingApps、multipleCreatives
messagingApps — 值为包含以下项之一或多个的 JSON 数组:MESSENGER | INSTAGRAM | WHATSAPP — 务必向用户明确询问,不可设默认值。
multipleCreatives — 包含 1–10 个创意对象的 JSON 数组。每个创意对象需满足:
url、primaryText、greetingText、conversations(由 {title} 对象构成的数组)headlines、phoneNumber、image(URL)、video(格式为 {video_id, thumbnail_url})其他可选广告系列参数:--interests、--gender、--minAge、--maxAge、--targetLocales、--audienceId
node scripts/plai-meta.js get-insights --campaignId "123456789" --startDate "2024-01-01" --endDate "2024-01-31"
node scripts/plai-meta.js update-status --campaignId "123456789" --status ACTIVE node scripts/plai-meta.js update-status --campaignId "123456789" --status PAUSED node scripts/plai-meta.js update-status --campaignId "123456789" --status DELETE
status 可选值:ACTIVE | PAUSED | DELETE
node scripts/plai-meta.js update-budget --campaignId "123456789" --amount 100
创建线索表单前必须执行此操作。若 TOS 尚未接受,用户需先访问 https://www.facebook.com/ads/leadgen/tos 完成签署。
node scripts/plai-meta.js check-leadform-tos
node scripts/plai-meta.js list-leadforms
所有字段值均需由用户提供 — 不得自行假设或伪造。
node scripts/plai-meta.js create-leadform --leadsFormName "My Lead Form" --privacyPolicyUrl "https://example.com/privacy" --privacyPolicyName "Privacy Policy" --website_url "https://example.com/thank-you" --questionPageCustomHeadline "Tell us about yourself"
node scripts/plai-meta.js search-locations --query "Dubai" node scripts/plai-meta.js search-locations --query "United States"
返回形如 {id, type, countryCode} 的对象。请将结果直接传入 create-campaign --locations。
node scripts/plai-meta.js search-interests --query "fitness" node scripts/plai-meta.js search-interests --query "real estate" --specialAdCategories '["HOUSING"]' --specialAdCountries '["US","GB"]'
specialAdCategories 可选值:HOUSING | FINANCIAL_PRODUCTS_SERVICES | EMPLOYMENT
返回形如 {id, name, type} 的对象。请将结果传入 create-campaign --interests。
node scripts/plai-meta.js get-locales
返回数字型语言环境 ID。请以 --targetLocales '[65,24]' 格式传入 create-campaign。
node scripts/plai-meta.js list-audiences
node scripts/plai-meta.js create-page-audience --name "FB Page Engagers" --type FACEBOOK node scripts/plai-meta.js create-page-audience --name "IG Engagers" --type INSTAGRAM
所有字段均为 必需 — 请明确向用户逐一索取。
node scripts/plai-meta.js create-leadform-audience --name "Lead Form Openers" --description "People who opened our summer campaign form" --leadFormIds '["12345","67890"]' --type open
type 可选值:open | close | submit
node scripts/plai-meta.js create-lookalike --sourceType AUDIENCE --sourceId "120231334546180123" --audienceName "Lookalike - US" --countryCode US
sourceType 可选值:AUDIENCE(需配合 --sourceId 使用)| PAGE(无需 sourceId)
node scripts/plai-meta.js list-pixels
node scripts/plai-meta.js list-conversions --pixelId "123456789" --campaignType CONVERSIONS
campaignType 可选值:CONVERSIONS | OUTCOME_SALES
node scripts/plai-meta.js list-media --type IMAGE node scripts/plai-meta.js list-media --type VIDEO
视频返回 {video_id, thumbnail_url} 结构。可在 create-campaign --videos 中使用。
node scripts/plai-meta.js list-fb-media --type IMAGE
node scripts/plai-meta.js list-ig-media
node scripts/plai-meta.js upload-video --videoUrl "https://example.com/video.mp4"
返回 videoId。随后轮询查询其状态直至就绪:
node scripts/plai-meta.js get-video-info --videoId "123456789"
持续轮询直到 status 变为 READY,然后将 video_id 与 thumbnail_url 用于 create-campaign --videos。
node scripts/plai-meta.js list-catalogs
node scripts/plai-meta.js create-catalog --name "My Store Catalog"
node scripts/plai-meta.js create-catalog-feed --catalogId "123456" --name "Daily Feed" --fileUrl "https://example.com/products.csv" --currencyCode USD --timezone "America/New_York" --interval DAILY
node scripts/plai-meta.js get-catalog-feed --catalogFeedId "123456"
node scripts/plai-meta.js list-catalog-products --productSetId "123456"
node scripts/plai-meta.js create-product-set --catalogId "123456" --name "Summer Collection" --productIds '["prod1","prod2","prod3"]'
create-connection-link --platform FACEBOOK,并将返回的链接提供给用户。search-locations 获取有效的地区 ID — 切勿猜测 ID。search-interests。LEAD_GENERATION 类型:先运行 check-leadform-tos,再运行 list-leadforms 或 create-leadform。CONVERSIONS/OUTCOME_SALES 类型:先运行 list-pixels,再运行 list-conversions。list-media。| 目标 | 命令 | campaignType |
|---|---|---|
| 通过表单收集线索 | create-campaign |
LEAD_GENERATION |
| 为网站引流 | create-campaign |
LINK_CLICKS |
| 优化至像素事件 | create-campaign |
CONVERSIONS |
| 优化至购买行为 | create-campaign |
OUTCOME_SALES |
| 引导即时通讯对话 | create-message-engagement |
OUTCOME_ENGAGEMENT |
广告系列默认以 暂停 状态创建。待用户确认准备上线后,请执行:
node scripts/plai-meta.js update-status --campaignId "" --status ACTIVE
| 错误信息 | 原因 | 解决方法 |
|---|---|---|
Unauthorized |
PLAI_API_KEY 无效 |
请检查 Plai 控制台中配置的密钥 |
User has no connected Facebook account |
Plai 中未绑定 Meta 账户 | 运行 create-connection-link --platform FACEBOOK 并将链接提供给用户 |
User has no connected Google account |
未绑定 Google Ads 账户 | 运行 create-connection-link --platform GOOGLE 并将链接提供给用户 |
| TOS not accepted | 线索广告服务条款(TOS)尚未签署 | 用户需访问 facebook.com/ads/leadgen/tos 完成签署 |
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.1万人学习
共49课时 | 82.6万人学习