Règles basées sur un calendrier

Surveillez à intervalles définis l’état de vos publicités en fonction des critères evaluation_spec. Pour les règles basées sur un calendrier, une schedule_spec supplémentaire est obligatoire.

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

Spécification de programmation

La schedule_spec d’une règle détermine la fréquence à laquelle vous souhaitez qu’elle s’exécute. Cet intervalle est spécifié dans le champ schedule_type.

Type de programmation Description

DAILY

Exécutez la règle à minuit dans le fuseau horaire du compte publicitaire.

HOURLY

Exécutez la règle au début de chaque heure.

SEMI_HOURLY

Exécutez la règle au début de chaque demi-heure.

CUSTOM (Exemple)

Personnalisez les horaires d’exécution de la règle.

Si schedule_type est défini sur CUSTOM, vous devez renseigner la liste des calendriers personnalisés ou les horaires d’exécution de la règle.

Dans la liste schedule, chaque spécification peut être composée d’une combinaison des champs suivants. La seule condition est d’intégrer au moins start_minute ou days dans chaque entrée.

Champ Description

start_minute

Temps en minutes après minuit. Par incréments de 30 minutes. En l’absence de end_minute, ce champ détermine l’heure exacte à laquelle la règle sera exécutée. Sinon, il détermine avec end_minute la plage horaire d’exécution de la règle. Quand ce champ n’est pas utilisé, la règle est exécutée toutes les 30 minutes (SEMI_HOURLY) chaque jour spécifié dans le champ days.

end_minute

Temps en minutes après minuit. Par incréments de 30 minutes ; doit être ultérieur à start_minute. Quand il est précisé, il détermine avec start_minute la plage horaire d’exécution de la règle. Si les valeurs de end_minute et start_minute sont identiques, elles déterminent aussi l’heure exacte à laquelle la règle sera exécutée.

days

Jours pendant lesquels la règle sera exécutée. Chaque jour correspond à une valeur comprise entre 0-6. 0 correspond à dimanche, 1 à lundi, et ainsi de suite, jusqu’à 6 pour samedi. Si ce champ n’est pas utilisé, la règle sera exécutée chaque jour de la semaine en fonction des valeurs de start_minute et, le cas échéant, de end_minute.

Pour plus d’informations sur l’utilisation des types de calendriers CUSTOM, consultez Planification avancée.

Voici un exemple de evaluation_spec. Cette règle s’applique à tous les objets de la liste initiale d’ID qui, au cours des 7 derniers jours, ont enregistré plus de 10000 impressions. Dans ce cas, le filtre entity_type est inutile puisque nous avons défini une liste statique d’objets initiaux à l’aide du filtre id sans préfixe.

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

Voici un autre exemple. Cette règle s’applique à tous les ensembles de publicités dans les campagnes publicitaires associées aux ID 101, 102, 103 qui utilisent uniquement des budgets globaux et qui ont été créés depuis moins de 48 heures. Dans ce cas, le filtre time_preset est inutile puisqu’il n’y a pas de filtres statistiques.

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

Voici un exemple de execution_spec. Cette règle augmente le budget de tous les objets correspondants de 10 %, avec une exécution limitée à 5 fois. Cela signifie que pour chaque objet susceptible de correspondre, le budget peut augmenter de 10 % cinq fois maximum.

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

Voici un autre exemple. Cette règle met en pause tous les objets correspondants et envoie un e-mail à une liste d’utilisateur·ices.

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