Messenger 直达广告

本指南介绍如何使用市场营销 API 创建和发布 Messenger 直达广告。

如果您想使用广告管理工具为潜客广告创建广告系列,请访问 Meta Business 帮助中心

Messenger 直达广告可将点击广告的用户直接引导至 Messenger 中并与您的商家开展对话。商家可以使用这些广告大规模覆盖用户,并提供出色的个性化服务。

Messenger 直达广告支持包含图片、视频、轮播或幻灯片的广告。您还可以在广告中加入通话提示。

如果您有兴趣创建将用户传送至 Instagram 聊天或 WhatsApp 聊天的广告,请参阅 Instagram 直达广告WhatsApp 直达广告,获取指南。您还可以创建可选择用户最有可能回复的目标位置的广告。请参阅多目标位置直达广告,了解详情。

广告创建流程概览

创建和发布广告的步骤如下:

  1. 创建广告系列
  2. 创建广告组,将广告与广告系列关联
  3. 为您希望投放的 Messenger 广告类型创建广告创意
  4. 将广告创意与广告组关联,以创建广告
  5. 将广告发布到 Facebook、Instagram 和 Messenger

前期准备

本指南假设您已具备以下条件:

如要向本指南中的所有端点成功发送调用,您将需要:

  • 由可在公共主页上执行 ADVERTIZE 任务的用户请求的公共主页访问口令
  • 必须向使用您应用的用户授予以下权限:
    • ads_management
    • pages_manage_ads
    • pages_read_engagement
    • pages_show_list

第 1 步:创建广告系列

如要创建广告系列,请向 act_ad_account_id/campaigns 端点发出 POST 请求,其中 ad_account_id 是您 Meta 广告账户的编号。请求中必须包含:

  • access_token
  • buying_type
  • name
  • objective – 对于潜客广告,设为 OUTCOME_TRAFFICOUTCOME_LEADS
  • special_ad_categories
  • status

广告系列快速参考

请求示例

为方便阅读,示例格式已经过调整。请将粗体、斜体值(如 ad_account_id)替换为您的值。
curl -X POST "https://graph.facebook.com/v20.0/act_ad_account_id/campaigns" \
     -H "Content-Type: application/json" \
     -d '{
           "access_token":"Your_page_access_token",
           "buying_type":"AUCTION",
           "name":"Messenger_ad_campaign_name",
           "objective":"OUTCOME_TRAFFIC",
           "status":"PAUSED",
           "special_ad_categories":["NONE"],
         }'

若请求成功,您的应用会收到 JSON 响应,其中包含广告系列的编号。

{
  "id": "campaign_id"
}

第 2 步:创建广告组

如要创建广告组,请向 act_ad_account_id/adsets 端点发出 POST 请求,其中 ad_account_id 是您 Meta 广告账户的编号。请求中必须包含:

  • access_token
  • bid_amount
  • billing_event – 设为 IMPRESSIONS
  • campaign_id
  • daily_budget
  • destination_type – 设为 MESSENGER
  • name
  • optimization_goal – 设为 CONVERSATIONSIMPRESSIONS;对于潜客广告,设为 LEAD_GENERATIONQUALITY_LEAD
  • promoted_object – 设为商家的 Facebook 公共主页编号。
  • status,设置为 PAUSED
  • targeting

广告组快速参考

请求示例

为方便阅读,示例格式已经过调整。请将粗体、斜体值(如 ad_account_id)替换为您的值。
curl -X POST "https://graph.facebook.com/v20.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",
           "destination_type":"MESSENGER",
           "name:"Your_messenger_adset_name",
           "optimization_goal:IMPRESSIONS",
           "status:PAUSED",
           "targeting":{ 
             "geo_locations": { "countries":["US","CA"] },
             "device_platforms": ["mobile", "desktop"],
             "publisher_platforms": ["messenger"] 
           } 
         }'

若请求成功,您的应用会收到以下 JSON 响应,其中包含广告组的编号。

{
  "id": "adset_id"
}

第 3 步:创建广告创意

通过广告创意,您可以为广告添加素材。

限制

  • 不支持使用 object_story_id 创建的广告
  • 用户必须在设备上安装 Messenger,才能看到您的广告
  • 不支持右侧版位

如要创建广告创意,请向 /act_ad_account_id/adcreatives 端点发出 POST 请求,其中 ad_account_id 是您 Meta 广告账户的编号。请求中必须包含:

  • access_token
  • name
  • object_story_spec – 必要项
  • privacy_url – 对潜客广告而言,此为必要项
  • standard_enhancements.enroll_status – 对符合标准美化使用资格的广告创意而言,此为必要项。

顶层广告创意参数快速参考

Messenger 直达广告

如要为 Messenger 直达广告创建广告创意,请向 /act_ad_account_id/adcreatives 端点发出 POST 请求,其中 ad_account_id 是您 Meta 广告账户的编号。请求中必须包含:

  • access_token
  • name
  • object_story_spec – 其中包含定义媒体类型的 *_data 对象

图片广告快速参考

图片广告请求示例

为方便阅读,示例格式已经过调整。请将粗体、斜体值(如 page_access_token)替换为您的值。
curl -X POST "https://graph.facebook.com/v20.0/act_ad_account_id/adcreatives"
     -H "Content-Type: application/json" 
     -d '{
           "access_token":"page_access_token",
           "name":"Your_CTM_image_ad_name",
           "object_story_spec":{
             "page_id": "your_page_id",
             "link_data": { 
               "page_welcome_message": "Your_welcome_message",
               "image_hash": "Your_image_hash", 
               "link": "Your_image_URL", 
               "call_to_action": {
                 "type":"LEARN_MORE",
                 "value":{ "app_destination":"MESSENGER" }
               }   
             }
           }
         }'          

Messenger 直达视频广告快速参考

视频广告请求示例

为方便阅读,示例格式已经过调整。请将粗体、斜体值(如 page_access_token)替换为您的值。
curl -X POST "https://graph.facebook.com/v20.0/act_ad_account_id/adcreatives"
     -H "Content-Type: application/json" 
     -d '{
           "access_token": "page_access_token",
           "name": "Your_CTM_image_ad_name",
           "object_story_spec": {
             "page_id": "your_page_id",
             "video_data": { 
               "call_to_action": {
                 "type": "LEARN_MORE",
                 "value": { "app_destination": "MESSENGER" }
               },
               "link_description": "Your_link_description",
               "image_url": "Your_thumbnail_URL", 
               "page_welcome_message": "Your_welcome_text",
               "video_id": "video_id"
             } 
           }
         }'

使用合作伙伴应用上配置的消息流程的广告

为方便阅读,示例格式已经过调整。请将粗体、斜体值(如 page_access_token)替换为您的值。
curl -X POST "https://graph.facebook.com/v20.0/act_ad_account_id/adcreatives"
     -H "Content-Type: application/json" 
     -d '{
           "access_token": "page_access_token",
           "name": "Your_CTM_image_ad_name",
           "object_story_spec": {
             "page_id": "your_page_id",
             "link_data": { 
               "image_hash": "your_image_hash",
               "link": "your_image_URL",
               "call_to_action": {
                 "type": "MESSAGE_PAGE",
                 "value": { "app_destination":"MESSENGER" }
               }   
             }
           },
           "asset_feed_spec": {
             "additional_data": {
               "partner_app_welcome_message_flow_id": "FLOW-ID"
             }
           }
         }'

如需进一步了解消息应用流程,请参阅 Messenger 开放平台文档中的欢迎消息流程

填写公共主页的欢迎消息

客户看到的默认消息是“您好!我能获得与这个公共主页相关的更多信息吗?”。通过在 object_story_spec 下的 page_welcome_message 字段中定制广告的问候消息、开场白和自动填写消息,您可以为 Messenger 直达广告创建更细化的专属用户体验。

有关开场白的详情,请参阅 ice_breakers 参考文档

限制

  • 开场白的标题不能超过 80 个字符。
  • 对开场白的回复不能超过 300 个字符。
  • 消息文本不能超过 300 个字符。

示例

创建 page_welcome_message 对象,以添加带问候消息的开场白。

"page_welcome_message": {
  "type":"VISUAL_EDITOR",
  "version":2,
  "landing_screen_type":"welcome_message",
  "media_type":"text",
  "text_format":{
    "customer_action_type":"ice_breakers",
    "message":{
      "ice_breakers":[
        {"title":"Can I make a purchase?","response":"This is a response 1"},
        {"title":"Can I see a menu?", "response":"This is a response 2"},
        {"title":"Where are you located?", "response":"This is a response 3"}],
      "quick_replies":[],
      "text":"Hi {{user_first_name}}! Please let us know how we can help you."}
  },
  "user_edit":false,
  "surface":"visual_editor_new"
}

订阅直达广告

订阅直达广告 (CTS) 是一种 Messenger 直达广告,其中 object_story_spec.page_welcome_message 是包含通知消息模板的一个对象数组。用户点击广告中的获取消息按钮,即表示其同意接收商家的营销消息。

如要为订阅直达广告创建广告创意,请向 /act_ad_account_id/adcreatives 端点发出 POST 请求,其中 ad_account_id 是您 Meta 广告账户的编号。请求中必须包含:

  • access_token
  • name
  • object_story_spec,其中包含:
    • *_data 对象 – 用于定义媒体类型
    • page_welcome_message 数组 – 用于定义营销消息订阅请求。必须包含 landing_screen_type(设为 marketing_messages)和消息附件的 payload.template_type(设为 nofitication_messages

图片广告请求示例

为方便阅读,示例格式已经过调整。请将粗体、斜体值(如 ad_account_id)替换为您的值。
curl -X POST "https://graph.facebook.com/v20.0/act_ad_account_id/adcreatives"
     -H "Content-Type: application/json" 
     -d '{
           "access_token": "page_access_token",
           "name": "Your_CTS_image_ad_name",
           "object_story_spec": {
             "page_id": "your_page_id",
             "link_data": { 
               "image_hash": "Your_image_hash", 
               "link": "Your_image_URL", 
               "call_to_action": {
                 "type": "LEARN_MORE",
                 "value":{ "app_destination": "MESSENGER" }
               }
               "page_welcome_message": "{
                 "landing_screen_type": "marketing_messages",
                 "media_type": "image",
                 "image_format": {
                   "customer_action_type": "buttons",
                   "message": {
                     "text": "Your_welcome_message",
                     "attachment": {
                       "type": "template",
                       "payload":{
                         "template_type":"notification_messages",
                         "elements": [{
                             "title": "Your_CTS_title",
                             "subtitle": "Your_CTS_subtitle",
                             "image_url": "Your_image_URL",
                             "app_id": "Your_Meta_app_ID",
                             "buttons": [{
                               "type": "postback",
                               "payload": "Data_to_include_in_webhook_notification",
                               "title": "Get messages"
                             }]
                         }]
                       }
                     }
                   } 
                 }
               }"
             }
           }
         }'          

对话内潜客广告

通过 Messenger 潜客广告,您可以通过自动聊天模板在 Messenger 中开发潜在客户。您可以直接在自己首选的消息平台上向对您业务感兴趣的用户提出具体问题,收集客户偏好,并提出自定义问题,从而优先识别出最优质的潜在客户。

消息模板要求

  • 一条欢迎消息,在用户轻触您的广告后会为用户送上贴心问候,并让他们了解商家所能提供的产品或服务
  • 一系列问题,可收集有关某用户是否为潜在客户的信息。可包括兴趣、位置和联系方式(如邮箱和手机号)等问题。
  • 一条确认消息,用于感谢用户回答问题,并让用户了解提问之后的事宜。您可以在广告管理工具、您公共主页的发布工具或 CRM 中找到新潜在客户。
  • 隐私权政策,因要收集客户信息而必须提供。

限制

  • 消息模板一旦创建,便无法编辑或删除

创建消息模板

如要创建消息模板,请向 /page_id/messenger_lead_forms 端点发出 POST 请求,其中 page_id 是您商家的 Facebook 公共主页编号。请求中必须包含:

  • access_token
  • privacy_url
  • step_list 数组 – 其中包含 messagereply_typestep_idstep_type
  • template_name
  • reminder_text

以下消息模板中包含您的 template_nameprivacy_urlstep_list(其中,step_id: 0 包含欢迎消息,step_id: 14 包含多个问题,step_id: 5 包含确认消息,step_id: 6 则包含可筛选出不符合条件的潜在客户的消息)。

消息模板快速参考

潜在客户消息模板示例

为方便阅读,示例格式已经过调整。请将粗体、斜体值(如 page_access_token)替换为您的值。
curl -X POST "https://graph.facebook.com/v20.0/your_page_ID/messenger_lead_forms"
     -H "Content-Type: application/json" 
     -d '{
           "access_token": "Your_page_access_token",
           "privacy_url": "Your_privacy_policy_URL",
           "reminder_text": "Your_reminder_text",
           "template_name": "Your_template_name",
           "step_list": [
             {
               "step_id": "0",
               "message": "Your_welcome_message",
               "step_type": "INTRO",
               "reply_type": "NONE",
               "next_step_ids": "1"
             },
             {
               "step_id": "1"
               "message": "Are_you_interested_in_our_products_or_services?",
               "step_type": "QUESTION",
               "reply_type": "QUICK_REPLIES",
               "answers": ["Yes", "Not now", "Maybe"],
               "next_step_ids": [2,6,2],
               "allow_to_skip": false,
               "answer_validation_enabled": true
             },
             {
               "step_id": "2",
               "message": "What city do you live in?",
               "step_type": "QUESTION",
               "reply_type": "PREFILL",
               "prefill_type": "CITY",
               "next_step_ids": "3",
               "allow_to_skip": true
             },
             {
               "step_id": "3",
               "message": "What is your phone number?",
               "step_type": "QUESTION",
               "reply_type": "PREFILL",
               "prefill_type": "PHONE",
               "next_step_ids": "4",
               "allow_to_skip": false,
               "answer_validation_enabled": true
             },
             {
               "step_id": "4",
               "message": "What is your email address?",
               "step_type": "QUESTION",
               "reply_type": "PREFILL",
               "prefill_type": "EMAIL",
               "next_step_ids": "5",
               "allow_to_skip": false,
               "answer_validation_enabled": true
             },
             {
               "step_id": "5",
               "message": "Your_confirmation_message",
               "step_type": "CONFIRMATION",
               "reply_type": "NONE"
             },
             {
               "step_id": "6",
               "message": "Your_disqualification_message",
               "step_type": "DISQUALIFY",
               "reply_type": "NONE"
             }
           ]
        }'

若请求成功,您的应用将收到 JSON 对象,其中包含模板的编号。

{
  "id": "your_messenger_lead_gen_template_id"
}

作为该流程的一部分,系统还将创建 fblead_form,并将其与消息模板关联。

获取表单清单

如要获取 Messenger 潜客开发广告表单模板清单,您可以向 /page_id/messenger_lead_forms 端点发出 GET 请求。您还可以通过向 /Your_messenger_lead_gen_template_id 端点发送 GET 请求,获取有关特定模板的信息。

广告创意示例

如要为潜客广告创建广告创意,请向 /act_ad_account_id/adcreatives 端点发送 POST 请求,其中 ad_account_id 是您 Meta 广告账户的编号。请求中必须包含:

  • access_token
  • name
  • object_story_spec – 其中包含一个 *_data 对象,该对象用于定义媒体类型(图片或视频)并包含以下参数:
    • *_data.page_welcome_message 参数(设为键-值对)
      • ctm_lead_gen_template_id:Your_messenger_lead_gen_template_id

Messenger 图片潜客广告的广告创意示例

为方便阅读,示例格式已经过调整。请将粗体、斜体值(如 ad_account_id)替换为您的值。
curl -X POST "https://graph.facebook.com/v20.0/act_AD_ACCOUNT_ID/adcreatives"
    -H "Content-Type: application/json" 
    -d '{
          "access_token": "Your_page_access_token",
          "degrees_of_freedom_spec": {
            "creative_features_spec": {
              "standard_enhancements": { "enroll_status": "OPT_IN" }
            }
          },
          "name": "Your_lead_ad_image_ad_name",
          "object_story_spec": {
            "page_id": "Your_page_id",
            "link_data": {
              "call_to_action": {
                "type": "MESSAGE_PAGE",
                "value": { "app_destination": "MESSENGER" }
              },
              "description": "Sample_description",
              "image_hash": "Your_image_hash", 
              "message": "Sample_message_for_Creative",
              "page_welcome_message": "{ "ctm_lead_gen_template_id": "Your_messenger_lead_gen_template_id" }"
            }
          }
       }' 

Messenger 视频潜客广告的广告创意示例

为方便阅读,示例格式已经过调整。请将粗体、斜体值(如 ad_account_id)替换为您的值。
curl -X POST "https://graph.facebook.com/v20.0/act_AD_ACCOUNT_ID/adcreatives"
    -H "Content-Type: application/json" 
    -d '{
          "access_token": "Your_page_access_token",
          "degrees_of_freedom_spec": {
            "creative_features_spec": {
              "standard_enhancements": { "enroll_status": "OPT_IN" }
            }
          },
          "name": "Your_lead_ad_video_ad_name",
          "object_story_spec": {
            "page_id": "your_page_id",
            "video_data": { 
              "call_to_action": {
                "type": "MESSAGE_PAGE",
                "value":{ "app_destination": "MESSENGER" }
              },
              "image_url": "Your_thumbnail_url", 
              "link_description": "Your_link_description ",
              "message": "Sample message for Creative ",
              "page_welcome_message": "{ "ctm_lead_gen_template_id": "Your_messenger_lead_gen_template_id" }",
              "video_id": "Your_video_id" 
            }
          }
       }' 

使用 Instagram 内容创建广告创意

Instagram 帖子

请参考将帖子用作 Instagram 广告,了解详情。

curl -X POST \
  -F 'name=Sample ad creative from Instagram post' \
  -F 'object_id=<PAGE_ID>' \
  -F 'instagram_user_id=<INSTAGRAM_USER_ID>' \
  -F 'source_instagram_media_id=<INSTAGRAM_POST_ID>' \
  -F 'call_to_action={
       "type": "INSTAGRAM_MESSAGE",
       "value": {
         "link": "https://www.instagram.com"
       }
     }' \ 
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v20.0/act_<AD_ACCOUNT_ID>/adcreatives

Instagram 图片

curl -X POST \
  -F 'name=Sample ad creative from Instagram image' \
  -F 'object_story_spec={
       "page_id": "<PAGE_ID>",
       "instagram_actor_id": "<INSTAGRAM_ACTOR_ID>",
       "link_data": {
         "message": "<AD_PRIMARY_TEXT>",
         "picture": "<IMAGE_URL>"
         "page_welcome_message": "<PAGE_WELCOME_MESSAGE>",
         "call_to_action": {
           "type": "INSTAGRAM_MESSAGE",
           "value": {
             "app_destination": "INSTAGRAM_DIRECT"
           }
         }
       }
     }' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v20.0/act_<AD_ACCOUNT_ID>/adcreatives

使用 Facebook 内容创建广告创意

请参阅将帖子用作 Instagram 广告:Facebook 帖子,了解详情。

curl -i -X POST \
  "https://graph.facebook.com/v20.0/act_<AD_ACCOUNT>/adcreatives
  ?object_story_id=<postOwnerID_postID>
  &instagram_actor_id=<IG_USER_ID>
  &call_to_action="{'type':MESSAGE_PAGE,'value':{'app_destination':'MESSENGER'}}"
  &access_token=<ACCESS_TOKEN>"

在上方调用中,object_story_id 是帖子编号,采用了 postOwnerID_postID 格式;instagram_actor_id 是绑定了公共主页的 Instagram 账户编号或由公共主页提供支持的 Instagram 账户编号。详情请参阅使用公共主页设置 Instagram 账户

第 4 步:创建广告

如要创建广告,您需要将广告创意与广告组关联起来。如要创建广告,请向 /act_ad_account_id/ads 端点发出 POST 请求,其中 ad_account_id 是您 Meta 广告账户的编号。您的请求必须包含:

广告账户广告快速参考

包含创意的广告请求示例

为方便阅读,示例格式已经过调整。请将粗体、斜体值(如 ad_account_id)替换为您的值。
curl -X POST "https://graph.facebook.com/v20.0/act_ad_account_id/ads"
     -H "Content-Type: application/json" 
     -d '{
           "access_token": "Your_page_access_token",
           "adset_id": "Your_ad_set_id",
           "creative": { "creative_id": "Your_ad_creative_id" },
           "status": "PAUSED"
         }'

若请求成功,您的应用会收到以下 JSON 响应,其中包含广告编号。

{
  "id": "ad_id"
}

行动号召

创建广告时,您还可以设置行动号召。

"call_to_action": {
  "value": {"app_destination":"MESSENGER"},
  "type": "MESSAGE_PAGE"
}

第 5 步:发布广告

广告管理工具 中验证您的广告是否存在。点击右上角的检查并发布按钮。依次选择您的广告系列、该广告系列的广告组和所需广告。

您可以从广告管理工具发布广告,也可以使用 API 发布广告。如要使用 API 发布广告,请重复执行第 4 步,将 status 参数设为 ACTIVE

您的广告需要经过 Meta 的审核,因而该广告的状态将是 PENDING_REVIEW。获批后,该状态将变为 ACTIVE,然后系统便会投放您的广告。

Messenger 直达广告高级元素

您可以创建包含多个消息元素的消息,如通话提示或多个模板。通过将 *_data.page_welcome_message 值设为一组对象(而不是一个字符串值),添加这些元素。

公共主页欢迎消息数组快速参考

添加通话提示

您可以通过将 *_data.page_welcome_message 的值设为定义多个通话提示元素的一个对象数组,在自己的 Messenger 直达广告中添加通话提示。将 landing_screen_type 参数设为 call_prompt,将 media_type 设为 text,将包含 texttext_format.message 对象设为您的欢迎消息文本,并将 call_prompt_data.call_prompt_message 设为有关致电您商家的提示。

为方便阅读,示例格式已经过调整。请将粗体、斜体值(如 page_access_token)替换为您的值。
... 
      "page_welcome_message": "[
        {
          "landing_screen_type": "call_prompt",
          "media_type": "text",
          "text_format": {
            "message": {
              "text": "Your_welcome_message",
              "call_prompt_data": { 
                "call_prompt_message": "Your_call_prompt_message"
              }
            }
          },
        }
      ]"
...

添加一个或多个模板

如要创建包含多个模板的广告,请将 *_data.page_welcome_message 参数设为包含消息模板 的一个数组。以下示例为某个快速回复添加了一个模板。

为方便阅读,示例格式已经过调整。请将粗体、斜体值(如 page_access_token)替换为您的值。
... 
      "page_welcome_message": "[{
        'message': {
          'text':'  Your_question_or_directive  ',
          'quick_replies':[
            {
              'content_type':'text',
              'title':'  Option_1  ',
              'payload':'  Option_1_information_for_webhook  '
            },
            {
              'content_type':'text',
              'title':'  Option_2  ',
              'payload':'  Option_2_information_for_webhook  '
            },
            {
              'content_type':'text',
              'title':'  Option_3  ',
              'payload':'  Option_3_information_for_webhook  '
            }
          ]
        }
      }]",
...

后续步骤

如果您还没有设置 Webhooks,请设置 Webhooks,以便在用户点击您的广告时,您可以接收通知。