คู่มือนี้มีไว้สำหรับใช้งานเมื่อคุณมีแค็ตตาล็อกพร้อมคลังการท่องเที่ยวแล้ว รวมถึงได้ตั้งค่าเหตุการณ์การท่องเที่ยวที่กำหนดบนเว็บไซต์และ/หรือในแอพมือถือ และได้เชื่อมโยงแค็ตตาล็อกกับที่มาของเหตุการณ์ของคุณแล้ว
ตั้งแต่วันที่ 20 กันยายน 2018 เป็นต้นไป เราจะไม่รองรับ subtype
หลังจาก API การตลาดเวอร์ชั่น 3.0 สำหรับกลุ่มเป้าหมายที่กำหนดเองสำหรับเว็บไซต์ แอพ กลุ่มเป้าหมายที่กำหนดเองสำหรับการมีส่วนร่วม และกลุ่มเป้าหมายจากข้อมูลคอนเวอร์ชั่นแบบออฟไลน์ ข้อยกเว้นเดียวคือระบบจะยังคงรองรับ subtype
สำหรับกลุ่มเป้าหมายที่กำหนดเองสำหรับการมีส่วนร่วมในวิดีโอ
สร้างกลุ่มเป้าหมายการท่องเที่ยวใน 2 ขั้นตอน ดังนี้:
นอกเหนือจากการเชื่อมโยงที่มาของเหตุการณ์กับแค็ตตาล็อกแล้ว คุณยังต้องสร้างกลุ่มที่มาของเหตุการณ์ด้วย กลุ่มที่มาของเหตุการณ์ใช้สำหรับเพิ่มกลุ่มเป้าหมาย
use FacebookAds\Object\EventSourceGroup;
use FacebookAds\Object\Fields\EventSourceGroupFields;
$event_source_group = new EventSourceGroup(null, <BUSINESS_ID>);
$event_source_group->setData(array(
EventSourceGroupFields::NAME => 'My Travel Company Events',
EventSourceGroupFields::EVENT_SOURCES => array(
<PIXEL_ID>,
<APP_ID>,
),
));
$event_source_group->create();
from facebookads.adobjects.eventsourcegroup import EventSourceGroup
event_source_group = EventSourceGroup(parent_id=<BUSINESS_ID>)
event_source_group[EventSourceGroup.Field.name] = 'My Travel Company Events'
event_source_group[EventSourceGroup.Field.event_sources] = [
<PIXEL_ID>,
<APP_ID>,
]
event_source_group.remote_create()
curl \
-F 'name=My Travel Company Events' \
-F 'event_sources=["<PIXEL_ID>","<APP_ID>"]' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v2.11/<BUSINESS_ID>/event_source_groups
จากนั้นคุณจะต้องแชร์กลุ่มที่มาของเหตุการณ์นี้ไปยังบัญชีโฆษณาที่ต้องการสร้างกลุ่มเป้าหมายโดยใช้กลุ่มนี้ ซึ่งจะต้องดำเนินการโดยเรียกใช้ HTTP POST
:
use FacebookAds\Object\EventSourceGroup;
$event_source_group = new EventSourceGroup(<EVENT_SOURCE_GROUP_ID>);
// ad account id without 'act_'
$event_source_group->createSharedAccount(array(), array(
'accounts' => array(
'<ACCOUNT_ID_WITHOUT_ACT>',
),
));
from facebookads.adobjects.eventsourcegroup import EventSourceGroup
event_source_group = EventSourceGroup(<EVENT_SOURCE_GROUP_ID>)
# ad account id without 'act_'
response = event_source_group.create_shared_account(
params={
'accounts': ['<ACCOUNT_ID_WITHOUT_ACT>'],
},
)
print(response)
curl \
-F 'accounts=["<ACCOUNT_ID_WITHOUT_ACT>"]' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v2.11/<EVENT_SOURCE_GROUP_ID>/shared_accounts
เมื่อถึงขั้นตอนนี้ คุณควรจะต้องมีสัญญาณผู้ใช้ (กล่าวคือ เหตุการณ์พิกเซลและ/หรือเหตุการณ์ในแอพ) ที่ตั้งค่าไว้และเชื่อมโยงกับกลุ่มที่มาของเหตุการณ์รวมถึงแค็ตตาล็อกการท่องเที่ยวของคุณ
หากต้องการกำหนดเป้าหมายไปยังผู้ที่แสดงความประสงค์จะท่องเที่ยวอย่างชัดเจน คุณจะต้องสร้างกลุ่มเป้าหมายการท่องเที่ยวแบบไดนามิกที่ประกอบด้วยผู้คนที่คุณต้องการนำเสนอโฆษณาให้เห็น คุณสามารถรวมหรือยกเว้นผู้คนตามสัญญาณความประสงค์จะท่องเที่ยวได้ คุณยังสามารถใช้ตัวกรองตามกฎเพิ่มเติมนอกเหนือจากเหตุการณ์ เช่น กลุ่มเป้าหมายที่กำหนดเองบนเว็บไซต์ได้ โดยต้องใช้ช่อง flight_set_id
สำหรับกลุ่มเป้าหมายเที่ยวบินแบบไดนามิก สำหรับกลุ่มเป้าหมายโรงแรมและปลายทาง คุณไม่จำเป็นต้องระบุ hotel_set_id
หรือ destination_set_id
หากต้องการสร้างกลุ่มเป้าหมายการท่องเที่ยวใหม่ ให้สร้าง HTTP POST
เป็น /act_<AD_ACCOUNT_ID>/customaudiences
ช่องและประเภท | คำอธิบาย |
---|---|
ประเภท: | จำเป็นต้องระบุ วัตถุประสงค์ของกลุ่มเป้าหมาย ต้องตั้งค่าเป็น |
ประเภท: | จำเป็นต้องระบุ ระบุประเภทสัญญาณที่ควรใช้สำหรับสร้างกลุ่มเป้าหมายนี้ ต้องตั้งค่าเป็น |
ประเภท: | อาร์เรย์ JSON ของการจับคู่ "event_sources": [ { "type": "pixel", "id": "562030684179932" }, { "type": "app", "id": "562030684179934" } ] ต้องระบุหากคุณไม่ได้ป้อน |
ประเภท: | ระบุกลุ่มที่มาของเหตุการณ์ซึ่งเหตุการณ์ในกลุ่มนั้นจะรองรับการสร้างกลุ่มเป้าหมาย ต้องระบุหากคุณไม่ได้ป้อน |
ประเภท: | จำเป็นต้องระบุ อาร์เรย์อ็อบเจ็กต์ JSON ที่ระบุสัญญาณความประสงค์แต่ละรายการซึ่งจะทำให้บัญชีในศูนย์บัญชีมีสิทธิ์อยู่ในกลุ่มเป้าหมายนี้ โปรดดูตารางพารามิเตอร์อ็อบเจ็กต์การรวมที่ด้านล่าง |
ประเภท: | คำอธิบายเพิ่มเติมของกลุ่มเป้าหมาย |
ประเภท: | อาร์เรย์อ็อบเจ็กต์ JSON ที่ระบุสัญญาณความประสงค์แต่ละรายการซึ่งจะยกเว้นไม่ให้บัญชีในศูนย์บัญชีมีสิทธิ์อยู่ในกลุ่มเป้าหมายนี้ โปรดดูตารางพารามิเตอร์อ็อบเจ็กต์การยกเว้นที่ด้านล่าง |
ประเภท: | กฎของกลุ่มเป้าหมายแบบดั้งเดิมที่จะใช้ในสตรีมเหตุการณ์ก่อนประมวลผล |
ชื่อและประเภทของช่อง | คำอธิบาย |
---|---|
ประเภท: | จำเป็นต้องระบุ ชื่อเหตุการณ์ของสัญญาณที่คุณต้องการใช้พิจารณาในการรวม ตัวอย่าง: |
ประเภท: | จำเป็นต้องระบุ ระยะเวลาต่ำสุด/สูงสุดนับตั้งแต่ได้รับเหตุการณ์เพื่อใช้พิจารณาในการรวม อัตราการใช้งานต่อเนื่องต้องมีระยะเวลาอย่างน้อย 4 ชั่วโมง โปรดดูตารางพารามิเตอร์อ็อบเจ็กต์อัตราการใช้งานต่อเนื่องที่ด้านล่าง ตัวอย่าง: |
ประเภท: | ช่วงการจองคือระยะเวลาเป็นวินาทีระหว่างวันที่เช็คอินของผู้ใช้และเวลาปัจจุบัน เมื่อคุณระบุช่วงเวลา ระบบก็จะรวมเฉพาะผู้คนที่มีช่วงการจองอยู่ในช่วงเวลานี้ โดยระบบรองรับช่วงการจองที่เป็นค่าลบด้วย เพื่อให้คุณสามารถรวมผู้คนที่มีวันเช็คอินเลยไปแล้วได้ โปรดดูตารางพารามิเตอร์อ็อบเจ็กต์ช่วงการจองที่ด้านล่าง ตัวอย่าง:
|
ประเภท: ตัวดำเนินการ | จำนวนครั้งที่มีการส่งเหตุการณ์ออกไป คุณสามารถใช้ได้ทั้งตัวดำเนินการเปรียบเทียบค่าเท่ากันและตัวดำเนินการเปรียบเทียบเชิงตัวเลข ตัวอย่าง: |
ชื่อและประเภทของช่อง | คำอธิบาย |
---|---|
ประเภท: | จำเป็นต้องระบุ ระยะเวลาสูงสุด (เป็นวินาที) นับตั้งแต่ได้รับเหตุการณ์ ตัวอย่าง: |
ประเภท: | ระยะเวลาต่ำสุด (เป็นวินาที) นับตั้งแต่ได้รับเหตุการณ์ ตัวอย่าง: |
ชื่อและประเภทของช่อง | คำอธิบาย |
---|---|
ประเภท: | จำเป็นต้องระบุ ระยะเวลาต่ำสุด (เป็นวินาที) ระหว่างวันที่ปัจจุบันและวันที่ผู้ใช้ต้องการเช็คอิน ตัวอย่าง: |
ประเภท: | จำเป็นต้องระบุ ระยะเวลาสูงสุด (เป็นวินาที) ระหว่างวันที่ปัจจุบันและวันที่ต้องการเช็คอิน ตัวอย่าง: |
ชื่อและประเภทของช่อง | คำอธิบาย |
---|---|
ประเภท: | จำเป็นต้องระบุ ชื่อเหตุการณ์ของสัญญาณที่คุณต้องการใช้พิจารณาในการยกเว้น ตัวอย่าง: |
ประเภท: | จำเป็นต้องระบุ ระยะเวลาต่ำสุด/สูงสุดนับตั้งแต่ได้รับเหตุการณ์เพื่อใช้พิจารณาในการยกเว้น อัตราการใช้งานต่อเนื่องต้องมีระยะเวลาอย่างน้อย 4 ชั่วโมง โปรดดูตารางพารามิเตอร์อ็อบเจ็กต์อัตราการใช้งานต่อเนื่องที่ด้านล่าง ตัวอย่าง: |
พารามิเตอร์แต่ละรายการสามารถใช้ร่วมกับตัวดำเนินการJSON
แบบมาตรฐานตัวใดก็ได้ เหมือนกันกับพารามิเตอร์แบบดั้งเดิม
ชื่อและประเภทของช่อง | คำอธิบาย |
---|---|
ประเภท: | จับคู่เฉพาะเหตุการณ์ที่มี เฉพาะสำหรับกลุ่มเป้าหมายการท่องเที่ยวที่ตั้งค่า ตัวอย่าง: |
ประเภท: | จับคู่เฉพาะเหตุการณ์ที่มี เฉพาะสำหรับกลุ่มเป้าหมายการท่องเที่ยวที่ตั้งค่า ตัวอย่าง: |
ประเภท: | จำเป็นสำหรับโฆษณาเที่ยวบิน จับคู่เฉพาะเหตุการณ์ที่มีเส้นทาง ( เฉพาะสำหรับกลุ่มเป้าหมายการท่องเที่ยวที่ตั้งค่า ตัวอย่าง: |
ประเภท: | จำนวนคืนที่เข้าพักในระหว่างทริป ตัวอย่าง: |
ประเภท: | จำนวนวันสุดสัปดาห์ระหว่างวันที่เริ่มต้นและวันที่สิ้นสุด ตัวอย่าง: |
ประเภท: | จำนวนผู้เดินทางทั้งหมด
ตัวอย่าง: |
ช่องวันที่:
ประเภท: | ใช้ช่องวันที่ที่ตรงตาม ตัวอย่าง: |
ประเภท: | ทริปที่ระบุวันที่เจาะจง ตัวอย่าง: |
ผู้เดินทางคนเดียวที่ได้ทำการค้นหาอย่างน้อย 3 ครั้งในช่วง 5 วันที่ผ่านมาแต่ยังไม่ได้ทำการจอง:
use FacebookAds\Object\CustomAudience;
use FacebookAds\Object\Fields\CustomAudienceFields;
use FacebookAds\Object\Values\CustomAudienceSubtypeValues;
use FacebookAds\Object\Values\CustomAudienceClaimObjectiveValues;
use FacebookAds\Object\Values\CustomAudienceContentTypeValues;
$custom_audience = new CustomAudience(null, 'act_<AD_ACCOUNT_ID>');
$custom_audience->setData(array(
CustomAudienceFields::NAME => 'Travel Audience',
CustomAudienceFields::SUBTYPE => CustomAudienceSubtypeValues::CLAIM,
CustomAudienceFields::CLAIM_OBJECTIVE =>
CustomAudienceClaimObjectiveValues::TRAVEL,
CustomAudienceFields::CONTENT_TYPE => CustomAudienceContentTypeValues::HOTEL,
CustomAudienceFields::EVENT_SOURCE_GROUP => <EVENT_SOURCE_GROUP_ID>,
CustomAudienceFields::RULE => array(
'num_travelers' => array('eq' => 1),
),
'inclusions' => array(
array(
'event' => 'Search',
'count' => array('gt' => 3),
'retention' => array('min_seconds'=> 0, 'max_seconds'=> 432000),
),
),
'exclusions' => array(
array(
'event' => 'Purchase',
'retention' => array('min_seconds'=> 0, 'max_seconds'=> 172800),
),
),
));
$custom_audience->create();
from facebookads.adobjects.customaudience import CustomAudience
audience = CustomAudience(parent_id='act_<AD_ACCOUNT_ID>')
audience[CustomAudience.Field.name] = 'Travel Audience'
audience[CustomAudience.Field.subtype] = CustomAudience.Subtype.claim
audience[CustomAudience.Field.claim_objective] = \
CustomAudience.ClaimObjective.travel
audience[CustomAudience.Field.content_type] = CustomAudience.ContentType.hotel
audience[CustomAudience.Field.event_source_group] = <EVENT_SOURCE_GROUP_ID>
audience[CustomAudience.Field.rule] = {
'num_travelers': {'eq': 1},
}
audience['inclusions'] = [
{
'event': 'Search',
'count': {'gt': 3},
'retention': {'min_seconds': 0, 'max_seconds': 432000},
},
]
audience['exclusions'] = [
{
'event': 'Purchase',
'retention': {'min_seconds': 0, 'max_seconds': 432000},
},
]
audience.remote_create()
curl \
-F 'name=Travel Audience' \
-F 'subtype=CLAIM' \
-F 'claim_objective=TRAVEL' \
-F 'content_type=HOTEL' \
-F 'event_source_group=<EVENT_SOURCE_GROUP_ID>' \
-F 'rule={"num_travelers":{"eq":1}}' \
-F 'inclusions=[
{
"event": "Search",
"count": {"gt":3},
"retention": {"min_seconds":0,"max_seconds":432000}
}
]' \
-F 'exclusions=[{"event":"Purchase","retention":{"min_seconds":0,"max_seconds":172800}}]' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v2.11/act_<AD_ACCOUNT_ID>/customaudiences
กลุ่มคนที่ได้ดูหรือเริ่มทำการจองโรงแรมในชุดโรงแรมในช่วง 2 วันที่ผ่านมา แต่ยังดำเนินการจองไม่เสร็จสิ้น:
use FacebookAds\Object\CustomAudience;
use FacebookAds\Object\Fields\CustomAudienceFields;
use FacebookAds\Object\Values\CustomAudienceSubtypeValues;
use FacebookAds\Object\Values\CustomAudienceClaimObjectiveValues;
use FacebookAds\Object\Values\CustomAudienceContentTypeValues;
$custom_audience = new CustomAudience(null, 'act_<AD_ACCOUNT_ID>');
$custom_audience->setData(array(
CustomAudienceFields::NAME => 'Travel Audience',
CustomAudienceFields::SUBTYPE => CustomAudienceSubtypeValues::CLAIM,
CustomAudienceFields::CLAIM_OBJECTIVE =>
CustomAudienceClaimObjectiveValues::TRAVEL,
CustomAudienceFields::CONTENT_TYPE => CustomAudienceContentTypeValues::HOTEL,
CustomAudienceFields::EVENT_SOURCE_GROUP => <EVENT_SOURCE_GROUP_ID>,
CustomAudienceFields::RULE => array(
'hotel_set_id' => array('eq' => <HOTEL_SET_ID>),
),
'inclusions' => array(
array(
'event' => 'ViewContent',
'retention' => array('min_seconds'=> 0, 'max_seconds'=> 172800),
),
array(
'event' => 'InitiateCheckout',
'retention' => array('min_seconds'=> 0, 'max_seconds'=> 172800),
),
),
'exclusions' => array(
array(
'event' => 'Purchase',
'retention' => array('min_seconds'=> 0, 'max_seconds'=> 172800),
),
),
));
$custom_audience->create();
from facebookads.adobjects.customaudience import CustomAudience
audience = CustomAudience(parent_id='act_<AD_ACCOUNT_ID>')
audience[CustomAudience.Field.name] = 'Travel Audience'
audience[CustomAudience.Field.subtype] = CustomAudience.Subtype.claim
audience[CustomAudience.Field.claim_objective] = \
CustomAudience.ClaimObjective.travel
audience[CustomAudience.Field.content_type] = CustomAudience.ContentType.hotel
audience[CustomAudience.Field.event_source_group] = <EVENT_SOURCE_GROUP_ID>
audience[CustomAudience.Field.rule] = {
'hotel_set_id': {'eq': <HOTEL_SET_ID>},
}
audience['inclusions'] = [
{
'event': 'ViewContent',
'retention': {'min_seconds': 0, 'max_seconds': 172800},
},
{
'event': 'InitiateCheckout',
'retention': {'min_seconds': 0, 'max_seconds': 172800},
},
]
audience['exclusions'] = [
{
'event': 'Purchase',
'retention': {'min_seconds': 0, 'max_seconds': 172800},
},
]
audience.remote_create()
curl \
-F 'name=Travel Audience' \
-F 'subtype=CLAIM' \
-F 'claim_objective=TRAVEL' \
-F 'content_type=HOTEL' \
-F 'event_source_group=<EVENT_SOURCE_GROUP_ID>' \
-F 'rule={"hotel_set_id":{"eq":"<HOTEL_SET_ID>"}}' \
-F 'inclusions=[
{"event":"ViewContent","retention":{"min_seconds":0,"max_seconds":172800}},
{
"event": "InitiateCheckout",
"retention": {"min_seconds":0,"max_seconds":172800}
}
]' \
-F 'exclusions=[{"event":"Purchase","retention":{"min_seconds":0,"max_seconds":172800}}]' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v2.10/act_<AD_ACCOUNT_ID>/customaudiences
กลุ่มคนที่ได้เริ่มดำเนินการชำระเงินหรือซื้อตั๋วเที่ยวบินในช่วง 5 วันที่ผ่านมา และช่วงการจองเที่ยวบินอยู่ระหว่าง 2-7 วัน:
use FacebookAds\Object\CustomAudience;
use FacebookAds\Object\Fields\CustomAudienceFields;
use FacebookAds\Object\Values\CustomAudienceSubtypeValues;
use FacebookAds\Object\Values\CustomAudienceClaimObjectiveValues;
use FacebookAds\Object\Values\CustomAudienceContentTypeValues;
$custom_audience = new CustomAudience(null, 'act_<AD_ACCOUNT_ID>');
$custom_audience->setData(array(
CustomAudienceFields::NAME => 'Travel Audience',
CustomAudienceFields::SUBTYPE => CustomAudienceSubtypeValues::CLAIM,
CustomAudienceFields::CLAIM_OBJECTIVE =>
CustomAudienceClaimObjectiveValues::TRAVEL,
CustomAudienceFields::CONTENT_TYPE => CustomAudienceContentTypeValues::FLIGHT,
CustomAudienceFields::EVENT_SOURCE_GROUP => <EVENT_SOURCE_GROUP_ID>,
'inclusions' => array(
array(
'event' => 'InitiateCheckout',
'retention' => array('min_seconds'=> 0, 'max_seconds'=> 432000),
'booking_window' => array('min_seconds'=> 172800, 'max_seconds'=> 604800),
),
array(
'event' => 'Purchase',
'retention' => array('min_seconds'=> 0, 'max_seconds'=> 432000),
'booking_window' => array('min_seconds'=> 172800, 'max_seconds'=> 604800),
),
),
));
$custom_audience->create();
from facebookads.adobjects.customaudience import CustomAudience
audience = CustomAudience(parent_id='act_<AD_ACCOUNT_ID>')
audience[CustomAudience.Field.name] = 'Travel Audience'
audience[CustomAudience.Field.subtype] = CustomAudience.Subtype.claim
audience[CustomAudience.Field.claim_objective] = \
CustomAudience.ClaimObjective.travel
audience[CustomAudience.Field.content_type] = CustomAudience.ContentType.flight
audience[CustomAudience.Field.event_source_group] = <EVENT_SOURCE_GROUP_ID>
audience['inclusions'] = [
{
"event": "InitiateCheckout",
"retention": {"min_seconds": 0, "max_seconds": 432000},
"booking_window": {"min_seconds": 172800, "max_seconds": 604800},
},
{
"event": "Purchase",
"retention": {"min_seconds": 0, "max_seconds": 432000},
"booking_window": {"min_seconds": 172800, "max_seconds": 604800},
},
]
audience.remote_create()
curl \
-F 'name=Travel Audience' \
-F 'subtype=CLAIM' \
-F 'claim_objective=TRAVEL' \
-F 'content_type=FLIGHT' \
-F 'event_source_group=<EVENT_SOURCE_GROUP_ID>' \
-F 'inclusions=[
{
"event": "InitiateCheckout",
"retention": {"min_seconds":0,"max_seconds":432000},
"booking_window": {"min_seconds":172800,"max_seconds":604800}
},
{
"event": "Purchase",
"retention": {"min_seconds":0,"max_seconds":432000},
"booking_window": {"min_seconds":172800,"max_seconds":604800}
}
]' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v2.11/act_<AD_ACCOUNT_ID>/customaudiences
กลุ่มคนที่ได้ทำการค้นหาโรงแรมใน "นิวยอร์กซิตี้" มากกว่า 3 ครั้งในช่วง 2 วันที่ผ่านมาแต่ยังไม่ได้ทำการจอง:
use FacebookAds\Object\CustomAudience;
use FacebookAds\Object\Fields\CustomAudienceFields;
use FacebookAds\Object\Values\CustomAudienceSubtypeValues;
use FacebookAds\Object\Values\CustomAudienceClaimObjectiveValues;
use FacebookAds\Object\Values\CustomAudienceContentTypeValues;
$custom_audience = new CustomAudience(null, 'act_<AD_ACCOUNT_ID>');
$custom_audience->setData(array(
CustomAudienceFields::NAME => 'Travel Audience',
CustomAudienceFields::SUBTYPE => CustomAudienceSubtypeValues::CLAIM,
CustomAudienceFields::CLAIM_OBJECTIVE =>
CustomAudienceClaimObjectiveValues::TRAVEL,
CustomAudienceFields::CONTENT_TYPE => CustomAudienceContentTypeValues::HOTEL,
CustomAudienceFields::EVENT_SOURCE_GROUP => <EVENT_SOURCE_GROUP_ID>,
CustomAudienceFields::RULE => array(
'destination' => array('i_contains' => 'New York City'),
),
'inclusions' => array(
array(
'event' => 'Search',
'count' => array('gt' => 3),
'retention' => array('min_seconds'=> 0, 'max_seconds'=> 172800),
),
),
'exclusions' => array(
array(
'event' => 'Purchase',
'retention' => array('min_seconds'=> 0, 'max_seconds'=> 172800),
),
),
));
$custom_audience->create();
from facebookads.adobjects.customaudience import CustomAudience
audience = CustomAudience(parent_id='act_<AD_ACCOUNT_ID>')
audience[CustomAudience.Field.name] = 'Travel Audience'
audience[CustomAudience.Field.subtype] = CustomAudience.Subtype.claim
audience[CustomAudience.Field.claim_objective] = \
CustomAudience.ClaimObjective.travel
audience[CustomAudience.Field.content_type] = CustomAudience.ContentType.hotel
audience[CustomAudience.Field.event_source_group] = <EVENT_SOURCE_GROUP_ID>
audience[CustomAudience.Field.rule] = {
'destination': {'i_contains': 'New York City'},
}
audience['inclusions'] = [
{
'event': 'Search',
'count': {'gt': 3},
'retention': {'min_seconds': 0, 'max_seconds': 172800},
},
]
audience['exclusions'] = [
{
'event': 'Purchase',
'retention': {'min_seconds': 0, 'max_seconds': 172800},
},
]
audience.remote_create()
curl \
-F 'name=Travel Audience' \
-F 'subtype=CLAIM' \
-F 'claim_objective=TRAVEL' \
-F 'content_type=HOTEL' \
-F 'event_source_group=<EVENT_SOURCE_GROUP_ID>' \
-F 'rule={"destination":{"i_contains":"New York City"}}' \
-F 'inclusions=[
{
"event": "Search",
"count": {"gt":3},
"retention": {"min_seconds":0,"max_seconds":172800}
}
]' \
-F 'exclusions=[{"event":"Purchase","retention":{"min_seconds":0,"max_seconds":172800}}]' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v2.11/act_<AD_ACCOUNT_ID>/customaudiences
กลุ่มคนที่ได้ทำการค้นหาโรงแรมระหว่าง checkin_date
และ checkout_date
ที่เฉพาะเจาะจงในช่วง 2 วันที่ผ่านมาแต่ยังไม่ได้ทำการจอง:
use FacebookAds\Object\CustomAudience;
use FacebookAds\Object\Fields\CustomAudienceFields;
use FacebookAds\Object\Values\CustomAudienceSubtypeValues;
use FacebookAds\Object\Values\CustomAudienceClaimObjectiveValues;
use FacebookAds\Object\Values\CustomAudienceContentTypeValues;
$custom_audience = new CustomAudience(null, 'act_<AD_ACCOUNT_ID>');
$custom_audience->setData(array(
CustomAudienceFields::NAME => 'Travel Audience',
CustomAudienceFields::SUBTYPE => CustomAudienceSubtypeValues::CLAIM,
CustomAudienceFields::CLAIM_OBJECTIVE =>
CustomAudienceClaimObjectiveValues::TRAVEL,
CustomAudienceFields::CONTENT_TYPE => CustomAudienceContentTypeValues::HOTEL,
CustomAudienceFields::EVENT_SOURCE_GROUP => <EVENT_SOURCE_GROUP_ID>,
CustomAudienceFields::RULE => array(
'and' => array(
array(
'checkin_date' => array(
'gte' => (new \DateTime("+3 day"))->format('Y-m-d')
),
),
array(
'checkout_date' => array(
'lte' => (new \DateTime("+6 day"))->format('Y-m-d')
),
),
),
),
'inclusions' => array(
array(
'event' => 'Search',
'retention' => array('min_seconds'=> 0, 'max_seconds'=> 172800),
),
),
'exclusions' => array(
array(
'event' => 'Purchase',
'retention' => array('min_seconds'=> 0, 'max_seconds'=> 172800),
),
),
));
$custom_audience->create();
from facebookads.adobjects.customaudience import CustomAudience
import datetime
audience = CustomAudience(parent_id='act_<AD_ACCOUNT_ID>')
audience[CustomAudience.Field.name] = 'Travel Audience'
audience[CustomAudience.Field.subtype] = CustomAudience.Subtype.claim
audience[CustomAudience.Field.claim_objective] = \
CustomAudience.ClaimObjective.travel
audience[CustomAudience.Field.content_type] = CustomAudience.ContentType.hotel
audience[CustomAudience.Field.event_source_group] = <EVENT_SOURCE_GROUP_ID>
audience[CustomAudience.Field.rule] = {
'and': [
{
"checkin_date": {
"gte": str(datetime.date.today() + datetime.timedelta(days=3)),
},
},
{
"checkout_date": {
"gte": str(datetime.date.today() + datetime.timedelta(days=6)),
},
},
],
}
audience['inclusions'] = [
{
'event': 'Search',
'retention': {'min_seconds': 0, 'max_seconds': 172800},
},
]
audience['exclusions'] = [
{
'event': 'Purchase',
'retention': {'min_seconds': 0, 'max_seconds': 172800},
},
]
audience.remote_create()
curl \
-F 'name=Travel Audience' \
-F 'subtype=CLAIM' \
-F 'claim_objective=TRAVEL' \
-F 'content_type=HOTEL' \
-F 'event_source_group=<EVENT_SOURCE_GROUP_ID>' \
-F 'rule={
"and": [
{"checkin_date":{"gte":"2018-02-02"}},
{"checkout_date":{"lte":"2018-02-05"}}
]
}' \
-F 'inclusions=[{"event":"Search","retention":{"min_seconds":0,"max_seconds":172800}}]' \
-F 'exclusions=[{"event":"Purchase","retention":{"min_seconds":0,"max_seconds":172800}}]' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v2.11/act_<AD_ACCOUNT_ID>/customaudiences
กลุ่มคนที่ได้ค้นหาโรงแรมเข้าพักซึ่งรวมวันที่ระบุไว้ (เช่น วันคริสต์มาส) ในช่วง 2 วันที่ผ่านมาแต่ยังไม่ได้ทำการจอง:
use FacebookAds\Object\CustomAudience;
use FacebookAds\Object\Fields\CustomAudienceFields;
use FacebookAds\Object\Values\CustomAudienceSubtypeValues;
use FacebookAds\Object\Values\CustomAudienceClaimObjectiveValues;
use FacebookAds\Object\Values\CustomAudienceContentTypeValues;
$custom_audience = new CustomAudience(null, 'act_<AD_ACCOUNT_ID>');
$custom_audience->setData(array(
CustomAudienceFields::NAME => 'Travel Audience',
CustomAudienceFields::SUBTYPE => CustomAudienceSubtypeValues::CLAIM,
CustomAudienceFields::CLAIM_OBJECTIVE =>
CustomAudienceClaimObjectiveValues::TRAVEL,
CustomAudienceFields::CONTENT_TYPE => CustomAudienceContentTypeValues::HOTEL,
CustomAudienceFields::EVENT_SOURCE_GROUP => <EVENT_SOURCE_GROUP_ID>,
CustomAudienceFields::RULE => array(
'itinerary_contains_date' => array(
'eq' => (new \DateTime())->setDate(Date('Y'), 12, 25)->format('Y-m-d')
),
),
'inclusions' => array(
array(
'event' => 'Search',
'retention' => array('min_seconds'=> 0, 'max_seconds'=> 172800),
),
),
'exclusions' => array(
array(
'event' => 'Purchase',
'retention' => array('min_seconds'=> 0, 'max_seconds'=> 172800),
),
),
));
$custom_audience->create();
from facebookads.adobjects.customaudience import CustomAudience
import datetime
audience = CustomAudience(parent_id='act_<AD_ACCOUNT_ID>')
audience[CustomAudience.Field.name] = 'Travel Audience'
audience[CustomAudience.Field.subtype] = CustomAudience.Subtype.claim
audience[CustomAudience.Field.claim_objective] = \
CustomAudience.ClaimObjective.travel
audience[CustomAudience.Field.content_type] = CustomAudience.ContentType.hotel
audience[CustomAudience.Field.event_source_group] = <EVENT_SOURCE_GROUP_ID>
audience[CustomAudience.Field.rule] = {
"itinerary_contains_date": {
"eq": str(datetime.date(datetime.date.today().year, 12, 25)),
},
}
audience['inclusions'] = [
{
'event': 'Search',
'retention': {'min_seconds': 0, 'max_seconds': 172800},
},
]
audience['exclusions'] = [
{
'event': 'Purchase',
'retention': {'min_seconds': 0, 'max_seconds': 172800},
},
]
audience.remote_create()
curl \
-F 'name=Travel Audience' \
-F 'subtype=CLAIM' \
-F 'claim_objective=TRAVEL' \
-F 'content_type=HOTEL' \
-F 'event_source_group=<EVENT_SOURCE_GROUP_ID>' \
-F 'rule={"itinerary_contains_date":{"eq":"2018-12-25"}}' \
-F 'inclusions=[{"event":"Search","retention":{"min_seconds":0,"max_seconds":172800}}]' \
-F 'exclusions=[{"event":"Purchase","retention":{"min_seconds":0,"max_seconds":172800}}]' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v2.11/act_<AD_ACCOUNT_ID>/customaudiences
กลุ่มคนที่สร้างกลุ่มเป้าหมายสำหรับเที่ยวบินแบบเที่ยวเดียว:
curl \ -F 'name=Travel Audience' \ -F 'claim_objective=TRAVEL' \ -F 'content_type=FLIGHT' \ -F 'event_source_group=<EVENT_SOURCE_GROUP_ID>' \ -F 'rule={"and":[{"returning_departure_date":{"exists":false]}}' \ -F 'inclusions=[ { "event": "Search", "count": {"gt":3}, "retention": {"min_seconds":0,"max_seconds":432000} } ]' \ -F 'exclusions=[{"event":"Purchase","retention":{"min_seconds":0,"max_seconds":172800}}]' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v2.11/act_<AD_ACCOUNT_ID>/customaudiences
เมื่อคุณสร้างกลุ่มเป้าหมายแล้ว ระบบจะสามารถเพิ่มกลุ่มเป้าหมายนั้นลงไปยังข้อมูลจำเพาะการกำหนดเป้าหมายในแคมเปญโฆษณาการท่องเที่ยวของคุณได้