設定された間隔で広告をチェックして、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
フィールドに記録されます。
スケジュールのタイプ | 説明 |
---|---|
| 広告アカウントのタイムゾーンで深夜0時にルールを実行します。 |
| 毎正時にルールを実行します。 |
| 正時から30分ごとにルールを実行します。 |
| カスタマイズされたスケジュールでルールを実行します。 |
schedule_type
がCUSTOM
の場合、カスタムスケジュールのリストまたはルール実行のタイミングも指定する必要があります。
schedule
リスト内の個々の設定は、それぞれ以下のフィールドの組み合わせによって構成することができます。唯一の要件は、どの項目にもstart_minute
かdays
のどちらかが存在しなければならないという点です。
フィールド | 説明 |
---|---|
| 午前0時からの経過分数。30分の倍数でなければなりません。これが設定されていて、 |
| 午前0時からの経過分数。 |
| ルールを実行する日のリスト。どの日も |
スケジュールタイプCUSTOM
の使い方について詳しくは、高度なスケジューリングをご覧ください。
evaluation_spec
の例を以下に示します。このルールは、IDの初期リストに含まれるオブジェクトのうち、過去7日間にインプレッションが10000
を超えたすべてのものに適用されます。この場合、初期オブジェクトの静的リストがプレフィックスなしの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
以下にもう1つの例を示します。このルールは、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
以下にもう1つの例を示します。このルールは、マッチするすべてのオブジェクトを一時停止し、ユーザーリストに宛てて電子メールを送信します。
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