Quy tắc dựa trên lịch chạy

Giám sát trạng thái của quảng cáo bằng cách kiểm tra quảng cáo theo khoảng thời gian đã đặt để xem quảng cáo đó có đáp ứng tiêu chí evaluation_spec hay không. Đối với Quy tắc dựa trên lịch chạy, bạn cần có thêm 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

Quy cách lịch chạy

schedule_spec của một quy tắc sẽ xác định tần suất bạn muốn chạy quy tắc đó. Chúng tôi biểu thị khoảng thời gian này trong trường schedule_type.

Loại lịch chạy Mô tả

DAILY

Chạy quy tắc vào nửa đêm theo múi giờ của tài khoản quảng cáo.

HOURLY

Chạy quy tắc vào đầu mỗi giờ.

SEMI_HOURLY

Chạy quy tắc vào đầu mỗi nửa giờ.

CUSTOM (Ví dụ)

Chạy quy tắc theo lịch chạy đã tùy chỉnh.

Nếu schedule_typeCUSTOM, bạn cũng phải chỉ định danh sách lịch chạy tùy chỉnh hoặc thời điểm chạy quy tắc.

Trong danh sách schedule, mỗi quy cách riêng lẻ có thể được kết hợp từ các trường sau đây. Yêu cầu duy nhất là mỗi mục nhập phải tồn tại ít nhất một trong hai trường start_minute hoặc days.

Trường Mô tả

start_minute

Thời gian tính bằng phút sau 12:00. Phải là bội số của 30 phút. Nếu được đặt và không có end_minute, trường này sẽ xác định thời gian chính xác để chạy quy tắc. Nếu không, trường này sẽ sử dụng end_minute để xác định khoảng thời gian chạy quy tắc. Nếu bạn không đặt trường này, quy tắc sẽ chạy SEMI_HOURLY cho mỗi ngày trong days.

end_minute

Thời gian tính bằng phút sau 12:00. Phải là bội số của 30 phút và sau start_minute. Nếu được đặt, trường này sẽ sử dụng start_minute để xác định khoảng thời gian chạy quy tắc. Nếu end_minute giống với start_minute, trường này cũng sẽ xác định thời gian chính xác để chạy quy tắc.

days

Danh sách các ngày chạy quy tắc. Mỗi ngày phải là một giá trị nằm trong khoảng 0-6. 0 là Chủ Nhật, 1 là thứ Hai và cứ như vậy, kết thúc bằng 6 là thứ Bảy. Nếu bạn không đặt trường này, quy tắc sẽ chạy vào cả 7 ngày dựa trên start_minuteend_minute (nếu có).

Để biết thêm thông tin về cách sử dụng loại lịch chạy CUSTOM, hãy xem bài viết Lên lịch nâng cao.

Dưới đây là một ví dụ về evaluation_spec. Quy tắc này áp dụng cho mọi đối tượng trong danh sách ID ban đầu mà có hơn 10000 lượt hiển thị trong 7 ngày qua. Trong trường hợp như vậy, chúng ta không cần bộ lọc entity_type, vì chúng ta đã xác định một danh sách tĩnh các đối tượng ban đầu bằng bộ lọc id không có tiền tố.

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

Dưới đây là một ví dụ khác. Quy tắc này áp dụng cho mọi nhóm quảng cáo trong chiến dịch quảng cáo có ID là 101, 102, 103, chỉ sử dụng ngân sách trọn đời và đã được tạo trong chưa đầy 48 giờ. Trong trường hợp như vậy, chúng ta không cần bộ lọc time_preset vì không có bộ lọc Thông tin chi tiết.

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

Dưới đây là một ví dụ về execution_spec. Quy tắc này sẽ tăng ngân sách của mọi đối tượng trùng khớp lên 10%, với giới hạn thực thi tối đa là 5 lần. Tức là đối với mọi đối tượng có thể trùng khớp, mỗi đối tượng chỉ được tăng ngân sách lên 10% nhiều nhất là 5 lần.

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

Dưới đây là một ví dụ khác. Quy tắc này sẽ tạm dừng mọi đối tượng trùng khớp và gửi email đến danh sách người dùng.

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