このドキュメントは、マーケティング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"
}'
成功すると、アプリはキャンペーンのIDを含むJSONオブジェクトを受け取ります。次のステップで広告セットを作成する際に、このIDを使います。
{ "id": "YOUR_CAMPAIGN_ID" }
詳しくは、広告キャンペーンのリファレンスをご覧ください。
広告セットを作成するには、act_ad_account_id/adsets
エンドポイントに対してPOST
リクエストを送信します。このad_account_idは、Meta広告アカウントのIDです。リクエストには以下を含める必要があります。
access_token
をページアクセストークンに設定bid_amount
を最大支払い額に設定billing_event
をIMPRESSIONS
に設定campaign_id
を、ステップ1の広告キャンペーンのIDに設定daily_budget
を1日の予算額に設定name
を広告セットの名前に設定optimization_goal
をLEAD_GENERATION
またはQUALITY_LEAD
に設定 destination_type
を ON_AD
に設定promoted_object
をビジネスのFacebookページのIDに設定status
をPAUSED
に設定注: CRMデータソースを設定し、最適化の目的としてQUALITY_LEAD
を選択したなら、最適化の質を高めるためにpixel_id
をpromoted_object
に追加できます。なお、pixel_id
と一緒にpixel_rule
を指定する必要はありません。
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"
}'
成功すると、アプリは広告セットのIDを含む次の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
パラメーターに設定できる値は、以下のうちのいずれか1つだけです。
|
|
|
このリストにない値に設定された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}に示されている典型的なタイプの質問に加えて、以下の用途に合わせてさらに特化したタイプの質問も追加できます。
予約スケジューリングのための質問では、限られた範囲内で時間を選択できる日時指定欄が表示されます。質問の下に確認メッセージを表示することもできます。
予約スケジューリングの質問を追加するには、type
パラメーターをDATE_TIME
に設定した質問オブジェクトを追加します。任意で確認メッセージをinline_context
パラメーターに追加することもできます。このメッセージは、必要に応じて詳細を確認できるよう質問フィールドのすぐ下に表示されます。
... "questions": "[ ... {"type": "DATE_TIME", "label": "Appointment time", "inline_context": "We will verify and call you to confirm your appointment." }, ...
公的機関発行の本人確認書類の質問では、利用者の国に基づいて質問を表示し、入力されたIDのフォーマットを検証します。この質問は次の国に関して表示できます。
ID_AR_DNI
"}ID_CPF
ID_CL_RUT
ID_CO_CC
ID_EC_CI
ID_PE_DNI
国民IDの質問を追加するには、type
パラメーターを利用者の国のタイプに設定した質問オブジェクトを追加します。
DNI
をリクエストする場合は、ターゲットオーディエンスをペルーに限定する必要があります。この条件を満たす広告のみが承認されます。... "questions": "[ ... {"type": "ID_AR_DNI" }, ...
店舗検索のための質問では、入力された郵便番号を基に店舗検索セレクターが表示されます。
この質問を使用するには、店舗ページ構造を設定する必要があります。設定方法については、Facebookで店舗ページ構造を設定する – Metaビジネスヘルプセンターをご覧ください。
店舗検索の質問を追加するには、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": "[ ...
成功すると、アプリはフォームのIDを含むJSON応答を受け取ります。広告作成時にそのIDを使います。
{ "id": "leadgen_form_id", }
画像とフォームを使った広告クリエイティブを作成するには、以下のパラメーターを使って/act_AD_ACCOUNT_ID/adcreatives
エンドポイントにPOST
リクエストを送信します。
access_token
をページアクセストークンに設定link_data
オブジェクトを含むobject_story_spec
。
call_to_action
をtype
の含まれるオブジェクトに設定。value
をリード獲得フォームIDに設定description
をクリエイティブの説明に設定image_hash
を広告クリエイティブの画像のハッシュに設定message
を広告クリエイティブのテキストに設定page_id
をFacebookページIDに設定注: 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
を使用して作成できますが、追加のlead_gen_form_id
フィールドをchild_attachments
パラメーターで定義する必要があります。
すべての子添付ファイルに同じ<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
成功すると、アプリは広告クリエイティブのIDを含む次の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"
}'
成功すると、アプリは広告のIDを含む次の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の応答を受け取ります。フォームIDを使用して、フォームに関する質問を受け取ったり、フォームをアーカイブしたりすることができます。
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"
成功すると、アプリは対象となるフォームのIDのリストを含む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"
成功すると、アプリはsuccess
がtrue
に設定されたオブジェクトを含むJSON応答を受け取ります。
アーカイブされたフォームは、status
をACTIVE
に設定してリクエストを送信すると、再アクティブ化できます。
このドキュメントに示されているコンポーネントについて詳しくは、Metaのほかのガイドをご覧ください。