API para anunciantes
¿Qué puedes promocionar?
- Los anuncios promocionados son anuncios normales que compran los anunciantes que quieren llegar a un grupo más amplio de usuarios o generar interacción por parte de sus seguidores existentes.
- Los anuncios promocionados están claramente etiquetados como Promocionados cuando un anunciante paga por su aparición en X. En todos los demás aspectos, los anuncios promocionados se comportan igual que los anuncios normales y se pueden volver a publicar, responder, indicar “Me gusta”, etc. Tienen reglas de entrega típicas y se crean usando POST statuses/update.
- “Promoted-only” Tweets, creados mediante POST accounts/:account_id/tweet, se pueden usar en campañas de Tweets promocionados, pero no se mostrarán a los seguidores ni aparecerán en la cronología pública. Para obtener una lista de Tweets “Promoted-only” de una cuenta determinada, usa GET accounts/:account_id/scoped_timeline.
- Las cuentas promocionadas forman parte de A quién seguir, que sugiere cuentas que las personas aún no siguen y que pueden encontrar interesantes. Las cuentas promocionadas ayudan a presentar una variedad aún más amplia de cuentas que pueden interesar a los usuarios.
- Las cuentas promocionadas para Timeline asocian un Tweet promocionado con una campaña de cuentas promocionadas y se muestran en las timelines de los usuarios.
Campañas y Grupos de Anuncios (Line Items)
Analítica
La X Ads API ofrece un conjunto de endpoints de analítica para rastrear y optimizar el rendimiento de los anuncios. Consulta Analytics y Analytics Best Practices para obtener más información. Para la métrica de facturación, es posible que los datos no estén finalizados hasta tres días después del evento. Antes de ese momento, los datos deben considerarse especulativos. La cifra final facturable siempre será menor que el valor especulativo. La cifra facturable se ajusta para descontar el spam y el tráfico de baja calidad relacionado. Consulta Timezones para otras consideraciones relacionadas con las zonas horarias.Creación de una campaña - Paso a paso
-t para trazar la llamada; es aproximadamente equivalente a la opción -v de cURL.
En este ejemplo, crearemos una campaña de Promoted Ads segmentada por palabra clave.
- Obtén el id de la cuenta.
- Recupera el id del instrumento de financiación.
- Crea una campaña y asóciala con el instrumento de financiación.
- Crea un elemento de línea asociado a la campaña.
- Crea un perfil de segmentación asociado con el line item.
- Por último, reactiva la partida.
Campañas basadas en objetivos
objective apropiado en los line items.
El parámetro utilizado en los endpoints de escritura de line items y devuelto en los endpoints de lectura es objective. Este campo tiene los siguientes valores posibles en la actualidad:
APP_ENGAGEMENTSAPP_INSTALLSFOLLOWERSENGAGEMENTSREACHVIDEO_VIEWSPREROLL_VIEWSWEBSITE_CLICKS
APP_ENGAGEMENTS, CPAC o CPI para APP_INSTALLS, CPLC para WEBSITE_CLICKS, CPF para FOLLOWERS, CPE para ENGAGEMENTS y CPM para REACH.
Las campañas de promoción de aplicaciones móviles deben contener obligatoriamente el objetivo APP_ENGAGEMENTS o APP_INSTALLS.
Nota: No se permiten line items con objetivos diferentes dentro de la misma campaña.
Instrumentos de financiación
funding_instruments de una cuenta, consulta GET accounts/:account_id/funding_instruments y GET accounts/:account_id/funding_instruments/:funding_instrument_id para obtener los detalles de uno específico.
Atributos del instrumento de financiación
account_id, id del instrumento de financiación, type del instrumento de financiación, description y io_header (ID del encabezado de orden de inserción). Ten en cuenta que un solo io_header puede estar asociado con múltiples instrumentos de financiación.
Capacidad de financiación: able_to_fund y reasons_not_able_to_fund.
Tiempo: created_at, updated_at, start_time y end_time, representados mediante una cadena con el formato “%Y-%m-%dT%l:%M:%S%z”.
Estado booleano: paused, deleted y cancelled (true o false).
Financiero: currency (formato ISO-4217), credit_limit_local_micro, credit_remaining_local_micro y funded_amount_local_micro. El valor de una moneda se representa en micros. Para USD, $5.50 se codifica como 5.50*1e6, es decir, 5,500,000. Para representar un “valor entero”, debes multiplicar el valor local en micros por 1e6 (1_000_000) para todas las monedas.
Detalles de los atributos
credit_limit_local_micro solo es válido para instrumentos de financiación de tipo CREDIT_CARD o CREDIT_LINE y representa el límite de crédito de ese instrumento.
funded_amount_local_micro solo es válido para instrumentos de financiación de tipo INSERTION_ORDER y representa el presupuesto asignado.
credit_remaining_local_micro es válido para instrumentos de financiación de tipo CREDIT_LINE y AGENCY_CREDIT_LINE. Representa credit_limit_local_micro menos el importe ya gastado en ese instrumento de financiación. No representa la diferencia entre funded_amount_local_micro y el importe gastado. Hacemos una distinción entre límite de crédito e importe financiado porque representan distintos métodos de financiación subyacentes y diferentes acuerdos de gasto que tenemos con los anunciantes.
Tipos de instrumentos de financiación
CREDIT_LINE type).
Segmentación
Opciones de segmentación por ubicación
- X Search: segmentación por edad, dispositivos, eventos, género, tipos de palabras clave (todas), idioma, ubicaciones, activación de red, operadores de red, plataforma, versión de la plataforma, audiencias personalizadas, solo WiFi
- X Timeline: segmentación por edad, dispositivos, eventos, seguidores de, similares a seguidores de, género, intereses, idioma, ubicaciones, activación de red, operadores de red, tipos de palabras clave no exactas, tipos de audiencia de socios, plataforma, versión de la plataforma, tipos de resegmentación, audiencias personalizadas, tipos de segmentación por TV, solo WiFi
- X Profiles & Tweet Details: segmentación por edad, dispositivos, eventos, seguidores de, similares a seguidores de, género, intereses, idioma, ubicaciones, activación de red, operadores de red, tipos de palabras clave no exactas, tipos de audiencia de socios, plataforma, versión de la plataforma, tipos de resegmentación, audiencias personalizadas, tipos de segmentación por TV, solo WiFi
Comprender los tipos de segmentación
null para segmentar a todos.
Installed App Store Categories: usa este tipo de segmentación para llegar a usuarios según las categorías de apps que han instalado o en las que han indicado interés. Consulta GET targeting_criteria/app_store_categories.
Interests: Segmenta a los usuarios por intereses. Obtén la lista de intereses desde GET targeting_criteria/interests. Puedes segmentar hasta 100 intereses.
Followers Of: Segmenta a los seguidores de cualquier usuario totalmente promocionable de la cuenta actual (ten en cuenta que, actualmente, el titular principal de la cuenta es el único usuario totalmente promocionable de esa cuenta). Usa GET accounts/:account_id/promotable_users para obtener una lista de usuarios promocionables.
Similar to Followers Of: Segmenta a personas con los mismos intereses que los seguidores de usuarios específicos. Puedes usar hasta 100 Users.
Locations: Especifica hasta 2,000 ubicaciones para segmentar. Obtén la lista desde GET targeting_criteria/locations. Hay requisitos adicionales para anuncios que segmentan a ciertos países. Consulta Country Targeting and Display Requirements para obtener más información.
Keywords: Las opciones de segmentación por palabras clave son específicas según el tipo de emplazamiento del anuncio. Puedes usar hasta 1,000 palabras clave para la segmentación (por line item). Consulta la sección Keyword Types para ver las opciones.
Language Targeting: Segmenta a usuarios que entienden idiomas específicos.
Mobile Network Operator Targeting: Permite a los anunciantes segmentar usuarios según el operador móvil, usando el tipo de segmentación NETWORK_OPERATOR de GET targeting_criteria/network_operators.
New Mobile Device Targeting: Llega a los usuarios según la fecha en que accedieron por primera vez a X desde su dispositivo, usando el tipo de segmentación NETWORK_ACTIVATION_DURATION con operator_type de LT para menor que y GTE para mayor o igual que.
Platforms, Platform Versions, Devices y Wifi-Only: Permiten segmentar dispositivos móviles según una variedad de vectores. Platforms es un tipo de segmentación de alto nivel que puede abarcar categorías amplias de teléfonos. Los valores de ejemplo son iOS y Android. Devices permite segmentar a usuarios de dispositivos móviles específicos, por ejemplo iPhone 5s, Nexus 4 o Samsung Galaxy Note. Platform versions permite segmentar a usuarios de versiones específicas de sistemas operativos móviles, hasta el nivel de la versión puntual. Ejemplos incluyen iOS 7.1 y Android 4.4. Wifi-Only permite segmentar solo a aquellos usuarios que usan sus dispositivos en una red WiFi; si esto no se configura, se segmentará a usuarios que usan tanto la conexión del operador como WiFi.
- Los usuarios pueden segmentar plataformas y dispositivos si no hay superposición. Puedo segmentar BlackBerry como plataforma e iPad Air como dispositivo simultáneamente.
- Los usuarios pueden segmentar dispositivos y versiones de sistema operativo simultáneamente. Puedo segmentar iPad Air y iOS >= 7.0.
- Los usuarios no pueden segmentar plataformas que sean más amplias que los dispositivos. No puedo segmentar iOS e iPad Air.
TV_SHOW. Usa los endpoints GET targeting_criteria/tv_markets y GET targeting_criteria/tv_shows para determinar los programas de TV disponibles.
Tweet Engager Retargeting
Tweet engager retargeting permite a los anunciantes segmentar audiencias en múltiples dispositivos que anteriormente hayan estado expuestas o hayan interactuado con sus Tweets promocionados u orgánicos en X. Con esta segmentación, los anunciantes pueden volver a impactar a personas que vieron o interactuaron con el contenido de un anunciante en X y que tienen más probabilidades de seguir interactuando o de convertir con mensajes u ofertas posteriores. Los usuarios serán aptos para la segmentación a los pocos minutos de la exposición o interacción y seguirán siéndolo hasta 90 días después para interacciones y 30 días para exposiciones.
Tipos de segmentación de Tweet engager:
ENGAGEMENT_TYPE, que aceptaIMPRESSIONoENGAGEMENTcomo valor de segmentación. Esto especifica si quieres segmentar usuarios expuestos (IMPRESSION) o usuarios que interactuaron (ENGAGEMENT).CAMPAIGN_ENGAGEMENTusa un ID de campaña como valor de segmentación. Los usuarios que interactuaron con esta campaña o estuvieron expuestos a ella (segúnENGAGEMENT_TYPE) son quienes serán segmentados.USER_ENGAGEMENT, que usa el ID de usuario promocionado como valor de segmentación para llegar a usuarios que estuvieron expuestos o interactuaron con el contenido orgánico de un anunciante (segúnENGAGEMENT_TYPE). Este debe ser el ID de usuario promocionado asociado con la cuenta de Ads.
ENGAGEMENT_TYPE es obligatorio además de al menos un valor válido de CAMPAIGN_ENGAGEMENT o USER_ENGAGEMENT. Ambos tipos de segmentación de Tweet engager pueden estar presentes y se pueden segmentar varias campañas en un mismo line item.
Video Viewer Targeting: Video viewer targeting se basa en la segmentación de Tweet engager para permitir a los anunciantes segmentar audiencias que anteriormente hayan visto parte o la totalidad de un video en X. Los anunciantes pueden segmentar videos orgánicos, videos promocionados o ambos. Los videos promocionados no se limitan a campañas o line items con objetivo de visualizaciones de video.
Tipos de Video Viewer Targeting:
VIDEO_VIEWpara usuarios que han hecho clic para reproducir el video o han visto 3 segundos de reproducción automáticaVIDEO_VIEW_PARTIALpara usuarios que han visto el 50% del videoVIDEO_VIEW_COMPLETEpara usuarios que han visto al menos el 95% del video
ENGAGEMENT_TYPE:
CAMPAIGN_ENGAGEMENTusa un ID de campaña como valor de segmentación. Los usuarios que vieron un video (segúnENGAGEMENT_TYPE) en esta campaña son quienes serán segmentados.USER_ENGAGEMENT, que usa el ID de usuario promocionado como valor de segmentación para llegar a usuarios que vieron un video (segúnENGAGEMENT_TYPE) en el contenido orgánico de un anunciante. Este debe ser el ID de usuario promocionado asociado con la cuenta de Ads.
- Broad (valor predeterminado): hace coincidir todas las palabras, independientemente del orden. No es sensible a mayúsculas, plurales ni tiempos verbales. Se expandirá automáticamente cuando sea posible (es decir, “car repair” también coincidiría con “automobile fix”). Si quieres segmentar sin expansión, debes añadir un signo + antes de las palabras clave, como “+boat +jet”. Usar palabras clave sin el + tendrá como valor predeterminado Broad Match.
- Unordered (en desuso): hace coincidir todas las palabras, independientemente del orden. No es sensible a mayúsculas, plurales ni tiempos verbales.
- Phrase: hace coincidir la cadena exacta de palabras clave; puede haber otras palabras clave presentes.
- Exact: hace coincidir exactamente la cadena de palabras clave, y no ninguna otra.
- Negative: evita hacer coincidir búsquedas que incluyan todas estas palabras clave en cualquier parte de la consulta, independientemente del orden en que estén escritas, incluso si hay otras palabras presentes.
- Negative Phrase: evita hacer coincidir búsquedas que incluyan esta cadena exacta de palabras clave en cualquier parte de la consulta, incluso si hay otras palabras presentes.
- Negative Exact: evita hacer coincidir búsquedas que coincidan exactamente con estas palabras clave y no contengan otras palabras.
Combinaciones de criterios de segmentación
Los criterios de segmentación se combinarán para tu grupo de anuncios de la siguiente manera:
- Los tipos de segmentación “primarios” se combinarán mediante ∪ (es decir, se pondrán en una unión lógica).
- Los otros tipos de segmentación se combinarán con AND.
- Los mismos tipos se combinarán con OR.
- usuarios de X en EE. UU., Inglaterra y Canadá (Ubicación)
- que sean mujeres (Género)
- provenientes de una lista de audiencias personalizadas (“Primario”)
- con palabras clave (“Primario”)
Ejemplos adicionales
- Seleccionar género y ubicación geográfica pero sin criterio principal: (Male) AND (US OR GB)
- Seleccionar género, ubicación geográfica, intereses: (Female) AND (CA) AND (Computers OR Technology OR Startups)
- Seleccionar género, ubicación geográfica, intereses, Audiencias personalizadas (Tailored Audiences), palabras clave: (Male) AND (GB) AND (Cars ∪ Tailored Audiences for CRM ∪ autocross)
Ritmo de presupuesto
standard_delivery en false para establecer un ritmo de entrega acelerado (consulta GET accounts/:account_id/campaigns).
Notas
- El “día” corresponde a la zona horaria de la cuenta de anunciante de X (por ejemplo, America/Los_Angeles).
- Los primeros resultados indican que la entrega estándar mejora el eCPE/CPF para los anunciantes, con una cobertura más uniforme a lo largo del día.
Puja basada en objetivos
Estrategia de puja
goal equivalente. Puedes encontrar más información en el anuncio aquí.
Por ejemplo:
Puja objetivo
Con la puja objetivo, puedes especificar un costo objetivo que quieres pagar y la plataforma de X Ads optimizará tu campaña en función del rendimiento, manteniéndose cerca o por debajo de tu costo objetivo. Esta función te ofrece la flexibilidad de llegar a usuarios que tienen una probabilidad especialmente alta de realizar la acción deseada (como hacer clic en un enlace, generar un lead o realizar un follow), manteniendo al mismo tiempo el control de los costos. Es una función potente para anunciantes que desean más opciones para la configuración y optimización de campañas (incluidas las opciones de puja). Para los elementos de línea con objetivos de campaña compatibles, hemos introducido un nuevo mecanismo de precios para el monto de la puja que te permite especificar un costo objetivo que quieres pagar. Nuestra plataforma de anuncios puja dinámicamente en tu nombre para ayudarte a obtener más resultados, mientras trabaja para mantener tu costo promedio dentro del 20% de tu objetivo especificado. La configuraciónbid_strategy en los elementos de línea puede configurarse con un valor de TARGET para habilitar la puja objetivo en objetivos de campaña relevantes, como:
WEBSITE_CLICKSWEBSITE_CONVERSIONSAPP_INSTALLSAPP_ENGAGEMENTSREACH
Requisitos de segmentación por país y de visualización
Rusia
Instrumentos de financiación gestionados por el partner
Configuración inicial del partner
- El partner debe compartir su clave pública PGP/GPG. Debe intercambiarse una clave secreta compartida entre el partner de la Ads API y X. Esta se utilizará para verificar los datos durante el flujo de incorporación.
- El
app_ido elconsumer_secretde la App de X que se utilizará para acceder a la Ads API. Puedes ver y editar tus Apps de X existentes mediante el panel de Apps si has iniciado sesión en tu cuenta de X en developer.x.com. Si necesitas crear una App de X, deberás tener una cuenta de desarrollador aprobada. X permite una App para producción+sandbox y una App opcional solo para sandbox. La App de X debe crearse en una cuenta corporativa de X controlada por el partner.
Flujo de incorporación del anunciante
- El usuario inicia el flujo de incorporación en el sitio web del partner e introduce el handle que desea incorporar.
- El partner redirige al usuario a una URL en ads.x.com con un payload firmado. Este payload contiene el
app_idde la API del partner, eluser_idde X del handle de X que se va a incorporar, así como una URL de callback y otros campos documentados a continuación. - Se le pide al usuario que inicie sesión en ads.x.com utilizando la página de inicio de sesión estándar de x.com.
- Una vez que el usuario ha iniciado sesión, se inicia el proceso de incorporación. Este paso incluye la revisión de anuncios, la validación de la cuenta y otras comprobaciones.
- Cuando se completan todas las tareas de incorporación, el usuario es redirigido a la URL de callback proporcionada por el partner de la Ads API, con un payload que indica si se ha producido un éxito o un error. Esto incluye el proceso de autorización de tipo 3-legged.
Carga útil de redirección de incorporación
Carga útil de la URL de callback
callback_url en la solicitud de enlace de cuenta (ver arriba). Los parámetros agregados por ads.x.com son:
Para garantizar que la URL de callback solo sea válida para el
user_id de X para el que estaba previsto el proceso de enlace de cuenta, se debe adjuntar el user_id de X al secreto compartido (usando &) al firmar la solicitud.
Firmar las URLs de solicitud y de callback
/link_managed_account y la URL de callback sean válidas, las solicitudes deben firmarse en el origen y ser verificadas por el destinatario antes de que este actúe en consecuencia. Firmar la solicitud con un secreto compartido entre X y el socio gestor garantiza que cada parte solo acepte solicitudes enviadas por la contraparte autorizada.
El algoritmo de generación de la firma es similar al utilizado en OAuth.
Cree una cadena base de firma de la siguiente manera:
- Convierta el método HTTP a mayúsculas y establezca la cadena base igual a este valor.
- Agregue el carácter ‘&’ a la cadena base.
- Codifique con porcentaje (percent-encode) la URL (sin parámetros) y agréguela a la cadena base.
- Agregue el carácter ‘&’ a la cadena base.
- Agregue la cadena de consulta codificada con porcentaje, que se construye de la siguiente manera:
- Codifique con porcentaje cada clave y valor que se firmará.
- Ordene la lista de parámetros alfabéticamente por clave.
- Para cada par clave/valor (y con primary_promotable_user_id para la URL de redirección del socio):
- Agregue la clave codificada con porcentaje a la cadena de consulta.
- Agregue el carácter ‘=’ a la cadena base.
- Agregue el valor codificado con porcentaje a la cadena de consulta.
- Separe los pares clave=valor codificados con porcentaje con el carácter ‘&’.
- Use el algoritmo HMAC-SHA1, utilizando como clave el secreto compartido intercambiado previamente y como valor la cadena base para generar la firma.
- Codifique en Base64 la salida del paso 2, elimine el carácter de nueva línea final, codifique con porcentaje la firma generada en el paso 3 y añádala a la URL en un parámetro de firma.
Ejemplos de firma
fi_description = some name
promotable_user_id = 1 La cadena base, compuesta por el método HTTP y la URL sin parámetros, pasos a - d, se ve así: GET https://ads.x.com/link_managed_account La cadena de consulta (query string), producida por los subpasos de e, se ve así: callback_url=https://managingpartner.com/link_account_callback&client_app_id=12345&fi_description=some name&promotable_user_id=1 Ten en cuenta que los pares clave-valor están ordenados por nombre de clave. La cadena de consulta codificada con porcentajes (percent-encoded) se ve así: callback_url%3Dhttps%253A%252F%252Fmanagingpartner.com%252Flink_account_callback%26client_app_id%3D12345%26fi_description%3Dsome%2520name%26promotable_user_id%3D1 La cadena base completa, combinando los pasos a - d y e: GET https://ads.x.com/link_managed_account&callback_url%3Dhttps%253A%252F%252Fmanagingpartner.com%252Flink_account_callback%26client_app_id%3D12345%26fi_description%3Dsome%2520name%26promotable_user_id%3D1 Usando el algoritmo HMAC-SHA1, firmaremos esto con la palabra “secret” como clave. El resultado se codifica en Base64 y se presenta sin el “\n” final (pasos 2 y 3):
KBxQMMSpKRrtg9aw3qxK4fTXvUc=
Esta firma se añade (codificada con porcentajes) al final de la URL original en el parámetro signature (paso 4):
https://ads.x.com/link_managed_account?callback_url=https%3A%2F%2Fmanagingpartner.com%2Flink_account_callback&client_app_id=12345&fi_description=some%20name&promotable_user_id=1&signature=KBxQMMSpKRrtg9aw3qxK4fTXvUc%3D
Firmar una URL de redirección del socio (callback de solicitud de vinculación de cuenta)
La URL que se firmará, suponiendo una solicitud GET:
https://managingpartner.com/link_account_callback?status=OK&account_id=ABC&funding_instrument_id=DEF
Esta URL tiene los siguientes parámetros:
account_id = ABC, funding_instrument_id = DEF y status = OK
La cadena base, compuesta por el método HTTP y la URL sin parámetros, pasos a - d, se ve así:
GET https%3A%2F%2Fmanagingpartner.com%2Flink_account_callback&“
La cadena de consulta (query string), producida por los subpasos de e, se ve así:
account_id=ABC&funding_instrument_id=DEF&status=OK
La cadena de consulta codificada con porcentajes (percent-encoded) se ve así:
account_id%3DABC%26funding_instrument_id%3DDEF%26status%3DOK
La cadena base completa, combinando los pasos a - d y e:
GET https%3A%2F%2Fmanagingpartner.com%2Flink_account_callback&account_id%3DABC%26funding_instrument_id%3DDEF%26status%3DOK
Usando el algoritmo HMAC-SHA1, firmaremos esto con la palabra “secret” y la id de usuario de X para la cual se realizó la solicitud de vinculación original, 1 (promotable_user_id = 1 de arriba), como clave, “secret&1”.
El resultado se codifica en Base64 y se presenta sin el “\n” final (pasos 2 y 3): jDSHDkHJIFXpPLVxtA3a9d4bPjM=
Esta firma se agrega a continuación (codificada mediante percent-encoding) al final de la URL original en el parámetro signature (paso 4):
https://managingpartner.com/link_account_callback?&status=OK&account_id=ABC&funding_instrument_id=DEF&signature=jDSHDkHJIFXpPLVxtA3a9d4bPjM%3D
El algoritmo de firma debe poder operar con múltiples claves. Esto permitirá utilizar varias claves compartidas y facilitará la rotación periódica de las mismas.
Creación de partner_managed_funding_instrument
Llamadas repetidas al flujo de incorporación / actualización del token
Flujo de error sin redirección
Actualizaciones continuas del PMFI
Ubicaciones
placements. Los valores posibles son:
ALL_ON_TWITTERPUBLISHER_NETWORKTWITTER_PROFILETWITTER_SEARCHTWITTER_TIMELINESPOTLIGHTTREND
product_type y el objective del elemento de línea determinan qué ubicaciones están permitidas. El endpoint GET line_items/placements puede usarse para obtener las opciones de ubicación válidas para cada tipo de producto.
Además, la siguiente tabla muestra las combinaciones válidas de ubicación y objetivo.
Nota: No es posible especificar únicamente la ubicación
TWITTER_PROFILE.
Nota: TWITTER_SEARCH requiere segmentación por palabras clave.
Nota: El objetivo REACH debe incluir la ubicación TWITTER_TIMELINE. Puede incluir ALL_ON_TWITTER, cualquier combinación de ubicaciones que incluya TWITTER_TIMELINE o TWITTER_TIMELINE por sí sola.
Preguntas frecuentes sobre grupos de anuncios
¿Qué es un grupo de anuncios?
¿Cómo creamos un grupo de anuncios?
¿Por qué deberíamos agregar compatibilidad con Ad Groups?
¿Cómo se relaciona el presupuesto del line item con el presupuesto de la campaña en una campaña de Ad Groups?
total_budget_amount_local_micro de un line item no puede exceder el presupuesto total de su campaña padre. Del mismo modo, el valor bid_amount_local_micro del line item no debe exceder daily_budget_amount_local_micro o total_budget_amount_local_micro de la campaña padre. Configurar estos valores de forma incorrecta puede hacer que la campaña general quede en pausa y deje de publicarse.
Ten en cuenta que el presupuesto total de la campaña puede ser menor que la suma de los presupuestos de sus line items hijos, y la distribución del presupuesto entre line items depende en parte de que la herramienta de Ads API lo optimice y lo ajuste de forma eficaz, ya que el rendimiento diario de la segmentación (line item) puede diferir significativamente de un día a otro debido a la naturaleza en tiempo real de X.
¿Tienen mejor rendimiento los grupos de anuncios que los line items individuales?
Guías
Objetivo de vistas de video preroll
Endpoints necesarios
- Chunked media upload (para la carga de video)
- POST accounts/:account_id/media_library (para asociar el video a la cuenta de anuncios)
- POST accounts/:account_id/campaigns (crear campaña)
- GET content_categories (para obtener la correspondencia entre categorías de contenido y categorías IAB)
- GET accounts/:account_id/curated_categories
- GET publishers
- POST accounts/:account_id/line_item_curated_categories
- POST accounts/:account_id/line_items (crear grupo de anuncios)
- POST accounts/:account_id/media_creatives (para asociar el video con el grupo de anuncios)
- POST accounts/:account_id/preroll_call_to_action (configurar el CTA y la URL de redirección)
- POST batch/accounts/:account_id/targeting_criteria (segmentación)
Pasos
Subir el video
Cargar el contenido multimedia de video
media_category=amplify_video en la llamada INIT inicial usando este endpoint. Cargarás el video por partes. Una vez que STATUS devuelva un state de succeeded, puedes continuar con los siguientes pasos. Puedes encontrar más información sobre la carga de contenido multimedia usando el endpoint segmentado en nuestra Descripción general de video promocionado.
Agregar el video a la cuenta de anuncios
STATUS sea succeeded, deberás usar el media_key devuelto por ese endpoint para agregar el video a la biblioteca de medios del anunciante, usando el endpoint POST accounts/:account_id/media_library.
Configura la campaña
Creación de campaña
objective de VIDEO_VIEWS_PREROLL y un product_type de MEDIA. El parámetro categories también se debe establecer en las categorías comerciales del anunciante correspondientes.
Creación de line items
categories en “Science & Education”, es necesario definir el conjunto completo de iab_categories, es decir, "IAB5", "IAB15", en el line item, de la siguiente manera:
Selección de publishers
Categorías seleccionadas
- El elemento de línea debe dirigirse al país adecuado según el country_code de la Categoría seleccionada.
- Se debe usar el endpoint POST line_item_curated_categories para asociar el elemento de línea con un curated_category_id específico.
Categorías de contenido
Nota: El conjunto completo de iab_categories en la respuesta de GET curated_categories debe segmentarse mediante el endpoint de criterios de segmentación. De no hacerlo, se producirá un error de validación.
Asociar el contenido multimedia de la cuenta (vídeo) con el elemento de línea
Configurar el CTA y la URL de destino
VIDEO_VIEWS_PREROLL no utiliza Promoted Tweets ni Cards. En su lugar, el creativo de video se asocia a tu grupo de anuncios (line item) y la información del CTA se asocia a una entidad preroll_call_to_action. El endpoint POST accounts/:account_id/preroll_call_to_action te permite controlar el botón de CTA y la URL de destino.
Definir criterios de segmentación
CONTENT_PUBLISHER_USER como segmentación negativa para excluir que el anuncio se asocie con un conjunto de usuarios. Proporciona el user_id de X o el publisher_user_id de las cuentas que desees excluir.
El endpoint GET publishers se puede usar para obtener la lista de user_id que se van a excluir para Categorías de contenido. El publisher_user_id devuelto en la respuesta de GET curated_categories se puede usar para obtener una lista de exclusión similar para Categorías seleccionadas.
Nota: Se puede excluir un máximo de 5 publisher_user_id para Categorías seleccionadas y 50 user_id para Categorías de contenido.
Lanzar la campaña
Analítica
VIDEO_VIEWS_PREROLL está disponible a través de nuestros endpoints de estadísticas.
Segmentación por palabra clave en líneas de tiempo
¿Cómo funciona?
targeting_type en unordered_keywords o phrase_keywords para los line items.
Guía de inicio rápido
- Crea un nuevo line item con el placement configurado para incluir
ALL_ON_TWITTERoTWITTER_TIMELINEPOST accounts/:account_id/line_items - Crea los criterios de segmentación para este line item recién creado con
BROAD_KEYWORDy establece los valores de tus palabras clave. POST accounts/:account_id/targeting_criteria - Puedes actualizar las palabras clave con PUT accounts/:account_id/targeting_criteria
- Una vez que tu campaña esté activa, obtén las estadísticas de tu line item para medir el rendimiento. GET stats/accounts/:account_id
Referencia de la API
Cuentas
https://ads-api.x.com/12/accounts
Parámetros
https://ads-api.x.com/12/accounts/:account_id
Parameters
Example Request
GET https://ads-api.x.com/12/accounts/18ce54d4x5t
Example Response
https://ads-api-sandbox.x.com/12/accounts
Parámetros
Ninguno
Ejemplo de solicitud
POST https://ads-api-sandbox.x.com/12/accounts
Ejemplo de respuesta
https://ads-api.x.com/12/accounts/:account_id
Parámetros
Ejemplo de solicitud
PUT https://ads-api.x.com/12/accounts/18ce54d4x5t?name='API McTestface 2'&industry_type=TECHNOLOGY
Ejemplo de respuesta
https://ads-api-sandbox.x.com/12/accounts/:account_id
Parámetros
Ejemplo de solicitud
DELETE https://ads-api-sandbox.x.com/12/accounts/gq12fh
Ejemplo de respuesta
Apps de la cuenta
https://ads-api.x.com/12/accounts/:account_id/account_apps
Parameters
Example Request
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/account_apps
Example Response
Historial de la cuenta
entity_id especificado en la solicitud.
Nota: Este endpoint se encuentra actualmente en versión beta y requiere inclusión en una lista de permitidos (allowlist).
URL de recurso
https://ads-api.x.com/12/accounts/:account_id/account_history
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/account_history?entity_type=CAMPAIGN&entity_id=fc3h5&count=1
Ejemplo de respuesta
Categorías empresariales del anunciante
categories de negocio de anunciante válidas para Grupos de anuncios (line_items) y que describen la marca de un anunciante a los editores.
Nota: Estas categorías se aplican solo a line_items con el objetivo PREROLL_VIEWS y son independientes de las content_categories usadas para los criterios de segmentación.
Cada advertiser_business_categories representa una colección de Categorías IAB. Al crear un Grupo de anuncios con el objetivo PREROLL_VIEWS, se deben definir una o dos advertiser_business_categories para el Grupo de anuncios. Esto se puede hacer configurando el valor del parámetro de solicitud categories en el endpoint de line item al conjunto de iab_categories correspondientes disponibles a través de este endpoint.
Encontrarás más detalles en la Guía del objetivo de Video Views Preroll
URL del recurso
https://ads-api.x.com/12/advertiser_business_categories
Parámetros
Sin parámetros de solicitud
Ejemplo de solicitud
GET https://ads-api.x.com/12/advertiser_business_categories
Ejemplo de respuesta
Estimación de la audiencia
Determina el tamaño aproximado de la audiencia de tus campañas.
Content-Type: application/json.
Nota: Es obligatorio que especifiques al menos un criterio de segmentación principal; puedes ver una lista de todos los criterios de segmentación principales en nuestra página de segmentación de campañas.
URL de recurso
https://ads-api.x.com/12/accounts/:account_id/audience_estimate
Parámetros
Ejemplo de solicitud
POST https://ads-api.x.com/12/accounts/18ce54d4x5t/audience_estimate
Acceso de usuario autenticado
access_token) en relación con la cuenta de anuncios especificada. Estos permisos coinciden con los expuestos en ads.x.com.
Los valores posibles incluyen:
ACCOUNT_ADMIN: Acceso completo para modificar campañas y ver estadísticas, incluida la capacidad de agregar o eliminar usuarios y cambiar la configuraciónAD_MANAGER: Acceso completo para modificar campañas y ver estadísticas, pero no puede agregar o eliminar usuarios ni cambiar la configuraciónCREATIVE_MANAGER: Acceso para modificar creatividades y ver vistas previas, pero sin acceso para crear o modificar campañasCAMPAIGN_ANALYST: Acceso para ver campañas y ver estadísticas, pero sin acceso para crear o modificar campañasANALYST(“Organic Analyst” en ads.x.com): Acceso para ver analíticas orgánicas e insights de audiencia, pero sin acceso para crear, modificar o ver campañasPARTNER_AUDIENCE_MANAGER: Acceso solo a través de la API para ver y modificar audiencias de socios de datos, pero sin acceso a campañas, creatividades u otros tipos de audiencia.
TWEET_COMPOSER indica que el usuario autenticado puede crear Tweets sin difusión orgánica (nullcasted) o “solo promocionados” en nombre del anunciante. Esto solo está disponible para usuarios con acceso ACCOUNT_ADMIN, AD_MANAGER o CREATIVE_MANAGER.
URL del recurso
https://ads-api.x.com/12/accounts/:account_id/authenticated_user_access
Parámetros
Ninguno
Ejemplo de solicitud
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/authenticated_user_access
Ejemplo de respuesta
Reglas de pujas
https://ads-api.x.com/12/bidding_rules
Parameters
Example Request
GET https://ads-api.x.com/12/bidding_rules?currency=USD
Example Response
Campañas
https://ads-api.x.com/12/accounts/:account_id/campaigns
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/campaigns?campaign_ids=8wku2
Ejemplo de respuesta
https://ads-api.x.com/12/accounts/:account_id/campaigns/:campaign_id
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/campaigns/8wku2
Ejemplo de respuesta
https://ads-api.x.com/12/accounts/:account_id/campaigns
Parámetros
Ejemplo de solicitud
POST https://ads-api.x.com/12/accounts/18ce54d4x5t/campaigns?funding_instrument_id=lygyi&name=demo&daily_budget_amount_local_micro=140000000&entity_status=PAUSED&budget_optimization=CAMPIAGN&standard_delivery=false
Ejemplo de respuesta
- El tamaño máximo actual del lote es 40.
- Todos los parámetros se envían en el cuerpo de la solicitud y se requiere un
Content-Typedeapplication/json. - Las solicitudes por lotes fallan o se completan correctamente juntas como un grupo y todas las respuestas de la API, tanto de error como de éxito, preservan el orden de los elementos de la solicitud inicial.
- Los errores a nivel de solicitud (p. ej., tamaño máximo de lote excedido) se muestran en la respuesta bajo el objeto
errors. - Los errores a nivel de elemento (p. ej., parámetro obligatorio de campaña faltante) se muestran en la respuesta bajo el objeto
operation_errors.
https://ads-api.x.com/12/batch/accounts/:account_id/campaigns
Parámetros
Ejemplo de solicitud
POST 'Content-Type: application/json' https://ads-api.x.com/12/batch/accounts/18ce54d4x5t/campaigns
https://ads-api.x.com/12/accounts/:account_id/campaigns/:campaign_id
Parameters
Example Request
PUT https://ads-api.x.com/12/accounts/18ce54d4x5t/campaigns/8wku2?total_budget_amount_local_micro=140000000
Example Response
https://ads-api.x.com/12/accounts/:account_id/campaigns/:campaign_id
Parámetros
Solicitud de ejemplo
DELETE https://ads-api.x.com/12/accounts/18ce54d4x5t/campaigns/8yn7m
Respuesta de ejemplo
Categorías de contenido
categories de contenido válidas que se pueden establecer como targeting_criteria para un line item.
Cada content_category se asigna a una o más categorías de la IAB. Esto se puede hacer estableciendo targeting_type en IAB_CATEGORY en el endpoint por lotes targeting_critera para incluir el conjunto de iab_categories correspondientes que devuelve la solicitud content_categories. De lo contrario, se producirá un error de validación.
Los detalles del publisher para cada una de estas categorías de contenido pueden recuperarse usando el endpoint GET publishers.
Hay información adicional en la guía del objetivo de reproducciones de video Pre-roll.
URL del recurso
https://ads-api.x.com/12/content_categories
Parámetros
Sin parámetros de solicitud
Ejemplo de solicitud
GET https://ads-api.x.com/12/content_categories
Ejemplo de respuesta
Categorías seleccionadas
country_codes proporcionados.
Cada curated_category solo está disponible en países específicos indicados por los country_codes en la respuesta.
Puedes encontrar más detalles en la Guía del objetivo de vistas de video pre‑roll.
URL del recurso
https://ads-api.x.com/12/accounts/:account_id/curated_categories
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/curated_categories?country_codes=US
Ejemplo de respuesta
curated_category_id específico.
Cada curated_category solo está disponible en países específicos indicados por los country_codes en la respuesta.
URL del recurso
https://ads-api.x.com/12/accounts/:account_id/curated_categories/:curated_category_id
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/curated_categories/9ddrgesiap6o
Ejemplo de respuesta
Características
https://ads-api.x.com/12/accounts/:account_id/features
Parameters
Example Request
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/features
Example Response
https://ads-api-sandbox.x.com/12/accounts/:account_id/features
Parámetros
Ejemplo de solicitud
POST https://ads-api-sandbox.x.com/12/accounts/gq180y/features?feature_keys=VALIDATED_AGE_TARGETING
Ejemplo de respuesta
https://ads-api-sandbox.x.com/12/accounts/:account_id/features
Parámetros
Ejemplo de solicitud
DELETE https://ads-api-sandbox.x.com/12/accounts/gq180y/features?feature_keys=PREROLL_VIEWS_OBJECTIVE
Ejemplo de respuesta
Instrumentos de financiación
https://ads-api.x.com/12/accounts/:account_id/funding_instruments
Parameters
Example Request
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/funding_instruments
Example Response
https://ads-api.x.com/12/accounts/:account_id/funding_instruments/:id
Parameters
Example Request
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/funding_instruments/lygyi
Example Response
https://ads-api-sandbox.x.com/12/accounts/:account_id/funding_instruments
Parameters
Example Request
POST https://ads-api-sandbox.x.com/12/accounts/gq1844/funding_instruments?currency=USD&start_time=2017-07-10T00:00:00Z&type=INSERTION_ORDER&end_time=2018-01-10T00:00:00Z&funded_amount_local_micro=140000000000
Example Response
https://ads-api-sandbox.x.com/12/accounts/:account_id/funding_instruments/:funding_instrument_id
Parámetros
Ejemplo de solicitud
DELETE https://ads-api-sandbox.x.com/12/accounts/gq1844/funding_instruments/hxt82
Ejemplo de respuesta
Categorías de IAB
categories de App válidas para grupos de anuncios (line_items).
URL del recurso
https://ads-api.x.com/12/iab_categories
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/iab_categories?count=2
Ejemplo de respuesta
Elementos de línea
https://ads-api.x.com/12/accounts/:account_id/line_items
Parámetros
Solicitud de ejemplo
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/line_items?line_item_ids=itttx
Respuesta de ejemplo
https://ads-api.x.com/12/accounts/:account_id/line_items/:line_item_id
Parameters
Example Request
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/line_items/itttx
Example Response
product_type y objective.
Cuando se utiliza el tipo de producto PROMOTED_ACCOUNT, asociar un Tweet con el line_item agregará ubicaciones en la cronología móvil además de la ubicación estándar de PROMOTED_ACCOUNT.
Definir android_app_store_identifier o ios_app_store_identifier agregará automáticamente los criterios de segmentación para el elemento de línea que coincidan con la app móvil que se está promocionando; por ejemplo, pasar ios_app_store_identifier agregaría criterios de segmentación PLATFORM (targeting criteria) para iOS.
Nota: Hay un límite de 100 elementos de línea por campaña y 256 elementos de línea activos en todas las campañas.
URL del recurso
https://ads-api.x.com/12/accounts/:account_id/line_items
Parámetros
Ejemplo de solicitud
POST https://ads-api.x.com/12/accounts/18ce54d4x5t/line_items?campaign_id=hwtq0&objective=ENGAGEMENTS&product_type=PROMOTED_TWEETS&placements=ALL_ON_TWITTER&bid_amount_local_micro=3210000&entity_status=PAUSED&daily_budget_amount_local_micro=1000000&start_time=2022-06-15
Ejemplo de respuesta
- El tamaño máximo actual del lote es 40.
- Todos los parámetros se envían en el cuerpo de la solicitud y se requiere un
Content-Typedeapplication/json. - Las solicitudes por lotes se realizan correctamente o fallan en conjunto como un grupo, y todas las respuestas de la API, tanto de error como de éxito, preservan el orden de los elementos de la solicitud inicial.
- Los errores a nivel de solicitud (por ejemplo, tamaño máximo de lote superado) se muestran en la respuesta bajo el objeto
errors. - Los errores a nivel de elemento (por ejemplo, parámetro obligatorio de line item faltante) se muestran en la respuesta bajo el objeto
operation_errors.
https://ads-api.x.com/12/batch/accounts/:account_id/line_items
Parámetros
Solicitud de ejemplo
POST 'Content-Type: application/json' https://ads-api.x.com/12/batch/accounts/18ce54d4x5t/line_items
https://ads-api.x.com/12/accounts/:account_id/line_items/:line_item_id
Parameters
Ejemplo de solicitud
PUT https://ads-api.x.com/12/accounts/18ce54d4x5t/line_items/9cqi0?bid_amount_local_micro=140000
Ejemplo de respuesta
with_deleted=true en la solicitud. Sin embargo, estos promoted_tweets no se eliminan realmente ("deleted": false en la respuesta). No realizamos eliminaciones en cascada.
Resource URL
https://ads-api.x.com/12/accounts/:account_id/line_items/:line_item_id
Parameters
Example Request
DELETE https://ads-api.x.com/12/accounts/18ce54d4x5t/line_items/9f2ix
Example Response
Categorías seleccionadas para ítems de línea
https://ads-api.x.com/12/accounts/:account_id/line_item_curated_categories
Parameters
Example Request
GET https://ads-api.x.com/12/accounts/abc1/line_item_curated_categories
Example Response
https://ads-api.x.com/12/accounts/:account_id/line_item_curated_categories/:line_item_curated_category_id
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/accounts/abc1/line_item_curated_categories/yav
Ejemplo de respuesta
https://ads-api.x.com/12/accounts/:account_id/line_item_curated_categories
Parámetros
Ejemplo de solicitud
POST https://ads-api.x.com/12/accounts/18ce54d4x5t/line_item_curated_categories?line_item_id=iqwka&curated_category_id=9ddrgesiap6o
Ejemplo de respuesta
https://ads-api.x.com/12/accounts/:account_id/line_item_curated_categories/:line_item_curated_category_id
Parámetros
Ejemplo de solicitud
PUT https://ads-api.x.com/12/accounts/18ce54d4x5t/line_item_curated_categories/xq?curated_category_id=8tujl1p3yn0g
Ejemplo de respuesta
https://ads-api.x.com/12/accounts/:account_id/line_item_curated_categories/:line_item_curated_category_id
Parámetros
Ejemplo de solicitud
DELETE https://ads-api.x.com/12/accounts/18ce54d4x5t/line_item_curated_categories/xq
Ejemplo de respuesta
Ubicaciones de elementos de línea
placement y product_type.
URL del recurso
https://ads-api.x.com/12/line_items/placements
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/line_items/placements?product_type=PROMOTED_ACCOUNT
Ejemplo de respuesta
Creatividades multimedia
https://ads-api.x.com/12/accounts/:account_id/media_creatives
Parameters
Example Request
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/media_creatives?media_creative_ids=1bzq3
Example Response
https://ads-api.x.com/12/accounts/:account_id/media_creatives/:media_creative_id
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/media_creatives/1bzq3
Ejemplo de respuesta
creative_type de account media es PREROLL) o anuncios de imagen (como BANNER o INTERSTITIAL) en Twitter Audience Platform.
Nota: Para agregar recursos multimedia al recurso Account Media, usa el endpoint POST accounts/:account_id/media_library.
URL del recurso
https://ads-api.x.com/12/accounts/:account_id/media_creatives
Parámetros
Ejemplo de solicitud
POST https://ads-api.x.com/12/accounts/18ce54d4x5t/media_creatives?line_item_id=8v7jo&account_media_id=10miy
Ejemplo de respuesta
https://ads-api.x.com/12/accounts/:account_id/media_creatives/:media_creative_id
Parámetros
Ejemplo de solicitud
DELETE https://ads-api.x.com/12/accounts/18ce54d4x5t/media_creatives/1bzq3
Ejemplo de respuesta
Cuentas promocionadas
Recupera detalles de algunas o todas las cuentas promocionadas asociadas con uno o más line items dentro de la cuenta actual. Usa GET users/lookup para obtener datos de usuario para las cuentas de usuario identificadas poruser_id en la respuesta.
Se devolverá un código HTTP 400 si ninguno de los line items especificados está configurado para contener cuentas promocionadas.
Resource URL
https://ads-api.x.com/12/accounts/:account_id/promoted_accounts
Parameters
Example Request
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/promoted_accounts?promoted_account_ids=19pl2
Example Response
https://ads-api.x.com/12/accounts/:account_id/promoted_accounts/:promoted_account_id
Parameters
Example Request
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/promoted_accounts/19pl2
Example Response
user_id) con el elemento de línea especificado.
Si el elemento de línea especificado no está configurado para asociarse con Promoted Accounts, se devolverá un error HTTP 400 INCOMPATIBLE_LINE_ITEM. Si el usuario especificado no es apto para ser promocionado, se devolverá un error HTTP 400 y no se promocionará a ningún usuario. Si el usuario proporcionado ya está promocionado, la solicitud se ignorará.
Para obtener más información sobre Promoted Accounts, consulta nuestra página de gestión de campañas.
Nota: No es posible actualizar (PUT) entidades de Promoted Accounts.
URL del recurso
https://ads-api.x.com/12/accounts/:account_id/promoted_accounts
Parámetros
Ejemplo de solicitud
POST https://ads-api.x.com/12/accounts/18ce54d4x5t/promoted_accounts?line_item_id=9bpb2&user_id=756201191646691328
Ejemplo de respuesta
https://ads-api.x.com/12/accounts/:account_id/promoted_accounts/:promoted_account_id
Parameters
Example Request
DELETE https://ads-api.x.com/12/accounts/18ce54d4x5t/promoted_accounts/19pl2
Example Response
Tweets promocionados
tweet_id de cada objeto promoted_tweets.
Nota: Cuando los elementos de línea principales se eliminan, los promoted_tweets solo se devuelven si se especifica with_deleted=true en la solicitud. Sin embargo, estos promoted_tweets no se eliminan realmente ("deleted": false en la respuesta).
URL del recurso
https://ads-api.x.com/12/accounts/:account_id/promoted_tweets
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/promoted_tweets?promoted_tweet_ids=1efwlo
Ejemplo de respuesta
with_deleted=true en la solicitud. Sin embargo, estos promoted_tweets no se eliminan realmente ("deleted": false en la respuesta).
URL del recurso
https://ads-api.x.com/12/accounts/:account_id/promoted_tweets/:promoted_tweet_id
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/promoted_tweets/1efwlo
Ejemplo de respuesta
PROMOTED_ACCOUNT, asociar un Tweet con el line_item añadirá ubicaciones en la cronología en dispositivos móviles además de la ubicación estándar de PROMOTED_ACCOUNT.
Nota: No es posible actualizar (PUT) entidades de Tweet promocionado.
URL del recurso
https://ads-api.x.com/12/accounts/:account_id/promoted_tweets
Parámetros
Ejemplo de solicitud
POST https://ads-api.x.com/12/accounts/18ce54d4x5t/promoted_tweets?line_item_id=8v7jo&tweet_ids=822333526255120384
Ejemplo de respuesta
https://ads-api.x.com/12/accounts/:account_id/promoted_tweets/:promoted_tweet_id
Parameters
Example Request
DELETE https://ads-api.x.com/12/accounts/18ce54d4x5t/promoted_tweets/1gp8a5
Example Response
Usuarios aptos para promoción
FULL o RETWEETS_ONLY. Esto controla el tipo de contenido que la cuenta puede promocionar. Los anunciantes deben obtener permiso para promocionar el contenido de otro usuario y contactar a Twitter para que lo agreguen a su cuenta como usuario promocionable RETWEETS_ONLY.
Siempre que los permisos estén configurados correctamente, puedes hacer solicitudes a los endpoints de productos promocionados que hacen referencia directamente al ID del Tweet que deseas promocionar. Puedes usar el endpoint POST accounts/:account_id/promoted-tweets para promocionar Tweets publicados y el endpoint POST accounts/:account_id/scheduled-promoted-tweets para promocionar los Tweets programados de otra cuenta de Twitter Ads.
No tienes que hacer retweet del Tweet de destino. Cuando promocionas un Tweet con este enfoque, el tweet_id que se devuelve será diferente del ID del Tweet que se proporcionó. En segundo plano, el Tweet se está retuiteando como un Tweet sin difusión (nullcasted) y luego se promociona. El tweet_id que se devuelve corresponde a este nuevo Tweet.
URL del recurso
https://ads-api.x.com/12/accounts/:account_id/promotable_users
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/promotable_users?promotable_user_ids=l310s
Ejemplo de respuesta
FULL o RETWEETS_ONLY. Esto controla el tipo de contenido que se permite promocionar desde la cuenta.
Los anunciantes deben obtener permiso para promocionar el contenido de otro usuario. Siempre que los permisos estén configurados correctamente, puedes hacer solicitudes a los endpoints de productos promocionados que hacen referencia directamente al ID del Tweet que quieres promocionar.
No es necesario que retuitees el Tweet de destino. Cuando promocionas un Tweet con este enfoque, el tweet_id que se devuelve será diferente del ID del Tweet que se proporcionó. En segundo plano, el Tweet se está retuiteando como un Tweet nullcasted (sin distribución orgánica) y luego se promociona. El tweet_id que se devuelve corresponde a este nuevo Tweet.
Resource URL
https://ads-api.x.com/12/accounts/:account_id/promotable_users/:promotable_user_id
Parameters
Example Request
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/promotable_users/l310s
Example Response
Publishers
https://ads-api.x.com/12/publishers
Parameters
Sin parámetros de solicitud
Example Request
GET https://ads-api.x.com/12/publishers
Example Response
Recomendaciones
https://ads-api.x.com/5/accounts/:account_id/recommendations
Parameters
Example Request
GET https://ads-api.x.com/5/accounts/18ce54d4x5t/recommendations
Example Response
https://ads-api.x.com/5/accounts/:account_id/recommendations/:recommendation_id
Parameters
Example Request
GET https://ads-api.x.com/5/accounts/18ce54d4x5t/recommendations/62ce8zza1q0w
Example Response
Tweets promocionados programados
https://ads-api.x.com/12/accounts/:account_id/scheduled_promoted_tweets
Parameters
Example Request
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/scheduled_promoted_tweets?scheduled_promoted_tweet_ids=1xboq
Example Response
https://ads-api.x.com/12/accounts/:account_id/scheduled_promoted_tweets/:scheduled_promoted_tweet_id
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/scheduled_promoted_tweets/1xboq
Ejemplo de respuesta
https://ads-api.x.com/12/accounts/:account_id/scheduled_promoted_tweets
Parámetros
Ejemplo de solicitud
POST https://ads-api.x.com/12/accounts/18ce54d4x5t/scheduled_promoted_tweets?line_item_id=8xdpe&scheduled_tweet_id=870358555227860992
Ejemplo de respuesta
scheduled_promoted_tweets solo se puede eliminar antes de la hora scheduled_at del Tweet programado.
URL del recurso
https://ads-api.x.com/12/accounts/:account_id/scheduled_tweets/:scheduled_tweet_id
Parámetros
Ejemplo de solicitud
DELETE https://ads-api.x.com/12/accounts/18ce54d4x5t/scheduled_promoted_tweets/1xtfl
Ejemplo de respuesta
Criterios de segmentación
https://ads-api.x.com/12/accounts/:account_id/targeting_criteria
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/targeting_criteria?line_item_ids=8u94t
Ejemplo de respuesta
https://ads-api.x.com/12/accounts/:account_id/targeting_criteria/:targeting_criterion_id
Parameters
Example Request
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/targeting_criteria/eijd4y
Example Response
targeting_value para tipos de segmentación específicos. Recomendamos actualizar todos los datos semanalmente para asegurarte de que estás trabajando con el conjunto más reciente de valores de tipos de segmentación. Cambiamos los valores y los criterios de segmentación disponibles de vez en cuando; aunque la mayoría de estos no cambian con frecuencia, algunos sí lo hacen. No hay ninguna garantía de que estos valores no cambien.
Utiliza los tipos de segmentación BROAD_KEYWORD, EXACT_KEYWORD, PHRASE_KEYWORD o UNORDERED_KEYWORD con las palabras clave especificadas en targeting_value. Excluye palabras clave utilizando el parámetro de solicitud operator_type establecido en NE. Consulta targeting keyword types para obtener una descripción detallada de cada tipo.
Nota: Solo es posible segmentar un único rango de edad por line item.
Nota: Para segmentar una Audiencia personalizada (Custom Audience), esa audiencia debe ser segmentable; es decir, targerable debe ser igual a true.
Nota: Cuando se utilice el tipo de segmentación TV_SHOW, debe existir al menos un criterio de segmentación LOCATION en el line item antes de configurar la segmentación TV_SHOW, y todos los LOCATION deben estar dentro de la misma configuración regional que el TV_SHOW al que se está segmentando.
Resource URL
https://ads-api.x.com/12/accounts/:account_id/targeting_criteria
Parameters
Example Request
POST https://ads-api.x.com/12/accounts/18ce54d4x5t/targeting_criteria?line_item_id=619jl&targeting_type=BROAD_KEYWORD&targeting_value=technology
Ejemplo de respuesta
- El tamaño máximo actual de un lote es 500.
- Todos los parámetros se envían en el cuerpo de la solicitud y se requiere un
Content-Typedeapplication/json. - Las solicitudes por lotes fallan o tienen éxito juntas como un grupo y todas las respuestas de la API, tanto de error como de éxito, preservan el orden de los elementos de la solicitud inicial.
- Los errores a nivel de solicitud (p. ej., tamaño máximo de lote excedido) se muestran en la respuesta bajo el objeto
errors. - Los errores a nivel de elemento (p. ej., falta un parámetro obligatorio de Targeting Criteria) se muestran en la respuesta bajo el objeto
operation_errors.
https://ads-api.x.com/12/batch/accounts/:account_id/targeting_criteria
Parameters
Example Request
POST https://ads-api.x.com/12/batch/accounts/18ce54d4x5t/targeting_criteria
https://ads-api.x.com/12/accounts/:account_id/targeting_criteria/:targeting_criterion_id
Parameters
Example Request
DELETE https://ads-api.x.com/12/accounts/18ce54d4x5t/targeting_criteria/dpl3a6
Example Response
Opciones de segmentación
- Categorías de la App Store
- Conversaciones
- Dispositivos
- Eventos
- Intereses
- Idiomas
- Ubicaciones
- Operadores de red
- Versiones de plataforma
- Plataformas
- Mercados de televisión
- Programas de televisión
https://ads-api.x.com/12/targeting_criteria/app_store_categories
Parámetros
Solicitud de ejemplo
GET https://ads-api.x.com/12/targeting_criteria/app_store_categories?q=music&os_type=IOS
Respuesta de ejemplo
https://ads-api.x.com/12/targeting_criteria/conversations
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/targeting_criteria/conversations?count=2
Ejemplo de respuesta
https://ads-api.x.com/12/targeting_criteria/devices
Parameters
Example Request
GET https://ads-api.x.com/12/targeting_criteria/devices?count=2&q=iphone
Example Response
start_time y end_time de eventos en este endpoint se representan en UTC±00:00, independientemente de la configuración regional y la zona horaria del evento. Se debe tener en cuenta este diseño al consultar e interactuar con los valores de start_time y end_time de eventos. Por ejemplo, el Día de la Independencia de EE. UU. se representa como start_time=2017-07-04T00:00:00Z y end_time=2017-07-05T00:00:00Z en UTC±00:00, y así se evita el problema de que esta festividad exista en varias zonas horarias dentro de EE. UU.
URL del recurso
https://ads-api.x.com/12/targeting_criteria/events
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/targeting_criteria/events?count=1
Ejemplo de respuesta
https://ads-api.x.com/12/targeting_criteria/interests
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/targeting_criteria/interests?q=books
Ejemplo de respuesta
https://ads-api.x.com/12/targeting_criteria/languages
Parameters
Example Request
GET https://ads-api.x.com/12/targeting_criteria/languages?q=english
Example Response
CITIES con el parámetro de la solicitud location_type.
Para segmentar por Designated Market Areas (DMAs), utilice el enum METROS.
URL de recurso
https://ads-api.x.com/12/targeting_criteria/locations
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/targeting_criteria/locations?location_type=CITIES&q=los angeles
Ejemplo de respuesta
https://ads-api.x.com/12/targeting_criteria/network_operators
Parameters
Example Request
GET https://ads-api.x.com/12/targeting_criteria/network_operators?count=5&country_code=US
Example Response
https://ads-api.x.com/12/targeting_criteria/platform_versions
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/targeting_criteria/platform_versions
Ejemplo de respuesta
https://ads-api.x.com/12/targeting_criteria/platforms
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/targeting_criteria/platforms
Ejemplo de respuesta
https://ads-api.x.com/12/targeting_criteria/tv_markets
Parámetros
Ninguno
Ejemplo de solicitud
GET https://ads-api.x.com/12/targeting_criteria/tv_markets
Ejemplo de respuesta
estimated_users de 1000.
Nota: Las opciones de segmentación por canal de TV y género ya no se admiten.
Resource URL
https://ads-api.x.com/12/targeting_criteria/tv_shows
Parameters
Example Request
GET https://ads-api.x.com/12/targeting_criteria/tv_shows?locale=en-US&q=news&count=1
Example Response
Sugerencias de segmentación
https://ads-api.x.com/12/accounts/:account_id/targeting_suggestions
Parameters
Example Request
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/targeting_suggestions?suggestion_type=KEYWORD&targeting_values=developers&count=2"
Example Response
Configuración fiscal
https://ads-api.x.com/12/accounts/:account_id/tax_settings
Parameters
Example Request
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/tax_settings
Example Response
https://ads-api.x.com/12/accounts/:account_id/tax_settings
Parámetros
Ejemplo de solicitud
PUT https://ads-api.x.com/12/accounts/18ce54d4x5t/tax_settings?address_name=ABC, Co.
Ejemplo de respuesta
https://ads-api.x.com/12/accounts/:account_id/tracking_tags
Parameters
Example Request
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/tracking_tags?tracking_tag_ids=3m82
Example Response
https://ads-api.x.com/12/accounts/:account_id/tracking_tags/:tracking_tag_id
Parámetros
Ejemplo de solicitud
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/tracking_tags/555j
Ejemplo de respuesta
https://ads-api.x.com/12/accounts/:account_id/tracking_tags
Parameters
Example Request
POST https://ads-api.x.com/12/accounts/18ce54d4x5t/tracking_tags?line_item_id=fdwcl&tracking_tag_type=IMPRESSION_TAG&tracking_tag_url=https://ad.doubleclick.net/ddm/trackimp/N1234.2061500TWITTER-OFFICIAL/B9156151.125630439;dc_trk_aid=1355;dc_trk_cid=8675309
Example Response
https://ads-api.x.com/12/accounts/:account_id/tracking_tags/:tracking_tag_id
Parámetros
Ejemplo de solicitud
PUT https://ads-api.x.com/12/accounts/18ce54d4x5t/tracking_tags/3m82?tracking_tag_url=https://ad.doubleclick.net/ddm/trackimp/N1234.2061500TWITTER-OFFICIAL/B9156151.125630439;dc_trk_aid=1355;dc_trk_cid=8675309
Ejemplo de respuesta
https://ads-api.x.com/12/accounts/:account_id/tracking_tags/:tracking_tag_id
Parámetros
Ejemplo de solicitud
DELETE https://ads-api.x.com/12/accounts/18ce54d4x5t/tracking_tags/555j
Ejemplo de respuesta
Configuración de usuario
https://ads-api.x.com/12/accounts/:account_id/user_settings/:user_id
Parámetros
Solicitud de ejemplo
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/user_settings/756201191646691328
Respuesta de ejemplo
https://ads-api.x.com/12/accounts/:account_id/user_settings/:user_id
Parameters
Example Request
PUT https://ads-api.x.com/12/accounts/18ce54d4x5t/user_settings/756201191646691328?notification_email='user@domain.com'&subscribe_email_types=ACCOUNT_PERFORMANCE,PERFORMANCE_IMPROVEMENT"
Example Response