이 가이드에서는 마케팅 API를 사용하여 Messenger 연결 광고를 만들고 게시하는 방법을 설명합니다.
광고 관리자(Ads Manager)를 사용하여 잠재 고객용 광고를 위한 캠페인을 만들고 싶다면 Meta 비즈니스 지원 센터를 방문하세요.
Messenger 연결 광고는 해당 광고를 클릭한 사람을 Messenger에서 비즈니스와의 대화로 바로 연결해 줍니다. 이러한 광고를 활용하여 대규모로 사람들에게 도달하고 우수하고 개별화된 서비스를 제공해 보세요.
Messenger 연결 광고는 이미지, 동영상, 슬라이드 또는 슬라이드쇼를 포함한 광고를 지원합니다. 광고에 호출 프롬프트를 포함할 수도 있습니다.
Instagram 또는 WhatsApp 채팅으로 사용자를 연결하는 광고를 만드는 데 관심이 있는 경우 Instagram 연결 광고 또는 WhatsApp 연결 광고에서 가이드를 참조하세요. 사용자가 답장할 가능성이 가장 큰 랜딩 페이지를 선택하는 광고를 만들 수도 있습니다. 자세한 내용은 여러 랜딩 페이지 연결 광고를 참조하세요.
광고를 만들고 게시하려면 다음과 같은 단계를 거쳐야 합니다.
이 가이드에서는 다음 항목을 보유하고 있는 상태라고 가정합니다.
이 가이드에서 모든 엔드포인트를 성공적으로 호출하려면 다음 항목이 필요합니다.
ADVERTIZE
작업을 수행할 수 있는 사용자가 요청한 페이지 액세스 토큰ads_management
pages_manage_ads
pages_read_engagement
pages_show_list
광고 캠페인을 만들려면 act_ad_account_id/campaigns
엔드포인트로 POST
요청을 보냅니다. 여기에서 ad_account_id는 Meta 광고 계정의 ID입니다. 요청에는 다음과 같은 항목을 포함해야 합니다.
|
|
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":"Messenger_ad_campaign_name",
"objective":"OUTCOME_TRAFFIC",
"status":"PAUSED",
"special_ad_categories":["NONE"],
}'
요청에 성공하면 앱이 캠페인의 ID가 포함된 JSON 응답을 받게 됩니다.
{ "id": "campaign_id" }
광고 세트를 만들려면 act_ad_account_id/adsets
엔드포인트로 POST
요청을 보냅니다. 여기에서 ad_account_id는 Meta 광고 계정의 ID입니다. 요청에는 다음과 같은 항목을 포함해야 합니다.
access_token
bid_amount
IMPRESSIONS
로 설정된 billing_event
campaign_id
daily_budget
MESSENGER
로 설정된 destination_type
name
CONVERSATIONS
, IMPRESSIONS
또는 잠재 고객용 광고의 경우 LEAD_GENERATION
이나 QUALITY_LEAD
로 설정된 optimization_goal
promoted_object
– 비즈니스 Facebook 페이지의 ID로 설정합니다.PAUSED
로 설정된 status
targeting
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",
"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"]
}
}'
요청에 성공하면 앱이 광고 세트의 ID가 포함된 다음과 같은 JSON 응답을 받게 됩니다.
{ "id": "adset_id" }
광고 크리에이티브를 사용하면 광고에 자산을 추가할 수 있습니다.
제한 사항
|
광고 크리에이티브를 만들려면 /act_ad_account_id/adcreatives
엔드포인트로 POST
요청을 보냅니다. 여기에서 ad_account_id는 Meta 광고 계정의 ID입니다. 요청에는 다음과 같은 항목을 포함해야 합니다.
access_token
name
object_story_spec
– 필수 항목입니다.privacy_url
– 잠재 고객용 광고에 필수 항목입니다.standard_enhancements.enroll_status
– 기본 개선 사항의 자격 요건을 충족하는 광고 크리에이티브에 필수 항목입니다. 최상위 수준 광고 크리에이티브 매개변수 빠른 참고 자료
Messenger 연결 광고에 대한 광고 크리에이티브를 만들려면 /act_ad_account_id/adcreatives
엔드포인트로 POST
요청을 보냅니다. 여기에서 ad_account_id는 Meta 광고 계정의 ID입니다. 요청에는 다음과 같은 항목을 포함해야 합니다.
access_token
name
*_data
개체를 포함하는 object_story_spec
curl -X POST "https://graph.facebook.com/v21.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" }
}
}
}
}'
curl -X POST "https://graph.facebook.com/v21.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"
}
}
}'
curl -X POST "https://graph.facebook.com/v21.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
참고 자료를 참조하세요.
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 광고 계정의 ID입니다. 요청에는 다음과 같은 항목을 포함해야 합니다.
access_token
name
object_story_spec
*_data
개체 포함) page_welcome_message
배열. marketing_messages
로 설정한 landing_screen_type
과 nofitication_messages
로 설정한 메시지 첨부 파일 payload.template_type
을 포함해야 합니다.
curl -X POST "https://graph.facebook.com/v21.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에서 잠재 고객을 확보할 수 있습니다. 선호하는 메시지 플랫폼에서 비즈니스에 관심이 있는 사람들에게 구체적인 질문을 직접 물어보고 고객 선호도를 수집하고 가장 적합한 잠재 고객을 우선순위로 설정하기 위한 맞춤 질문을 할 수 있습니다.
잠재 고객용 Messenger 광고의 광고 크리에이티브를 만들기 전에 잠재 고객용 Messenger 광고 약관에 동의해야 합니다.
메시지 템플릿을 만들려면 /page_id/messenger_lead_forms
엔드포인트로 POST
요청을 보냅니다. 여기에서 page_id는 비즈니스의 Facebook 페이지 ID가 됩니다. 요청에는 다음과 같은 항목을 포함해야 합니다.
access_token
privacy_url
message
, reply_type
, step_id
및 step_type
을 포함하는 step_list
배열template_name
reminder_text
다음 메시지 템플릿은 template_name
, privacy_url
, step_list
(step_id: 0
의 환영 메시지, step_id: 1
에서 4
까지의 질문, step_id: 5
의 확인 메시지, step_id: 6
의 부적합 메시지)를 포함합니다.
curl -X POST "https://graph.facebook.com/v21.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"
}
]
}'
요청에 성공하면 앱이 템플릿 ID를 포함하는 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 광고 계정의 ID입니다. 요청에는 다음과 같은 항목을 포함해야 합니다.
access_token
name
*_data
개체와 다음을 포함하는 object_story_spec
*_data.page_welcome_message
매개변수
ctm_lead_gen_template_id:
Your_messenger_lead_gen_template_id
curl -X POST "https://graph.facebook.com/v21.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" }"
}
}
}'
curl -X POST "https://graph.facebook.com/v21.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 광고로 사용을 참조하세요.
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/v21.0
/act_<AD_ACCOUNT_ID>/adcreatives
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/v21.0
/act_<AD_ACCOUNT_ID>/adcreatives
자세한 내용은 게시물을 Instagram 광고로 사용: Facebook 게시물을 참조하세요.
curl -i -X POST \
"https://graph.facebook.com/v21.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
형식의 게시물 ID이고 instagram_actor_id
는 페이지에 연결된 Instagram 계정 ID 또는 페이지의 지원을 받는 Instagram 계정 ID입니다. 자세한 내용은 페이지로 Instagram 계정 설정을 참조하세요.
광고를 만들려면 광고 크리에이티브와 광고 세트를 연결해야 합니다. 광고를 만들려면 /act_ad_account_id/ads
엔드포인트로 POST
요청을 보냅니다. 여기에서 ad_account_id는 Meta 광고 계정의 ID입니다. 요청에는 다음과 같은 항목을 포함해야 합니다.
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",
"adset_id": "Your_ad_set_id",
"creative": { "creative_id": "Your_ad_creative_id" },
"status": "PAUSED"
}'
요청에 성공하면 앱이 광고 ID가 포함된 다음과 같은 JSON 응답을 받게 됩니다.
{ "id": "ad_id" }
광고를 만들 때 행동 유도를 설정할 수도 있습니다.
"call_to_action": { "value": {"app_destination":"MESSENGER"}, "type": "MESSAGE_PAGE" }
광고가 광고 관리자(Ads Manager) 에 있는지 확인합니다. 오른쪽 상단에 있는 검토 및 게시 버튼을 클릭합니다. 캠페인, 캠페인의 광고 세트, 광고를 선택합니다.
광고 관리자 또는 API를 통해 광고를 게시할 수 있습니다. API를 사용하여 광고를 게시하려면 status
매개변수를 ACTIVE
로 설정하여 4단계를 반복합니다.
Meta에서 광고를 검토하고 상태가 PENDING_REVIEW
로 변경됩니다. 광고가 승인되면 상태가 ACTIVE
가 되고 광고가 게재됩니다.
통화 프롬프트나 여러 개의 템플릿 등, 두 가지 이상의 메시지 요소를 포함하는 메시지를 만들 수 있습니다. 이러한 요소는 문자열 값 대신 *_data.page_welcome_message
값에 대해 개체의 배열을 설정하여 추가합니다.
*_data.page_welcome_message
의 값을 통화 프롬프트 요소를 정의하는 개체의 배열로 설정하여 Messenger 연결 광고에 통화 프롬프트를 추가할 수 있습니다. landing_screen_type
매개변수를 call_prompt
로 설정하고, media_type
을 text
로 설정하고, text
를 포함한 text_format.message
개체를 환영 메시지 텍스트로 설정하고, call_prompt_data.call_prompt_message
를 비즈니스에 전화를 걸도록 유도하는 프롬프트로 설정합니다.
... "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_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를 설정하여 사용자가 광고를 클릭하는 시점에 대한 알림을 받습니다.
마케팅 API 및 Messenger 연결 광고에 대한 추가 옵션에 대해 자세히 알아보세요.