La API de marketing te permite crear públicos objetivo personalizados a partir de la información de los clientes. Esta incluye direcciones de correo electrónico, números de teléfono, nombres, fechas de nacimiento, género, ubicaciones, identificadores de usuario de la app, identificadores de usuarios específicos de la página, identificadores de publicidad de Apple (IDFA) o identificadores de publicidad de Android.
La cuenta comercial de Meta, también conocida como cuenta del administrador comercial o simplemente cuenta comercial, cambiará su nombre por el de portfolio comercial. Este cambio se implementará gradualmente en las tecnologías de Meta. El cambio es únicamente estético y no afecta los identificadores de la cuenta comercial de Meta (identificadores del portfolio comercial).
Como propietario de los datos de tu empresa, eres responsable de crearlos y administrarlos. Esto incluye la información de tus sistemas de administración de relaciones con los clientes (CRM). Para crear públicos, debes compartir tus datos en formato hash con el objetivo de mantener la privacidad. Consulta Uso de cifrado y normalización de datos. Meta los compara con el resto de sus datos en formato hash y determina si se debe agregar a un usuario de Facebook al público de tu anuncio.
Puedes agregar una cantidad ilimitada de registros a un público, pero solo un máximo de 10.000 a la vez. Los cambios en tus públicos personalizados no se aplican de inmediato y generalmente demoran hasta 24 horas. La cantidad de registros que solicites eliminar y/o la cantidad de públicos personalizados que contenga tu cuenta aumentará el tiempo de procesamiento de esta solicitud.
Para mejorar la forma en que los anunciantes crean y administran los públicos, se marcarán de forma continua para su eliminación los públicos personalizados de un archivo de clientes que no se usaron en ningún conjunto de anuncios activo durante dos años. Es necesario que nos proporciones tus instrucciones antes de que realicemos cualquier acción. Cuando se mueven los públicos al estado "Expiring Audience" y se marca, es necesario que brindes instrucciones, ya sea que utilices los públicos marcados en un conjunto de anuncios activos, que se considerará como la instrucción de conservar el público, o que decidas no usarlos, lo que se interpretará como la instrucción de eliminar el público. Para obtener más información, consulta la documentación de información general sobre los públicos personalizados.
Si compartes eventos de conversión mediante la API de conversiones, puedes crear un sitio web de un público personalizado sin subir datos adicionales. No obstante, puedes continuar subiendo información de los clientes admitida para crear un público personalizado de un archivo de clientes.
Usa nuestra nueva API de reemplazo para eliminar por completo usuarios existentes de un público y reemplazarlos por un nuevo conjunto de usuarios. Una actualización de público realizada con la API de reemplazo no hace que tu conjunto de anuncios regrese a la fase de aprendizaje.
Especifica subtype=CUSTOM
y customer_file_source
en tu llamada a la API.
curl -X POST \
-F 'name="My new Custom Audience"' \
-F 'subtype="CUSTOM"' \
-F 'description="People who purchased on my website"' \
-F 'customer_file_source="USER_PROVIDED_ONLY"' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/act_<AD_ACCOUNT_ID>/customaudiences
Nombre | Descripción |
---|---|
Cadena de enumeración | Describe cómo se recopiló originalmente la información de cliente en tu público personalizado.
|
Cadena | Nombre del público personalizado |
Cadena | Descripción del público personalizado |
Cadena | Tipo de público personalizado |
Usa una llamada a la API POST
al punto de conexión /{audience_id}/users
para especificar la lista de usuarios que quieres agregar a tu público personalizado.
Nombre | Descripción |
---|---|
Objeto JSON | Obligatorio Ejemplo { "session_id":9778993, "batch_seq":10, "last_batch_flag":true, "estimated_num_total":99996 } |
Objeto JSON | Obligatorio Ejemplo { "schema":"EMAIL_SHA256", "data": [ ["<HASHED_DATA>"], ["<HASHED_DATA>"], ["<HASHED_DATA>"] ] } |
Si el 1 de junio de 2023 o después de esa fecha quieres activar el uso limitado de datos en el caso de las personas de California mediante el uso de públicos personalizados creados a partir de listas de clientes, deberás cargar nuevos públicos o actualizar los que ya tengas con la marca de uso limitado de datos. Actualiza periódicamente tus públicos y los estados de uso limitado de datos de las personas según sea necesario.
Ten en cuenta que una marca de uso limitado de datos que se aplica a un usuario de un público no se transferirá automáticamente a distintos públicos. De igual manera, los anunciantes deben administrar los públicos personalizados creados a partir de listas de clientes preexistentes por separado según los criterios que seleccionen. La marca de uso limitado de datos debe aplicarse por separado a cada público que se utiliza para realizar la publicidad.
Para DESACTIVAR el uso limitado de datos (LDU
) del registro de forma explícita, puedes enviar una matriz data_processing_options
vacía o eliminar el campo en la carga útil. Ejemplo de una matriz vacía:
{ "payload": { "schema": [ "EMAIL", "DATA_PROCESSING_OPTIONS" ], "data": [ [ "<HASHED_DATA> ", [] ] ] } }
Para activar el LDU
de manera explícita y que Meta realice la geolocalización (si no se incluyen ni el estado ni el país del registro determinado), especifica una matriz que contenga LDU
en cada uno de los registros:
{ "payload": { "schema": [ "EMAIL", "DATA_PROCESSING_OPTIONS" ], "data": [ [ "<HASHED_DATA> ", ["LDU"] ] ] } }
Para activar el LDU y especificar la ubicación de forma manual:
{ "customer_consent": true, "payload": { "schema": [ "EMAIL", "DATA_PROCESSING_OPTIONS", "DATA_PROCESSING_OPTIONS_COUNTRY", "DATA_PROCESSING_OPTIONS_STATE" ], "data": [ [ "<HASHED_DATA>", ["LDU"], 1, 1000 ] ] } }
session
Nombre | Descripción |
---|---|
Número entero positivo de 64 bits | Obligatorio |
Número entero positivo | Obligatorio |
Booleano | Obligatorio Indica a nuestros sistemas que se proporcionaron todos los lotes de la sesión de reemplazo en curso. Cuando se configura el valor |
Número entero | Opcional |
Una respuesta satisfactoria incluye un objeto JSON con los siguientes campos:
Nombre | Descripción |
---|---|
Cadena numérica | Identificador del público |
Número entero | El identificador de sesión que enviaste. |
Número entero | Número total de usuarios recibidos por el momento en la sesión en curso |
Número entero | Número de entradas enviadas con cifrado incorrecto. Esas entradas no devolvieron una coincidencia ni se agregaron al público personalizado. Este no es un número exacto, pero representa el rango de números de usuarios sin coincidencia. |
Matriz JSON | Hasta 100 muestras de entradas no válidas en la solicitud en curso |
Obtén más información sobre cómo compartir tu público personalizado con objetos del negocio.
Usa una llamada a la API DELETE
al punto de conexión /{audience_id}/users
para especificar la lista de usuarios que quieres eliminar de tu público personalizado.
curl -X DELETE \ --data-urlencode 'payload={ "schema": "EMAIL_SHA256", "data": [ "<HASHED_DATA>", "<HASHED_DATA>", "<HASHED_DATA>" ] }' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<CUSTOM_AUDIENCE_ID>/users
O bien, puedes agregar el parámetro method
y configurarlo como DELETE
en la solicitud POST
que se usa para agregar miembros del público.
También puedes excluir a personas de una lista con EXTERN_ID
, si está disponible.
curl -X DELETE \ --data-urlencode 'payload={ "schema": "EXTERN_ID", "data": [ "<ID>", "<ID>", "<ID>" ] }' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<CUSTOM_AUDIENCE_ID>/users
Puedes eliminar una lista de personas de todos los públicos personalizados en tu cuenta publicitaria con este punto de conexión.
Esta información podría no procesarse por varios motivos. Por ejemplo, si la cuenta publicitaria no pertenece a un portfolio comercial, todavía no aceptaste las Condiciones de los públicos personalizados o la información no coincide con un usuario.
Para eliminar una cuenta del centro de cuentas, incluye los mismos campos que se usan en la actualización de usuario y haz una llamada HTTP DELETE
a:
https://graph.facebook.com/<API_VERSION>/act_<AD_ACCOUNT_ID>/usersofanyaudience
Para aumentar la proporción de coincidencias de tus registros, proporciona claves múltiples en una matriz de claves individuales; por ejemplo, [EXTERN_ID
, LN
, FN
, EMAIL
]. Si bien no es necesario que cifres EXTERN_ID
, sí debes cifrar toda la información de identificación personal de los miembros del público, como correos electrónicos y nombres. Consulta información detallada en Cifrado y normalización de datos.
Puedes especificar algunas o todas las claves múltiples de un registro. Para obtener más detalles, consulta la información sobre la coincidencia de identificadores externos de claves múltiples.
curl \ -F 'payload={ "schema": [ "FN", "LN", "EMAIL" ], "data": [ [ "<HASH>", "<HASH>", "<HASH>" ], [ "<HASH>", "<HASH>", "<HASH>" ] ] }' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<CUSTOM_AUDIENCE_ID>/users
PAGEUID
Si usas la clave PAGEUID
, también debes incluir una lista de los identificadores de la página. Solo puedes enviarnos un PAGEUID
, que debería ser una matriz con un solo elemento.
curl -X POST \ -F 'payload={ "schema": [ "PAGEUID" ], "is_raw": "true", "page_ids": [ "<PAGE_IDs>" ], "data": [ [ "<HASH>", "<ID>", "<ID>", "<VALUE>" ], [ "<HASH>", "<ID>", "<ID>", "<VALUE>" ], [ "<HASH>", "<ID>", "<ID>", "<VALUE>" ] ] }' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<CUSTOM_AUDIENCE_ID>/users
Debes cifrar los datos como SHA256
; no admitimos otros mecanismos de cifrado. Esto es obligatorio para todos los datos, excepto los identificadores externos, los identificadores de usuario de app, los identificadores de usuario específicos de la página y los identificadores de anunciantes en celulares.
Antes de cifrar tus datos, normalízalos para que podamos procesar la acción. Solo el nombre (FN
) y el apellido (LN
) admiten caracteres especiales y alfabetos no romanos. Para obtener los mejores resultados de coincidencia, proporciona la traducción al alfabeto romano sin caracteres especiales.
para ver ejemplos de datos cifrados y normalizados correctamente de los parámetros que se indican a continuación.
Clave | Normas |
---|---|
| Cifrado obligatorio |
| Cifrado obligatorio |
| Cifrado obligatorio |
| Cifrado obligatorio |
| Cifrado obligatorio |
| Cifrado obligatorio |
| Cifrado obligatorio |
| Cifrado obligatorio |
| Cifrado obligatorio |
| Cifrado obligatorio |
| Cifrado obligatorio |
| Cifrado obligatorio Usa códigos de país de dos letras en minúscula en formato ISO 3166-1 alfa-2. |
| Cifrado NO obligatorio Utiliza minúsculas y conserva los guiones. |
Proporciona valores SHA256
para las claves normalizadas y las representaciones HEX
de este valor; utiliza minúscula para las letras de la A a la F. La función hash en PHP convierte el correo electrónico y el número de teléfono normalizados.
Ejemplo: | Resultado |
---|---|
| f1904cf1a9d73a55fa5de0ac823c4403ded71afd4c3248d00bdcd0866552bb79 |
| 1ef970831d7963307784fa8688e8fce101a15685d62aa765fed23f3a2c576a4e |
Puedes hacer coincidir personas para un público con tus propios identificadores, conocidos como identificadores externos (EXTERN_ID
). Puede ser cualquier identificador único del anunciante, como identificadores de membresías de fidelidad, identificadores de usuarios e identificadores de cookies externas.
Si bien no es necesario que cifres este identificador, sí debes cifrar toda la información de identificación personal que envíes con los EXTERN_ID
.
Para que las coincidencias funcionen mejor, también deberías usar el mismo formato cuando envíes los identificadores. Por ejemplo, si eliges utilizar la función de cifrado mediante SHA256, asegúrate de usar el mismo valor de cifrado.
Puedes utilizar estos identificadores como claves individuales para eliminar personas de públicos personalizados o crear nuevos públicos personalizados. De este modo, no es necesario que vuelvas a subir ninguna otra clave que coincida. Si etiquetas a alguien con información personal cifrada y EXTERN_ID
, asignamos una prioridad menor a EXTERN_ID
cuando buscamos coincidencias con personas en Facebook.
El período de retención de datos de EXTERN_ID
es de 90 días.
Puedes volver a usar la asignación de EXTERN_ID
para crear públicos personalizados de un archivo personalizado en una misma cuenta publicitaria.
Si tienes un público creado a partir de los campos EXTERN_ID
en tu cuenta publicitaria, crea un nuevo público únicamente con los siguientes identificadores:
curl \ -F 'payload={"schema":"EXTERN_ID","data":["<ID>","<ID>"]}' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<CUSTOM_AUDIENCE_ID>/users
También puedes agregar a personas etiquetadas con EXTERN_ID
y con coincidencia de claves múltiples.
curl \ -F 'payload={ "schema": [ "EXTERN_ID", "FN", "EMAIL", "LN" ], "data": [ [ "<ID>", "<HASH>", "<HASH>", "<HASH>" ], [ "<ID>", "<HASH>", "<HASH>", "<HASH>" ], [ "<ID>", "<HASH>", "<HASH>", "<HASH>" ] ] }' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<CUSTOM_AUDIENCE_ID>/users
Admitimos los parámetros EXTERN_ID
para cuentas publicitarias individuales. No podemos usar valores de una cuenta publicitaria en ninguna otra cuenta publicitaria, incluso aunque las cuentas pertenezcan a la misma entidad.
El punto de conexión /<CUSTOM_AUDIENCE_ID>/usersreplace
te permite realizar 2 acciones con una llamada a la API:
Usar el punto de conexión /<CUSTOM_AUDIENCE_ID>/usersreplace
te permite eliminar automáticamente todos los usuarios preexistentes, en lugar de tener que subir una lista de los usuarios que deseas eliminar. Este punto de conexión tampoco restablece la fase de aprendizaje del conjunto de anuncios cuando un público es parte de los conjuntos de anuncios activos, lo que se diferencia de las llamadas a la API "POST" o "DELETE" al punto de conexión /<CUSTOM_AUDIENCE_ID>/users
.
La API de reemplazo de usuarios solo funciona con públicos que cumplen con los siguientes requisitos:
/<CUSTOM_AUDIENCE_ID>/users
para agregar o eliminar usuarios.CUSTOM
.Antes de empezar el proceso de reemplazo, te recomendamos lo siguiente:
operation_status
de tu público sea Normal
. No se puede realizar otra operación de reemplazo si ya hay una en ejecución.
No agregues ni elimines usuarios mediante /<CUSTOM_AUDIENCE_ID>/users
durante una operación de reemplazo en curso a través de /<CUSTOM_AUDIENCE_ID>/usersreplace
. Si intentas ejecutar una segunda operación de reemplazo antes de que finalice la primera, recibirás un mensaje en el que se te indicará que ya hay una operación de reemplazo en curso.
El intervalo de duración máximo de una sesión de reemplazo es de 90 minutos. La API rechazará los lotes de una sesión que se hayan recibido 90 minutos después de iniciada la sesión. Si necesitas enviar lotes por más de 90 minutos, espera hasta que finalice la operación de reemplazo de dicha sesión y luego utilizar la operación de adición del punto de conexión /<CUSTOM_AUDIENCE>/users
para el resto de las subidas.
Una vez que esté listo tu público, especifica la lista de usuarios que deseas reemplazar por tu público personalizado con una llamada POST
al /<CUSTOM_AUDIENCE_ID>/usersreplace
.
operation_status
de tu público cambiará a replace_in_progress
. operation_status
cambiará a replace_error
.Puedes incluir los siguientes parámetros en tu llamada POST
a /<CUSTOM_AUDIENCE_ID>/usersreplace
:
Nombre | Descripción |
---|---|
Tipo: objeto JSON | Obligatorio. Se utiliza para hacer un seguimiento si se subió un lote de usuarios específico. Debe incluir un identificador de sesión e información de lote. Consulta Campos de sesión. Puedes agregar hasta 10.000 personas a un público en un momento determinado. Si cuentas con más de 10.000 personas, divide tu sesión en varios lotes, que deben tener un identificador de sesión. Ejemplo: { 'session_id':9778993, 'batch_seq':10, 'last_batch_flag':true, 'estimated_num_total':99996 } |
Tipo: objeto JSON | Obligatorio. Se utiliza para proporcionar información que deseas subir para tu público. Debe incluir esquemas y datos. Para obtener más información, consulta Campos de carga. Ejemplo: { "schema":"EMAIL", "data":["<HASHED_EMAIL>", "<HASHED_EMAIL>", "<HASHED_EMAIL>" ] } |
Nombre | Descripción |
---|---|
Tipo: número entero de 64 bits | Obligatorio. Se utiliza para hacer un seguimiento de la sesión. Debes generar este identificador y el número debe ser único dentro de la misma cuenta publicitaria. |
Tipo: entero | Obligatorio. Debe comenzar en |
Tipo: booleano | Opcional. Indica que se proporcionaron todos los lotes de la sesión de reemplazo en curso. Si no se configura como "true", no se aceptarán más lotes en esa sesión. Si no configuras esta marca, la sesión terminará automáticamente 90 minutos después de que haya recibido el primer lote. Se descartarán los lotes que se reciban después de los 90 minutos. |
Tipo: entero | Opcional. Total estimado de usuarios que se cargarán en esta sesión. Se utiliza en nuestro sistema para mejorar el procesamiento de una sesión. |
Nombre | Descripción |
---|---|
Tipo: cadena o | Obligatorio. Especifica el tipo de información que proporcionarás. Puede ser una clave única o claves múltiples de esta lista:
|
Tipo: JSON_Array | Obligatorio. Lista de datos correspondiente a un esquema. Ejemplos:
|
Una vez que hagas tu solicitud POST
, recibirás una respuesta con los siguientes campos:
Nombre | Descripción |
---|---|
Tipo: entero | El identificador de la cuenta. |
Tipo: entero | El identificador de la sesión que proporcionaste. |
Tipo: entero | Número total de usuarios recibidos hasta el momento en la sesión en curso. |
Tipo: entero | Número total de usuarios con un formato no válido o que no se pueden descodificar. Si este número es distinto de cero, vuelve a comprobar los datos. |
| Hasta 100 muestras de entradas no válidas en la solicitud en curso. Vuelve a comprobar los datos. |
Todos los errores que se devuelven del punto de conexión de reemplazo tienen el código de error 2650. Aquí, te mostramos algunos de los subcódigos de error más comunes, además de proporcionarte orientación sobre cómo resolverlos.
Subcódigo de error | Descripción | Qué hacer |
---|---|---|
1870145 | Actualización de público en curso | No puedes reemplazar un público personalizado de una lista de clientes que está en proceso de actualización. Espera a que la disponibilidad del público pase a "Normal" y vuelve a intentarlo. |
1870158 | Se agotó el tiempo de espera de la sesión de reemplazo | Alcanzaste el límite de 90 minutos de la sesión de reemplazo de lotes. Se reemplazará el público personalizado de la lista de clientes con los datos que actualizaste hasta el momento. Para agregar más lotes al público personalizado, espera que termine el proceso de reemplazo y luego usa la operación |
1870147 | Lote de subida no válido para reemplazo | No se detectó la primera |
1870159 | Finalizó la sesión de reemplazo | Esta operación de reemplazo ya finalizó porque subiste un lote con |
1870148 | Se produjo un error | Tu lista de clientes no se actualizó completamente. Si el tamaño de tu público es muy diferente al esperado, considera volver a intentarlo. |
1870144 | Tamaño de DFCA no admitido para reemplazo | No puedes reemplazar un público personalizado de una lista de clientes que tiene un tamaño de 100 millones o más. |
Hay otros tipos de públicos que puedes desarrollar y a los que puedes dirigirte, o que puedes compartir:
Públicos personalizados de tu sitio web: crea un público en función de las personas que visitaron una página específica o realizaron una acción en tu sitio web. Crea un público en función de los datos del píxel de Facebook en tu sitio.
Públicos personalizados de tu app para celulares: crea un público en función de las personas que utilizan tu app para celulares. Crea un público en función de los datos de eventos de la app.
Públicos similares: identifica a las personas que ya conoces y muestra anuncios a personas similares en la app de Facebook.
Públicos personalizados offline: crea un público en función de las personas que visitaron tu tienda, realizaron llamadas a tu servicio de atención al cliente o realizaron acciones con otros medios offline.
Públicos de interacción de Canvas: crea un público que incluya a todas las personas que interactuaron con tu Canvas.