กฎตามกำหนดเวลา

ตรวจสอบสถานะของโฆษณาโดยตรวจสอบในช่วงระยะเวลาที่กำหนดไว้ เพื่อดูว่าโฆษณาตรงตามเกณฑ์ evaluation_spec หรือไม่ สำหรับกฎตามกำหนดเวลานั้นจะต้องมี schedule_spec เพิ่มเติม

curl \
-F 'name=Rule 1' \
-F 'evaluation_spec={
    ...
   }' \
-F 'execution_spec={
    ...
   }' \
-F 'schedule_spec={
     "schedule_type": "DAILY"
   }' \

-F "access_token=<ACCESS_TOKEN>" \
https://graph.facebook.com/<VERSION>/<AD_ACCOUNT_ID>/adrules_library

ข้อมูลจำเพาะของกำหนดเวลา

schedule_spec ของกฎจะเป็นตัวกำหนดว่าคุณต้องการให้กฎทำงานบ่อยแค่ไหน โดยเราจะระบุช่วงระยะเวลานี้ในช่องschedule_type

ประเภทของกำหนดเวลา คำอธิบาย

DAILY

เรียกใช้กฎตอนเที่ยงคืนในโซนเวลาของบัญชีโฆษณา

HOURLY

เรียกใช้กฎทุกต้นชั่วโมง

SEMI_HOURLY

เรียกใช้กฎทุกครึ่งชั่วโมง

CUSTOM (ตัวอย่าง)

เรียกใช้กฎตามกำหนดเวลาที่กำหนดเอง

หาก schedule_type เป็น CUSTOM คุณต้องระบุรายการกำหนดเวลาแบบกำหนดเองหรือเวลาที่ควรเรียกใช้กฎด้วย

ในรายการ schedule ข้อมูลจำเพาะแต่ละรายการสามารถประกอบด้วยช่องต่อไปนี้รวมกันได้ โดยมีข้อกำหนดเดียวคือต้องมี start_minute หรือ days อย่างใดอย่างหนึ่งเป็นอย่างน้อยในแต่ละรายการ

ช่อง คำอธิบาย

start_minute

เวลาเป็นนาทีหลัง 00:00 น. โดยจะต้องเป็นจำนวนที่เพิ่มขึ้นครั้งละ 30 นาที หากคุณตั้งค่าช่องนี้แต่ไม่มี end_minute ค่านี้จะกำหนดเวลาที่จะเรียกใช้กฎอย่างแน่ชัด แต่ถ้าหากมี ระบบจะใช้ end_minute เพื่อกำหนดช่วงเวลาที่จะเรียกใช้กฎ หากไม่ได้ตั้งค่าช่องนี้ไว้ กฎจะเรียกใช้ SEMI_HOURLY สำหรับแต่ละวันใน days

end_minute

เวลาเป็นนาทีหลัง 00:00 น. โดยจะต้องเป็นจำนวนที่เพิ่มขึ้นครั้งละ 30 นาที และเป็นเวลาหลังจาก start_minute หากคุณตั้งค่าไว้ ช่องนี้จะใช้ start_minute เพื่อกำหนดช่วงเวลาที่จะเรียกใช้กฎ หาก end_minute เป็นค่าเดียวกันกับ start_minute ช่องนี้ก็จะกำหนดเวลาที่จะเรียกใช้กฎอย่างแน่ชัดด้วย

days

รายการวันที่จะเรียกใช้กฎ โดยแต่ละวันต้องเป็นค่าตั้งแต่ 0-6 เช่น 0 คือวันอาทิตย์ 1 คือวันจันทร์ เรียงตามลำดับจนสิ้นสุดที่ค่า 6 ซึ่งเป็นวันเสาร์ หากไม่ได้ตั้งค่าช่องนี้ไว้ ระบบจะเรียกใช้กฎตลอด 7 วันโดยอิงตาม start_minute และ end_minute (ถ้ามี)

โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้กำหนดเวลาประเภท CUSTOM ที่หัวข้อ "การกำหนดเวลาขั้นสูง"

ด้านล่างนี้คือตัวอย่างของ evaluation_spec โดยกฎนี้จะใช้กับอ็อบเจ็กต์ทั้งหมดในรายการ ID เริ่มต้นซึ่งมีอิมเพรสชั่นมากกว่า 10000 ในช่วง 7 วันที่ผ่านมา ในกรณีนี้ เราไม่จำเป็นต้องใช้ตัวกรอง entity_type เนื่องจากเรากำหนดรายการอ็อบเจ็กต์เริ่มต้นแบบคงที่โดยใช้ตัวกรอง id ที่ไม่มีอะไรนำหน้า

curl \
-F 'name=Rule 1' \
-F 'schedule_spec={
    ...
   }' \
-F 'evaluation_spec={
      "evaluation_type" : "SCHEDULE",
      "filters" : [
       {
         "field": "time_preset",
         "value": "LAST_7_DAYS",
         "operator": "EQUAL"
       },
       {
         "field": "effective_status",
         "value": ["ACTIVE"],
         "operator": "IN"
       },
       {
         "field": "id",
         "value": [101, 102, 103],
         "operator": "IN"
       },
       {
         "field": "impressions",
         "value": 10000,
         "operator": "GREATER_THAN"
       }
     ]
   }' \
-F 'execution_spec={
    ...
   }' \
-F "access_token=<ACCESS_TOKEN>" \
https://graph.facebook.com/<VERSION>/<AD_ACCOUNT_ID>/adrules_library

ด้านล่างนี้คืออีกตัวอย่างหนึ่ง โดยกฎนี้ใช้กับชุดโฆษณาทั้งหมดที่อยู่ในแคมเปญโฆษณาที่มี ID 101, 102, 103 ซึ่งใช้งบประมาณตลอดอายุการใช้งานเท่านั้น และถูกสร้างขึ้นมาในเวลาไม่ถึง 48 ชั่วโมง ในกรณีนี้ เราไม่จำเป็นต้องใช้ตัวกรอง time_preset เนื่องจากไม่มีตัวกรองข้อมูลเชิงลึก

curl \
-F 'name=Rule 1' \
-F 'schedule_spec={
    ...
   }' \
-F 'evaluation_spec={
      "evaluation_type" : "SCHEDULE",
      "filters" : [
       {
         "field": "entity_type",
         "value": "ADSET",
         "operator": "EQUAL"
       },
       {
         "field": "campaign.id",
         "value": [101, 102, 103],
         "operator": "IN"
       },
       {
         "field": "budget_reset_period",
         "value": ["LIFETIME"],
         "operator": "IN"
       },
       {
         "field": "hours_since_creation",
         "value": 48,
         "operator": "LESS_THAN"
       },
     ]
   }' \
-F 'execution_spec={
    ...
   }' \
-F "access_token=<ACCESS_TOKEN>" \
https://graph.facebook.com/<VERSION>/<AD_ACCOUNT_ID>/adrules_library

ด้านล่างนี้คือตัวอย่างของ execution_spec โดยกฎนี้จะเพิ่มงบประมาณของอ็อบเจ็กต์การจับคู่ทั้งหมด 10% โดยสามารถดำเนินการได้สูงสุด 5 ครั้ง ซึ่งหมายความว่าสำหรับทุกอ็อบเจ็กต์ที่อาจจับคู่ได้ แต่ละอ็อบเจ็กต์จะสามารถเพิ่มงบประมาณได้ 10% ได้สูงสุดที่ 5 ครั้ง

curl \
-F 'name=Rule 1' \
-F 'schedule_spec={
    ...
   }' \
-F 'evaluation_spec={
    ...
   }' \
-F 'execution_spec={
     "execution_type": "CHANGE_BUDGET",
     "execution_options": [
       {
         "field": "change_spec",
         "value": {
           "amount": 10,
           "unit": "PERCENTAGE"
         },
         "operator": "EQUAL"
       },
       {
         "field": "execution_count_limit",
         "value": 5,
         "operator": "EQUAL"
       }
     ]
   }' \
-F "access_token=<ACCESS_TOKEN>" \
https://graph.facebook.com/<VERSION>/<AD_ACCOUNT_ID>/adrules_library

ด้านล่างนี้คืออีกตัวอย่างหนึ่ง โดยกฎนี้จะหยุดอ็อบเจ็กต์การจับคู่ทั้งหมดไว้ชั่วคราวและส่งอีเมลไปยังรายชื่อผู้ใช้

curl \
-F 'name=Rule 1' \
-F 'schedule_spec={
    ...
   }' \
-F 'evaluation_spec={
    ...
   }' \
-F 'execution_spec={
     "execution_type": "PAUSE",
     "execution_options": [
       {
         "field": "user_ids",
         "value": [1001, 1002],
         "operator": "EQUAL"
       }
     ]
   }' \
-F "access_token=<ACCESS_TOKEN>" \
https://graph.facebook.com/<VERSION>/<AD_ACCOUNT_ID>/adrules_library