本文介绍如何通过利用市场营销 API 来使用图谱 API 创建潜客开发广告。
如要创建和发布潜客广告,您需要遵循以下步骤:
本指南假设您已经查看 Messenger 开放平台概览,并且已经实现发送和接收消息和通知所需的组件。
您需要具备以下各项:
ADVERTISE
任务的用户提供的公共主页访问口令如要为您的潜客开发广告创建广告系列,请向 /
act_AD_ACCOUNT_ID
/campaigns
端点发送 POST
请求,请求中加入以下参数:
access_token
,设置为您的公共主页访问口令buying_type
,设置为 AUCTION
name
,设置为您广告系列的名称objective
,设置为 OUTCOME_LEADS
status
,设置为 PAUSED
curl -X POST "https://graph.facebook.com/v21.0
/act_AD_ACCOUNT_ID/campaigns" \
-H "Content-Type: application/json" \
-d '{
"access_token":"YOUR_PAGE_ACCESS_TOKEN",
"buying_type":"AUCTION",
"name":"YOUR_LEADADS_CAMPAIGN_NAME",
"objective":"OUTCOME_LEADS",
"special_ad_categories":["NONE"],
"status":"PAUSED"
}'
若请求成功,您的应用将收到 JSON 对象,其中包含广告系列的编号。下一步创建广告组时,会用到此编号。
{ "id": "YOUR_CAMPAIGN_ID" }
访问广告系列参考文档 ,了解详情。
如要创建广告组,请向 act_ad_account_id/adsets
端点发出 POST
请求,其中 ad_account_id 是您 Meta 广告账户的编号。请求中必须包含:
access_token
,设置为您的公共主页访问口令bid_amount
,设置为您希望支付的最高金额billing_event
,设置为 IMPRESSIONS
campaign_id
,设置为第 1 步中获取的广告系列编号daily_budget
,设置为您希望每天花费的金额name
,设置为广告组的名称optimization_goal
,设置为 LEAD_GENERATION
或 QUALITY_LEAD
destination_type
,设置为 ON_AD
promoted_object
,设置为您商家的 Facebook 公共主页编号status
,设置为 PAUSED
注意:如果您已设置 CRM 数据源,并选择 QUALITY_LEAD
作为优化目标,您可以将 pixel_id
添加到 promoted_object
,以对质量作进一步优化。请注意,您不必同时提供 pixel_rule
与 pixel_id
。
curl -X POST "https://graph.facebook.com/v21.0
/act_AD_ACCOUNT_ID/adsets"
-H "Content-Type: application/json"
-d '{
"access_token":"YOUR_PAGE_ACCESS_TOKEN",
"bid_amount":"YOUR_BID_AMOUNT",
"billing_event":"IMPRESSIONS",
"campaign_id":"YOUR_CAMPAIGN_ID",
"daily_budget":"YOUR_DAILY_BUDGET",
"name:"YOUR_LEADADS_ADSET_NAME",
"optimization_goal":"LEAD_GENERATION",
"destination_type":"ON_AD",
"promoted_object":"YOUR_PAGE_ID",
"status":"PAUSED"
}'
若请求成功,您的应用会收到以下 JSON 响应,其中包含广告组的编号。
{ "id": "YOUR_ADSET_ID" }
访问广告组参考文档 ,了解详情。
如要创建潜客信息表单,请向 /
PAGE_ID
/leadgen_forms
端点发送 POST
请求,并在请求中加入以下参数:
access_token
,设置为您的公共主页访问口令name
,设置为表单的名称questions
,设置为对象数组,用于定义问题的类型及其在表单中的显示顺序,定义问题显示顺序需使用 key
参数
label
参数options
参数
curl -X POST "https://graph.facebook.com/v21.0
/PAGE_ID/leadgen_forms" \
-H "Content-Type: application/json" \
-d '{
"access_token": "YOUR_PAGE_ACCESS_TOKEN",
"name": "YOUR_LEADADS_FORM_NAME",
"questions": "[
{"type":"FULL_NAME", "key": "question1"},
{"type":"EMAIL", "key": "question2"},
{"type":"PHONE", "key": "question3"},
{"type":"CUSTOM", "key": "question4" "label": "Do you like rainbows?"}
{"type":"CUSTOM", "key": "question5" "label": "What is your favorite color?",
"options": [
{value: "Red", key: "key1"},
{value: "Green", key: "key2"},
{value: "Blue", key: "key2"},
]}
]"
}'
如需在 Messenger 对话里的广告 中使用表单,则表单必须包含以下各项:
questions.type
参数,只能将此参数设置为以下值之一:
|
|
|
如果表单中 questions.type
设置的值不在上述清单之列,则该表单不符合条件。
block_display_for_non_targeted_viewer
参数必须设置为 false
。这会将表单标记为公开分享。
curl -X POST "https://graph.facebook.com/v21.0
/PAGE_ID/leadgen_forms" \
-H "Content-Type: application/json" \
-d '{
"access_token": "YOUR_PAGE_ACCESS_TOKEN"
"block_display_for_non_targeted_viewer": "false"
"name": "LeadAds Form for Messenger Conversation Name"
"questions": "[
{"type":"FULL_NAME", "key": "question1"},
{"type":"EMAIL", "key": "question2"},
{"type":"PHONE", "key": "question3"},
{"type":"CUSTOM", "key": "question4" "label": "Do you like rainbows?"}
{"type":"CUSTOM", "key": "question5" "label": "What is your favorite color?",
"options": [
{value: "Red", key: "key1"},
{value: "Green", key: "key2"},
{value: "Blue", key: "key2"},
]}
]"
}'
除了[“创建潜客信息表单”部分]{#create-a-lead-form} 中介绍的一般问题类型以外,您还可以为以下用例添加更多专用的问题类型:
预约排程问题会显示日期和时间选择工具,并在问题下方列出限时选择和确认消息。
如要添加预约排程问题,请在添加 questions 对象时将 type
参数设置为 DATE_TIME
。或者,您也可根据需要在 inline_context
参数中添加直接显示在 questions 字段下方的确认消息,以提供更多上下文。
... "questions": "[ ... {"type": "DATE_TIME", "label": "Appointment time", "inline_context": "We will verify and call you to confirm your appointment." }, ...
身份证号码问题会根据用户的国家/地区显示问题,并会验证所输入编号的格式。您可对以下国家/地区显示此问题:
ID_AR_DNI
"}ID_CPF
ID_CL_RUT
ID_CO_CC
ID_EC_CI
ID_PE_DNI
如要添加身份证编号问题,请在添加 questions 对象时将 type
参数设置为用户的国家/地区类型。
DNI
,您的目标受众必须限制为秘鲁。只有符合该条件的广告可获得批准。... "questions": "[ ... {"type": "ID_AR_DNI" }, ...
店铺定位工具问题会根据用户输入的邮编显示店铺定位工具选择工具。
您需要设置店铺公共主页架构才能添加此问题。了解 Meta Business 帮助中心 – 在 Facebook 设置店铺公共主页架构
如要添加店铺定位工具问题,请在添加 questions 对象时将 type
参数设置为 STORE_LOOKUP
并将 context_provider_type
参数设置为 LOCATION_MANAGER
。
... "questions": "[ ... {"type": "STORE_LOOKUP", "label": "Which store do you want to visit?", "context_provider_type": "LOCATION_MANAGER" }, ...
通过添加以下一个或多个表单设置,可获得更优质的潜在客户:
为帮助您追踪潜在客户的来源,请在表单中添加 tracking_parameters
字段,并将其值设置为要追踪的参数键-值对清单。此类参数不会在您的广告中显示,但会允许 Meta 向您提供通过表单开发的潜在客户相关的元数据。
... "name": "YOUR_LEADADS_FORM_NAME", "tracking_parameters": {"your_tracking_parameter_name":"your_tracking_parameter_value"}, "questions": "[ ...
默认情况下,潜客广告会针对潜在客户数量进行优化,但是您可以通过创建表单筛选出意向更强的潜在客户。这些类型的潜在客户可以是可能对特定产品或服务(如在特许经销店预约试驾)感兴趣的用户。此表单设置在表单提交流程中添加了一个步骤,即:用户先审核并确认他们的答案,再提交表单。
如要在表单中添加此确认流程,在创建表单时,请添加 is_optimized_for_quality
参数,并将其设为 true
。
... "name": "YOUR_LEADADS_FORM_NAME", "is_optimized_for_quality": "true", "questions": "[ ...
如要筛选出自然潜在客户,在创建表单时,请添加 block_display_for_non_targeted_viewer
参数,并将其设为 true
。
... "name": "YOUR_LEADADS_FORM_NAME", "block_display_for_non_targeted_viewer": "true", "questions": "[ ...
请求成功后,您的应用将收到 JSON 响应,其中包含创建广告时要用到的表单的编号。
{ "id": "leadgen_form_id", }
如要创建带图片和表单的广告创意,请向 /act_AD_ACCOUNT_ID/adcreatives
端点发送 POST
请求,并在请求中加入以下参数:
access_token
,设置为您的公共主页访问口令object_story_spec
,其中应包含 link_data
对象,并在对象中加入以下参数:
call_to_action
,设置为一个包含 type
和 value
(设为您的潜客信息表单编号)的对象description
,设置为有关您广告创意的描述image_hash
,设置为要用于广告创意的某张图片的哈希值message
,设置为广告创意的文本page_id
,设置为您的 Facebook 公共主页编号注意:创建 link_data
时,与 link
字段关联的值只能为 https//fb.me/
。
link_data.call_to_action
参数必须设置为以下值之一:
APPLY_NOW
DOWNLOAD
GET_QUOTE
LEARN_MORE
SIGN_UP
SUBSCRIBE
curl -X POST "https://graph.facebook.com/LATEST-API-VERSION/act_AD_ACCOUNT_ID/adcreatives" \ -H "Content-Type: application/json" \ -d '{ "access_token":"YOUR_PAGE_ACCESS_TOKEN", "object_story_spec":{ "link_data": { "call_to_action": { "type":"SIGN_UP", "value":{ "lead_gen_form_id":"YOUR_FORM_ID" } }, "description": "YOUR_AD_CREATIVE_DESCRIPTION", "image_hash": "YOUR_IMAGE_HASH", "link": "http:\/\/fb.me\/", "message": "YOUR_AD_CREATIVE_MESSAGE" }, "page_id": "YOUR_PAGE_ID" }'
您可以使用同一 object_story_spec
创建轮播潜客广告,但要在 child_attachments
参数中定义一个附加的 lead_gen_form_id
字段。
您只能对所有子附件指定同一 <FORM_ID>
。
curl \ -F 'object_story_spec={ "page_id": "<PAGE_ID>", "link_data": { "message": "My description", "link": "http:\/\/www.google.com", "caption": "WWW.EXAMPLE.COM", "child_attachments": [ { "link": "http:\/\/www.google.com", "image_hash": "<IMAGE_HASH>", "call_to_action": {"type":"SIGN_UP","value":{"lead_gen_form_id":"<FORM_ID>"}} }, { "link": "http:\/\/www.google.com", "image_hash": "<IMAGE_HASH>", "call_to_action": {"type":"SIGN_UP","value":{"lead_gen_form_id":"<FORM_ID>"}} }, { "link": "http:\/\/www.google.com", "image_hash": "<IMAGE_HASH>", "call_to_action": {"type":"SIGN_UP","value":{"lead_gen_form_id":"<FORM_ID>"}} }, { "link": "http:\/\/www.google.com", "image_hash": "<IMAGE_HASH>", "call_to_action": {"type":"SIGN_UP","value":{"lead_gen_form_id":"<FORM_ID>"}} } ], "multi_share_optimized": true, "call_to_action": {"type":"SIGN_UP","value":{"lead_gen_form_id":"<FORM_ID>"}} } }' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/LATEST-API-VERSION/act_<AD_ACCOUNT_ID>/adcreatives
您还可以在潜客广告创意中使用视频来代替照片。首先,将视频上传到您的广告视频资料库,然后可以将其用在 object_story_spec
参数中:
curl -X POST \
-F 'object_story_spec={
"page_id": "<PAGE_ID>",
"video_data": {
"link_description": "try it out",
"image_url": "<IMAGE_URL>",
"video_id": "<VIDEO_ID>",
"call_to_action": {
"type": "SIGN_UP",
"value": {
"link": "http://fb.me/",
"lead_gen_form_id": "<FORM_ID>"
}
}
}
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/adcreatives
若请求成功,您的应用会收到以下 JSON 响应,其中包含广告创意的编号。
{ "id": "YOUR_AD_CREATIVE_ID" }
如要创建广告,您需要将广告创意与广告组关联。如要创建广告,请向 /act_AD_ACCOUNT_ID/ads
端点发送 POST
请求。请求中必须包含:
access_token
,设置为您的公共主页访问口令adset_id
(来自第 2 步)creative_id
(来自第 4 步)
curl -X POST "https://graph.facebook.com/v21.0
/act_AD_ACCOUNT_ID/ads"
-H "Content-Type: application/json"
-d '{
"access_token"="YOUR_PAGE_ACCESS_TOKEN",
"name":"YOUR_LEADADS_AD_NAME",
"adset_id"="YOUR_AD_SET_ID",
"creative"={ "creative_id": "YOUR_AD_CREATIVE_ID" },
"status"="PAUSED"
}'
若请求成功,您的应用会收到以下 JSON 响应,其中包含广告编号。
{ "id": "YOUR_AD_ID" }
获取表单清单和特定表单的问题清单,并将旧表单归档。
如要获取潜客开发广告表单清单,请向 /
page_id
/leadgen_forms
端点发送 GET
请求,请求中加入以下参数:
access_token
,设置为您的公共主页访问口令fields
(可选),设置为以逗号分隔的字段列表,用于获取名称和表单编号等特定信息
curl -X GET "https://graph.facebook.com/v21.0
/PAGE_ID/leadgen_forms
?fields=name,id
&access_token": "YOUR_PAGE_ACCESS_TOKEN"
请求成功后,您的应用将收到 JSON 响应,其中包含表单清单。您可以使用表单编号获取该表单的问题,或对表单归档。
只有包含特定要求的表单才符合 Messenger 对话发送条件。
如要获取符合条件的潜客信息表单清单,请向 /
page_id
/leadgen_forms
端点发送 GET
请求,并在请求中加入以下参数:
access_token
,设置为您的公共主页访问口令fields
,设置为 is_eligible_for_in_thread_forms
curl -X GET "https://graph.facebook.com/v21.0
/PAGE_ID/leadgen_forms
?fields=is_eligible_for_in_thread_forms
&access_token": "YOUR_PAGE_ACCESS_TOKEN"
请求成功后,您的应用将收到 JSON 响应,其中包含符合条件的表单的编号清单。
{ "data": [ { "id": "eligible_form_1_id" }, { "id": "eligible_form_2_id" } ], ... }
如要获取特定潜客开发广告表单的问题清单,请向 /
page_id
/
leadgen_form_id
端点发送 GET
请求,请求中加入以下参数:
access_token
,设置为您的公共主页访问口令fields
,设置为 questions
curl -X GET "https://graph.facebook.com/v21.0
/page_id/leadgen_form_id
?fields=questions
&access_token=page_access_token"
请求成功后,您的应用将收到 JSON 响应,其中包含问题清单。
您只能对潜客信息表单归档,因为不支持删除。表单经过归档后:
如要对特定潜客开发广告表单归档,请向 /
page_id
/
leadgen_form_id
端点发送 POST
请求,请求中加入以下参数:
access_token
,设置为您的公共主页访问口令status
,设置为 ARCHIVED
curl -X GET "https://graph.facebook.com/v21.0
/page_id/leadgen_form_id
?status=ARCHIVED
&access_token=page_access_token"
若请求成功,您的应用将收到 JSON 响应,其中包含 success
设置为 true
的对象。
您可以通过发送 status
设置为 ACTIVE
的请求,重新启用已归档的表单。
访问我们的其他指南,详细了解本文中的各个组件。