Especificación de la evaluación

El objetivo principal de la evaluation_spec de una regla es determinar los objetos sobre los que la regla debe ejecutar la acción. El evaluation_type determina el tipo de método de evaluación y presenta las siguientes opciones:

Tipo de evaluación Descripción

SCHEDULE

Para reglas basadas en programación

TRIGGER

Para reglas basadas en activación

La evaluation_spec contiene una matriz de filters, que te permite continuar restringiendo la lista de objetos coincidentes. Por ejemplo, puedes establecer filtros en metadatos de anuncios, conjuntos de anuncios y métricas de campañas publicitarias y de estadísticas. Se evalúan todos los filtros juntos con el operador AND.

La matriz de filters contiene una lista de objetos de filtros. Estos objetos son diccionarios con claves de field, value y operator:

Claves de objetos de filtro Descripción

field

Obligatorio.

Campo de filtro, como datos de estadísticas o metadatos

value

Obligatorio.

Valor del filtro estático del campo

operator

Obligatorio.

Operador lógico del campo

Cada filtro admite una serie operadores lógicos. Estos son los operadores lógicos admitidos en las reglas SCHEDULE y TRIGGER:

Operador lógico Valor (ejemplo)

GREATER_THAN

Numérico (100)

LESS_THAN

Numérico (100)

EQUAL

Numérico (100)

NOT_EQUAL

Numérico (100)

IN_RANGE

Tupla ([100, 200])

NOT_IN_RANGE

Tupla ([100, 200])

IN

Lista (["1", "2", "3"])

NOT_IN

Lista (["1", "2", "3"])

CONTAIN

Cadena ("ABC")

NOT_CONTAIN

Cadena ("ABC")

ANY

Lista ([1, 2, 3])

ALL

Lista ([1, 2, 3])

NONE

Lista ([1, 2, 3])

La evaluation_spec requiere un trigger en relación con el tipo de evaluación TRIGGER. El activador contiene un tipo y una especificación de filtro subyacente. Las especificaciones de filtro pueden ser field, value y operator.

El activador determina de forma dinámica si debemos evaluar una regla o no, y solo puedes tener uno. Consulta Reglas basadas en activación para obtener más información.

A continuación, definimos algunos filtros especiales y grupos generales de filtros que puedes usar.

Filtros especiales

time_preset

El filtro time_preset determina el período en el que agregamos las métricas de estadísticas. De momento, solo permitimos un time_preset. Se aplica a todos los filtros estadísticos de la regla, incluso el utilizado para el activador, si está disponible.

El único operador admitido de time_preset es EQUAL, que es obligatorio, siempre y cuando haya disponible un filtro o activador de estadísticas. Las reglas basadas en activación solo admiten valores predefinidos de tiempo que incluyen TODAY, porque realiza una evaluación en tiempo real.

Los valores predefinidos de tiempo de las reglas pueden comportarse de manera diferente a otras interfaces. Algunos de los valores predefinidos de tiempo que se indican aquí incluyen los datos de hoy. Esto se debe a que los datos de hoy son vitales para las reglas que se ejecutan con mayor frecuencia que a diario. En lo que respecta a otras interfaces, un valor predefinido de LAST_N_DAYS no suele incluir los datos de hoy. Consulta las siguientes descripciones para obtener más información.

{
  "field": "time_preset",
  "value": "TODAY",
  "operator": "EQUAL"
}
Valores predefinidos de tiempo Descripción

LIFETIME

Vida útil del objeto

TODAY

El día actual comienza a la medianoche de la zona horaria de la cuenta publicitaria

LAST_2_DAYS

YESTERDAY y TODAY

LAST_3_DAYS

Últimos 2 días completos y TODAY

LAST_7_DAYS

Últimos 6 días completos y TODAY

LAST_14_DAYS

Últimos 13 días completos y TODAY

LAST_28_DAYS

Últimos 27 días completos y TODAY

LAST_30_DAYS

Últimos 29 días completos y TODAY

THIS_MONTH

Este mes, incluido TODAY

THIS_WEEK_MON_TODAY

Esta semana, donde el lunes es el primer día de la semana, incluido TODAY

THIS_WEEK_SUN_TODAY

Esta semana, donde el sábado es el primer día de la semana, incluido TODAY

YESTERDAY

El día anterior completo, con excepción de TODAY

LAST_2D

Últimos 2 días completos, con excepción de TODAY

LAST_3D

Últimos 3 días completos, con excepción de TODAY

LAST_7D

Últimos 7 días completos, con excepción de TODAY

LAST_14D

Últimos 14 días completos, con excepción de TODAY

LAST_28D

Últimos 28 días completos, con excepción de TODAY

LAST_30D

Últimos 30 días completos, con excepción de TODAY

LAST_ND_14_8

De los últimos 14 días a los últimos 7 días, con fines de ROAS

LAST_ND_30_8

De los últimos 30 días a los últimos 7 días, con fines de ROAS

LAST_ND_60_8

De los últimos 60 días a los últimos 7 días, con fines de ROAS

LAST_ND_120_8

De los últimos 120 días a los últimos 7 días, con fines de ROAS

LAST_ND_180_8

De los últimos 180 días a los últimos 7 días, con fines de ROAS

LAST_ND_LIFETIME_8

Vida útil a los últimos 7 días, con fines de ROAS

LAST_ND_60_29

De los últimos 60 días a los últimos 28 días, con fines de ROAS

LAST_ND_120_29

De los últimos 120 días a los últimos 28 días, con fines de ROAS

LAST_ND_180_29

De los últimos 180 días a los últimos 28 días, con fines de ROAS

LAST_ND_LIFETIME_29

Vida útil a los últimos 28 días, con fines de ROAS

attribution_window

El filtro attribution_window determina el intervalo de retroceso sobre el que se agregan las métricas de las estadísticas. Para obtener más información, consulta la documentación sobre estadísticas referida a los intervalos de atribución.

Actualmente, solo permitimos un attribution_window y se aplica a todos los filtros estadísticos de la regla. El único operador admitido de attribution_window es EQUAL y solo puede usarse con las reglas basadas en programación.

Ya sea que se especifique o no, el único value de attribution_window permitido es ACCOUNT_DEFAULT.

{
  "field": "attribution_window",
  "value": "ACCOUNT_DEFAULT",
  "operator": "EQUAL"
}
Valores del intervalo de atribución Descripción

ACCOUNT_DEFAULT

Usar la configuración del intervalo de atribución en el nivel de la cuenta

Filtros de metadatos

Con los filtros de metadatos, puedes filtrar objetos en función del estado actual de tus campos de metadatos. Estos filtros también admiten filtros multinivel, lo que significa que puedes usar prefijos para aplicar un filtro de metadatos a los objetos principales y ascendientes del principal. Esto no afecta a los otros filtros. Los filtros de estadísticas se siguen aplicando al objeto normal.

Las reglas programadas admiten todos los filtros de metadatos, pero solo se admite un subconjunto respecto de las reglas de activación.

Por ejemplo, si quieres una regla que se aplique a conjuntos de anuncios de campañas publicitarias cuyo objetivo es WEBSITE_CLICKS, puedes incluir dos filtros:

 "filters" : [
  {
    "field": "entity_type",
    "value": "ADSET",
    "operator": "EQUAL",
  },
  {
    "field": "campaign.objective",
    "value": "WEBSITE_CLICKS",
    "operator": "EQUAL"
  }
]

Filtros de metadatos que admiten las reglas basadas en activación y programación

Campo de metadatosDescripción

id*

Objetos estáticos específicos a los que se aplica la regla.


Prefijos admitidos: anuncio, conjunto de anuncios y campaña publicitaria


Valores admitidos:int y array(int)


Operadores admitidos:EQUAL, IN y NOT_IN

entity_type*

El nivel de objeto al que se aplica la regla.


Prefijos admitidos: ninguno


Valores admitidos:AD, ADSET y CAMPAIGN


Operadores admitidos:EQUAL

name

El nombre del objeto, por coincidencia parcial o completa.


Prefijos admitidos: anuncio, conjunto de anuncios y campaña publicitaria


Valores admitidos:string


Operadores admitidos:EQUAL, CONTAIN y NOT_CONTAIN

adlabel_ids

Los identificadores de la etiqueta del anuncio del objeto.


Prefijos admitidos: anuncio, conjunto de anuncios y campaña publicitaria


Valores admitidos:array(int)


Operadores admitidos:ANY, ALL, NONE

objective

El objetivo de la campaña publicitaria del objeto.


Prefijos admitidos: campaña publicitaria


Valores admitidos:array(APP_INSTALLS, BRAND_AWARENESS, CONVERSIONS, EVENT_RESPONSES, LINK_CLICKS, ...)


Operadores admitidos:IN y NOT_IN

start_time

Fecha y hora de inicio del objeto.


Prefijos admitidos: conjunto de anuncios y campaña publicitaria


Valores admitidos:int


Operadores admitidos:GREATER_THAN, LESS_THAN, IN_RANGE y NOT_IN_RANGE

stop_time

Fecha y hora de finalización del objeto.


Prefijos admitidos: conjunto de anuncios y campaña publicitaria


Valores admitidos:int


Operadores admitidos:GREATER_THAN y LESS_THAN

buying_type

El tipo de compra de la campaña publicitaria del objeto.


Prefijos admitidos: campaña publicitaria


Valores admitidos:array(AUCTION, FIXED_CPM, RESERVED)


Operadores admitidos:IN y NOT_IN

billing_event

El evento de facturación del conjunto de anuncios del objeto.


Prefijos admitidos: conjunto de anuncios


Valores admitidos:array(APP_INSTALLS, LINK_CLICKS, IMPRESSIONS, ...)


Operadores admitidos:IN y NOT_IN

optimization_goal

El objetivo de optimización del conjunto de anuncios del objeto.


Prefijos admitidos: conjunto de anuncios


Valores admitidos:array(APP_INSTALLS, LINK_CLICKS, IMPRESSIONS, ...)


Operadores admitidos:IN y NOT_IN

is_autobid

El estado de la puja automática del conjunto de anuncios del objeto.


Prefijos admitidos: conjunto de anuncios


Valores admitidos:array(bool)


Operadores admitidos:IN y NOT_IN

daily_budget

El presupuesto diario del conjunto de anuncios del objeto.


Prefijos admitidos: conjunto de anuncios


Valores admitidos:int


Operadores admitidos:GREATER_THAN, LESS_THAN, IN_RANGE y NOT_IN_RANGE

lifetime_budget

El presupuesto total del conjunto de anuncios del objeto.


Prefijos admitidos: conjunto de anuncios


Valores admitidos:int


Operadores admitidos:GREATER_THAN, LESS_THAN, IN_RANGE y NOT_IN_RANGE

spend_cap

El límite de gasto de la campaña publicitaria del objeto.


Prefijos admitidos: campaña publicitaria


Valores admitidos:int


Operadores admitidos:GREATER_THAN, LESS_THAN, IN_RANGE y NOT_IN_RANGE

bid_amount

El importe de la puja del objeto.


Prefijos admitidos: anuncio, conjunto de anuncios


Valores admitidos:int


Operadores admitidos:GREATER_THAN, LESS_THAN, IN_RANGE y NOT_IN_RANGE

created_time

La hora del período de creación del objeto.


Prefijos admitidos: anuncio, conjunto de anuncios y campaña publicitaria


Valores admitidos:int


Operadores admitidos:GREATER_THAN, LESS_THAN, IN_RANGE y NOT_IN_RANGE

updated_time

La hora del período de actualización del objeto.


Prefijos admitidos: anuncio, conjunto de anuncios y campaña publicitaria


Valores admitidos:int


Operadores admitidos:GREATER_THAN, LESS_THAN, IN_RANGE y NOT_IN_RANGE

Los filtros de metadatos que solo admiten las reglas basadas en programación

Campo de metadatosDescripción

effective_status**

Estados efectivos del objeto.


Prefijos admitidos: anuncio, conjunto de anuncios y campaña publicitaria


Valores admitidos:array(ACTIVE, PAUSED, ADSET_PAUSED, CAMPAIGN_PAUSED, PENDING_REVIEW, ARCHIVED, DELETED, DISAPPROVED, PREAPPROVED, PENDING_BILLING_INFO)


Operadores admitidos:IN y NOT_IN

placement.page_types

Los tipos de páginas de ubicación del conjunto de anuncios del objeto.


Prefijos admitidos: conjunto de anuncios


Valores admitidos:array(DESKTOPFEED, HOME, INSTAGRAMSTREAM, INSTAGRAMSTORY, ...)


Operadores admitidos:ANY, ALL, NONE

budget_reset_period

El período de restablecimiento del presupuesto del conjunto de anuncios del objeto.


Prefijos admitidos: conjunto de anuncios


Valores admitidos:array(DAY, LIFETIME)


Operadores admitidos:IN y NOT_IN

hours_since_creation

Horas transcurridas desde la created_time del objeto.


Prefijos admitidos: anuncio, conjunto de anuncios y campaña publicitaria


Valores admitidos:int


Operadores admitidos:GREATER_THAN, LESS_THAN, IN_RANGE y NOT_IN_RANGE

estimated_budget_spending_percentage

El porcentaje del presupuesto de tu conjunto de anuncios que se estima que se gastará al final de su programación. Usa el mismo mecanismo que emplea nuestra función de volver a equilibrar el presupuesto de conjuntos de anuncios, por lo que funciona con cualquier tipo de presupuesto, aunque es necesario que el conjunto de anuncios se muestre un mínimo de diez horas diarias.


Prefijos admitidos: conjunto de anuncios


Valores admitidos:int


Operadores admitidos:GREATER_THAN, LESS_THAN, IN_RANGE y NOT_IN_RANGE

audience_reached_percentage

El porcentaje estimado del alcance del conjunto de anuncios respecto al tamaño de su público.


Prefijos admitidos: conjunto de anuncios


Valores admitidos:int


Operadores admitidos:GREATER_THAN, LESS_THAN, IN_RANGE y NOT_IN_RANGE

active_time

Segundos transcurridos desde que el objeto tenía un estado efectivo de ACTIVE. Si el objeto no está ACTIVE en este momento, este campo devuelve 0.


Prefijos admitidos: anuncio, conjunto de anuncios y campaña publicitaria


Valores admitidos:int


Operadores admitidos:GREATER_THAN, LESS_THAN, IN_RANGE y NOT_IN_RANGE

current_time

Fecha y hora actual.


Prefijos admitidos: ninguno


Valores admitidos:int


Operadores admitidos:GREATER_THAN, LESS_THAN, IN_RANGE y NOT_IN_RANGE

entity_type y id

En relación con las reglas del tipo de evaluación SCHEDULE o TRIGGER, debes especificar un filtro entity_type o id.

Cuando especificas un filtro entity_type, determinas un nivel de objeto dinámico al que se aplicará la regla. Por ejemplo, si entity_type es AD, dicha regla evalúa automáticamente los nuevos anuncios que se agregan a la cuenta publicitaria. Esto sucede independientemente del momento en que creas la regla. Al especificar un filtro id, la regla solo se aplica a una lista estática de objetos.

Si especificas un filtro idsin prefijo, calculamos de manera automática el nivel de objeto al que se aplicará la regla. Por ejemplo, si deseas aplicar una regla a los anuncios [123, 456], solo necesitas un campo de filtro id, el valor [123, 456] y el operador IN. En este caso, entity_type no es necesario, ya que proporcionaste una lista estática inicial de objetos, y podemos calcular el nivel del objeto a partir de esos objetos.

Puedes usar entity_type y id junto con filtros multinivel. Por ejemplo, si quieres una regla que se aplique a todos los anuncios de algunos conjuntos de anuncios determinados, puedes tener un filtro entity_type de adset.id y un filtro AD con los conjuntos de anuncios especificados.

De forma predeterminada, si no especificas un filtro effective_status, agregamos implícitamente un filtro effective_status al evaluar la regla.

En relación con todos los tipos de ejecución que actúan sobre objetos activos, este filtro predeterminado tiene un operador de IN y un valor de ['ACTIVE', 'PENDING_REVIEW']. Esto significa que la regla solo evalúa los objetos que tienen o tendrán entrega activa. En lo que respecta a los tipos de ejecución que no actúan sobre objetos activos (UNPAUSE), agregamos este filtro con un operador NOT_IN y un valor de ['DELETED', 'ARCHIVED']. El filtro predeterminado es una optimización interna de nuestros tipos de ejecución.

Filtros de estadísticas

Evaluamos los filtros de estadísticas comparándolos con los valores actuales devueltos de la API de estadísticas de un determinado time_preset. Estos filtros se aplican directamente en la lista o el nivel de objetos, y no admiten filtros multinivel. Todos los filtros de estadísticas admiten los siguientes operadores: GREATER_THAN, LESS_THAN, EQUAL, IN_RANGE y NOT_IN_RANGE.

Las unidades que se muestran aquí se calculan en función de la base de la divisa de la API de marketing. Por ejemplo, en el caso de USD, la unidad base es el centavo, lo que significa que un valor de 1.000 de gasto equivale a 10,00 USD.

Para obtener una descripción de cada uno de los campos que figuran a continuación, consulta la documentación de la API de estadísticas. Las reglas basadas en programación admiten todos estos filtros.

A continuación, encontrarás una lista de los filtros de estadísticas, donde se indica si las reglas basadas en activación los admiten:

Campo de estadísticas ¿Las reglas basadas en activación lo admiten?

mobile_app_purchase_roas (ejemplo)

No

website_purchase_roas (ejemplo)

No

impressions

unique_impressions

clicks

unique_clicks

spent

results

cost_per

cpc

cpm

ctr

cpa

cpp

reach

frequency

leadgen

link_ctr

cost_per_unique_click

result_rate

mobile_app_install

cost_per_mobile_app_install

app_custom_event

app_custom_event.fb_mobile_achievement_unlocked

app_custom_event.fb_mobile_activate_app

app_custom_event.fb_mobile_add_payment_info

app_custom_event.fb_mobile_add_to_cart

app_custom_event.fb_mobile_add_to_wishlist

app_custom_event.fb_mobile_complete_registration

app_custom_event.fb_mobile_content_view

app_custom_event.fb_mobile_initiated_checkout

app_custom_event.fb_mobile_level_achieved

app_custom_event.fb_mobile_purchase

app_custom_event.fb_mobile_rate

app_custom_event.fb_mobile_search

app_custom_event.fb_mobile_spent_credits

app_custom_event.fb_mobile_tutorial_completion

app_custom_event.other

cost_per_mobile_achievement_unlocked

cost_per_mobile_activate_app

cost_per_mobile_add_payment_info

cost_per_mobile_add_to_cart

cost_per_mobile_add_to_wishlist

cost_per_mobile_complete_registration

cost_per_mobile_content_view

cost_per_mobile_initiated_checkout

cost_per_mobile_level_achieved

cost_per_mobile_purchase

cost_per_mobile_rate

cost_per_mobile_search

cost_per_mobile_spent_credits

cost_per_mobile_tutorial_completion

offline_conversion

No

offline_conversion.add_payment_info

No

offline_conversion.add_to_cart

No

offline_conversion.add_to_wishlist

No

offline_conversion.complete_registration

No

offline_conversion.initiate_checkout

No

offline_conversion.lead

No

offline_conversion.other

No

offline_conversion.purchase

No

offline_conversion.search

No

offline_conversion.view_content

No

cost_per_offline_conversion

No

cost_per_offline_other

No

offsite_conversion

offsite_conversion.fb_pixel_add_payment_info

offsite_conversion.fb_pixel_add_to_cart

offsite_conversion.fb_pixel_add_to_wishlist

offsite_conversion.fb_pixel_complete_registration

offsite_conversion.fb_pixel_initiate_checkout

offsite_conversion.fb_pixel_lead

offsite_conversion.fb_pixel_purchase

offsite_conversion.fb_pixel_search

offsite_conversion.fb_pixel_view_content

offsite_conversion.fb_pixel_other

cost_per_add_payment_info_fb

cost_per_add_to_cart_fb

cost_per_add_to_wishlist_fb

cost_per_complete_registration_fb

cost_per_initiate_checkout_fb

cost_per_lead_fb

cost_per_purchase_fb

cost_per_search_fb

cost_per_view_content_fb

link_click

cost_per_link_click

like

offsite_engagement

post

post_comment

post_engagement

cost_per_post_engagement

No

post_like

post_reaction

view_content

video_play

vote

unique_clicks

No

reach

No

lifetime_impressions

No

lifetime_spent

No

today_spent

No

yesterday_spent

No

Filtros avanzados

Puedes personalizar y derivar campos avanzados en función de los filtros de estadísticas y de metadatos anteriores. Para obtener más información, consulta Filtros avanzados de especificaciones de evaluación.

Todos los filtros avanzados admiten los siguientes operadores: GREATER_THAN, LESS_THAN, EQUAL, IN_RANGE y NOT_IN_RANGE. Solo los admiten las reglas basadas en programación.

En relación con los filtros avanzados más usados, admitimos el uso de un alias como filtro:

Alias de campo avanzado Derivado de

daily_ratio_spent

today_spent / adset.daily_budget

lifetime_ratio_spent

lifetime_spent / adset.lifetime_budget