이 가이드에서는 마케팅 API를 사용하여 WhatsApp 연결 광고를 만들고 게시하는 방법을 설명합니다.
WhatsApp 연결 광고는 해당 광고를 클릭한 사람을 WhatsApp에서 비즈니스와의 대화로 바로 연결해 줍니다. 이러한 광고를 활용하여 대규모로 사람들에게 도달하고 우수하고 개별화된 서비스를 제공해 보세요.
WhatsApp 연결 광고는 이미지, 동영상, 슬라이드 또는 슬라이드쇼를 포함한 광고를 지원합니다. 광고에 호출 프롬프트를 포함할 수도 있습니다.
Messenger 또는 Instagram 채팅으로 사용자를 연결하는 광고를 만드는 데 관심이 있는 경우 Messenger 연결 광고 또는 Instagram 연결 광고에서 지침을 참조하세요. 사용자가 답장하는 데 사용할 가능성이 큰 랜딩 페이지를 선택하는 광고를 만들 수도 있습니다. 자세한 내용은 여러 랜딩 페이지 연결 광고를 참조하세요.
이 문서에서는 WhatsApp 연결 광고를 위한 통합을 설정할 때 따라야 할 단계를 간략히 설명합니다.
다음과 같은 작업을 수행해야 합니다.
이 가이드에서는 다음 조건이 충족된 상태라고 가정합니다.
이 가이드에서 모든 엔드포인트를 성공적으로 호출하려면 다음 항목이 필요합니다.
ads_management
pages_manage_ads
pages_read_engagement
pages_show_list
먼저 광고 캠페인을 만듭니다. 이를 위해서는 /act_<AD_ACCOUNT_ID>/campaigns
엔드포인트로 POST
요청을 보냅니다. 여기서 <AD_ACCOUNT_ID>
는 Meta 광고 계정의 ID입니다. 요청에는 다음과 같은 항목을 포함해야 합니다.
이름 | 설명 |
---|---|
문자열 | 필수 항목. |
enum | 필수 항목. |
list<Object> | 필수 항목. |
enum | 선택 사항. |
curl -X POST \
-F 'name=Click to WhatsApp Campaign' \
-F 'objective=OUTCOME_ENGAGEMENT' \
-F 'status=ACTIVE' \
-F 'special_ad_categories=[]' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/campaigns
curl -X POST \
-F 'name=Click to WhatsApp Calling Campaign' \
-F 'objective=OUTCOME_ENGAGEMENT' \
-F 'status=PAUSED' \
-F 'special_ad_categories=[]' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/campaigns
요청에 성공하면 앱이 새로 만든 캠페인의 ID가 포함된 JSON 응답을 받게 됩니다.
{ "id": "<AD_CAMPAIGN_ID>" }
/<AD_CAMPAIGN_ID>
로 POST
요청을 보내서 캠페인을 업데이트할 수 있습니다.
WhatsApp 연결 광고 캠페인을 성공적으로 만들었는지 확인하려면 /<AD_CAMPAIGN_ID>
로 GET
요청을 보내면 됩니다. 사용 가능한 매개변수의 전체 리스트는 광고 캠페인 참고 자료를 참조하세요.
curl -X GET -G \
-d 'fields=name,status,objective' \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/<AD_CAMPAIGN_ID>
{ "name": "Click to WhatsApp Campaign", "status": "PAUSED", "objective": "OUTCOME_ENGAGEMENT", "id": "<AD_CAMPAIGN_ID>" }
광고 캠페인을 만들었다면 광고 세트를 만듭니다. 광고 세트를 만들려면 /act_<AD_ACCOUNT_ID>/adsets
엔드포인트로 POST
요청을 보냅니다. 여기서 <AD_ACCOUNT_ID>
는 Meta 광고 계정의 ID입니다. 요청에는 다음과 같은 항목을 포함해야 합니다.
이름 | 설명 |
---|---|
부호 없는 int32 | bid_strategy가 |
enum | 선택 사항. |
enum | 필수 항목. |
숫자 문자열 또는 정수 | 필수 항목. |
int64 |
|
문자열 | 필수 항목. |
datetime |
|
int64 |
|
문자열 | 필수 항목. |
enum | 필수 항목.
|
| 필수 항목. 필수 항목:
선택 사항:
자세한 내용은 광고 세트, 홍보 개체를 참조하세요. |
datetime | 선택 사항. |
enum | 선택 사항. |
타게팅 개체 | 필수 항목. |
datetime | 선택 사항. |
datetime |
|
사용 가능한 매개변수의 전체 리스트를 확인하려면 광고 계정 광고 세트 참고 자료를 참조하세요.
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"access_token":"<ACCESS_TOKEN>",
"bid_amount":"<BID_AMOUNT>",
"billing_event":"IMPRESSIONS",
"campaign_id":"<CAMPAIGN_ID>",
"daily_budget":"<DAILY_BUDGET>",
"destination_type":"WHATSAPP",
"name": "<AD_SET_NAME>",
"optimization_goal": "IMPRESSIONS",
"promoted_object": {
"page_id": "<PAGE_ID>"
},
"status": "PAUSED",
"start_time": "<START_TIME>",
"targeting": {
"geo_locations": { "countries":["US","CA"] },
"device_platforms": ["mobile", "desktop"]
}
}' \
"https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/adsets"
{ "id": "<AD_SET_ID>" }
/<AD_SET_ID>
로 POST
요청을 보내서 광고 세트를 업데이트할 수 있습니다.
WhatsApp 연결 광고 세트를 성공적으로 만들었는지 확인하려면 /<AD_SET_ID>
로 GET
요청을 보내면 됩니다. 사용 가능한 매개변수의 전체 리스트는 광고 세트 참고 자료를 참조하세요.
curl -X GET -G \
-d 'fields=name,destination_type,optimization_goal,bid_strategy,status' \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/<AD_SET_ID>
{ "name": "Click to WhatsApp Campaign", "status": "PAUSED", "objective": "OUTCOME_ENGAGEMENT", "id": "<AD_SET_ID>" }
광고 크리에이티브를 사용하면 광고에 자산을 추가할 수 있습니다. 광고 크리에이티브를 만들려면 /act_<AD_ACCOUNT_ID>/adcreatives
엔드포인트로 POST
요청을 보냅니다. 여기서 <AD_ACCOUNT_ID>
는 Meta 광고 계정의 ID입니다. 요청에는 다음과 같은 항목을 포함해야 합니다.
이름 | 설명 |
---|---|
문자열 | 필수 항목. |
| 필수 항목. 필수 항목:
선택 사항:
|
| 선택 사항. |
사용 가능한 매개변수의 전체 리스트는 광고 크리에이티브 참고 자료를 참조하세요.
고객에게 표시되는 기본 메시지는 '안녕하세요! 자세한 정보를 알려드릴까요?'입니다. object_story_spec
아래의 page_welcome_message
필드에서 광고의 인사 메시지를 맞춤 설정하여 WhatsApp 연결 광고에 더욱 맞춤화된 사용자 경험을 만들 수 있습니다.
참고: WhatsApp 메시지를 사용하여 봇 플로를 트리거할 경우, BSP 및 에이전시와 협력하여 플로가 중단되지 않도록 업데이트하시기 바랍니다.
인사 메시지를 포함한 자동 입력 메시지 추가
"page_welcome_message": { "type": "VISUAL_EDITOR", "version": 2, "landing_screen_type": "welcome_message", "media_type": "text", "text_format": { "customer_action_type": "autofill_message", "message": { "autofill_message": { "content": "<AUTOFILL_MESSAGE>" }, "text": "<GREETING_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": { "text": "<GREETING_MESSAGE>", "ice_breakers": [ { "title": "<ICEBREAKER>" }, { "title": "<ICEBREAKER>" }, { "title": "<ICEBREAKER>" } ] } } } }
curl \
-F 'object_story_spec={
"page_id": "<PAGE_ID>"
"link_data": {
"image_hash":<IMAGE_HASH>
"call_to_action": {
"type": "WHATSAPP_MESSAGE",
"value": {
"app_destination": "WHATSAPP"
}
},
"link": "https://api.whatsapp.com/send",
"name": <AD_HEADLINE>",
"page_welcome_message":
"type": "VISUAL_EDITOR",
"version": 2,
"landing_screen_type": "ctwa_call_prompt",
"media_type": "text",
"text_format": {
"message": {
"text": "<MESSAGE>"",
"call_prompt_data": {
"call_prompt_message": "<CALL_PROMPT_MESSAGE>"
}
}
},
"user_edit": false
},
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/adcreatives
{ "id": "<AD_CREATIVE_ID>" }
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"name": "Sample ad creative",
"object_story_spec": {
"page_id": "<PAGE_ID>",
"link_data": {
"name": "<AD_HEADLINE>",
"message": "<AD_PRIMARY_TEXT>",
"description": "<AD_DESCRIPTION>",
"image_hash": "<IMAGE_HASH>",
"link": "https://api.whatsapp.com/send",
"page_welcome_message": "<PAGE_WELCOME_MESSAGE>",
"call_to_action": {
"type": "WHATSAPP_MESSAGE",
"value": {
"app_destination": "WHATSAPP"
}
}
}
},
"degrees_of_freedom_spec": {
"creative_features_spec": {
"standard_enhancements": {
"enroll_status": "OPT_IN"
}
}
}
}' \
"https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/adcreatives"
요청에 성공하면 앱이 새로 만든 광고 크리에이티브의 ID가 포함된 JSON 응답을 받게 됩니다.
{ "id": "<AD_CREATIVE_ID>" }
광고 크리에이티브에 기존 Instagram 콘텐츠를 사용할 수도 있습니다.
curl -X POST \ -H "Content-Type: application/json" \ -d '{ "source_instagram_media_id": "<INSTAGRAM_MEDIA_ID>", "instagram_user_id": "<INSTAGRAM_USER_ID>", "object_id": "<PAGE_ID>", "call_to_action": { "type": "WHATSAPP_MESSAGE", "value": { "link": "https://api.whatsapp.com/send", "app_destination": "WHATSAPP" } } }, "degrees_of_freedom_spec": { "creative_features_spec": { "standard_enhancements": { "enroll_status": "OPT_IN" } } } }' \ https://graph.facebook.com/latest-api-version />/act_<AD_ACCOUNT_ID>/adcreatives
/<AD_CREATIVE_ID>
로 POST
요청을 보내서 광고 크리에이티브를 업데이트할 수 있습니다.
WhatsApp 연결 광고 크리에이티브를 성공적으로 만들었는지 확인하려면 /<AD_CREATIVE_ID>
로 GET
요청을 보내면 됩니다. 사용 가능한 매개변수의 전체 리스트는 광고 크리에이티브를 참조하세요.
curl -X GET -G \
-d 'fields=name,object_story_spec{link_data{call_to_action,page_welcome_message}}' \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/<AD_CREATIVE_ID>
{ "name": "Sample ad creative", "object_story_spec" { "page_welcome_message": { "type": "VISUAL_EDITOR", "version": 2, "landing_screen_type": "welcome_message", "media_type": "text", "text_format": { "customer_action_type": "autofill_message", "message": { "autofill_message": { "content": "Sample autofill message" }, "text": "Sample greeting message" } } } }, "id": "<AD_CREATIVE_ID>" }
광고를 사용하면 광고 크리에이티브 정보와 광고 세트를 연결할 수 있습니다. 광고를 만들려면 /act_<AD_ACCOUNT_ID>/ads
엔드포인트로 POST
요청을 보냅니다. 여기서 <AD_ACCOUNT_ID>
는 Meta 광고 계정의 ID입니다. 요청에는 다음과 같은 항목을 포함해야 합니다.
이름 | 설명 |
---|---|
문자열 | 필수 항목. |
숫자 문자열 또는 정수 | 필수 항목. |
| 필수 항목. |
enum | 필수 항목. |
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"name": "Sample ad",
"adset_id": "<AD_SET_ID>",
"creative": {
"creative_id": "<AD_CREATIVE_ID>"
},
"status": "PAUSED"
}' \
"https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/ads"
{ "id": "<AD_ID>" }
/<AD_ID>
로 POST
요청을 보내서 광고를 업데이트할 수 있습니다.
WhatsApp 연결 광고를 성공적으로 만들었는지 확인하려면 /<AD_ID>
로 GET
요청을 보내면 됩니다. 사용 가능한 매개변수의 전체 리스트는 광고 참고 자료를 참조하세요.
curl -X GET -G \
-d 'fields=status,adset_id,campaign_id \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/<AD_ID>
{ "status": "PAUSED", "adset_id": "<AD_SET_ID>", "campaign_id": "<AD_CAMPAIGN_ID>", "id": "<AD_ID>" }
광고 관리자에 광고가 있는지 확인합니다. 변경 사항을 게시할 준비가 되면 캠페인, 캠페인 광고 세트, 광고를 선택한 후 게시 버튼을 클릭합니다.
API를 사용하여 광고를 게시할 수도 있습니다. status
매개변수를 ACTIVE
로 설정하여 /<AD_ID>
에 POST
요청을 보내면 됩니다. 여기서 <AD_ID>
는 게시하고자 하는 광고입니다.
Meta에서 광고를 검토하고 상태가 PENDING_REVIEW
로 변경됩니다. 광고가 승인되면 상태가 ACTIVE
로 자동 업데이트되고 광고가 게재됩니다.