Supervisa el estado los anuncios mediante comprobaciones a intervalos establecidos para asegurarte de que cumplan con los criterios de evaluation_spec
. Para las reglas basadas en programación, se requiere el campo adicional 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
El campo schedule_spec
de una regla determina con qué frecuencia quieres que se ejecute. Este intervalo se denota en el campo schedule_type
.
Tipo de programación | Descripción |
---|---|
| Ejecuta la regla a medianoche en la zona horaria de la cuenta publicitaria. |
| Ejecuta la regla al comienzo de cada hora. |
| Ejecuta la regla al comienzo de cada media hora. |
| Ejecuta la regla según programaciones personalizadas. |
Si el valor de schedule_type
es CUSTOM
, también debes especificar la lista de programaciones personalizadas o momentos en los que la regla debería ejecutarse.
En la lista schedule
, cada especificación individual puede estar compuesta por una combinación de los siguientes campos. El único requisito es que debe haber al menos un valor de start_minute
o days
en cada entrada.
Campo | Descripción |
---|---|
| Hora en minutos después de las 12:00. Debe ser un múltiplo de 30 minutos. Si se establece y no hay ningún valor de |
| Hora en minutos después de las 12:00. Debe ser un múltiplo de 30 minutos y ser posterior al valor de |
| Lista de días para ejecutar la regla. Cada día deber ser un valor de |
Para obtener más información sobre cómo utilizar las programaciones del tipo CUSTOM
, consulta Programación avanzada.
A continuación se muestra un ejemplo de evaluation_spec
. Esta regla se aplica a todos los objetos de la lista inicial de identificadores que han tenido más de 10000
impresiones en los últimos siete días. En este caso, no es necesario el filtro entity_type
, ya que se ha definido una lista estática de objetos iniciales mediante el filtro id
sin prefijo.
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
A continuación se muestra otro ejemplo. Esta regla se aplica a todos los conjuntos de anuncios de campañas publicitarias con los identificadores 101, 102, 103
que utilizan únicamente presupuestos totales y que se han creado en las últimas 48 horas. En este caso, no es necesario el filtro time_preset
, ya que no hay filtros de insights.
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
A continuación se muestra un ejemplo de execution_spec
. Esta regla incrementa un 10 % el presupuesto de todos los objetos coincidentes, con un límite máximo de ejecución de cinco veces. Esto quiere decir que el presupuesto individual de cada objeto que podría ser potencialmente coincidente solo podrá incrementarse un 10 % un máximo de cinco veces.
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
A continuación se muestra otro ejemplo. Esta regla pone en pausa todos los objetos coincidentes y envía un correo electrónico a una lista de usuarios.
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