Cuentas de usuario vs cuentas de Ads
Hay dos tipos diferentes de cuentas involucradas al usar la Ads API: cuentas de publicidad y cuentas de usuario de X. A lo largo de la documentación de la Ads API, el término “account” normalmente se refiere a la cuenta de publicidad.- Las cuentas de publicidad se registran en business.x.com y se identifican en la API por account_id. Las cuentas de publicidad se vinculan directamente a fuentes de financiación y aprovechan contenido de una o más cuentas de usuario de X como ‘promotable users’. Cada cuenta de publicidad puede otorgar permisos a una o más cuentas de usuario de X. La cuenta de publicidad, o “cuenta actual”, se representa en casi todas las URL ejecutadas como parámetro en línea :account_id.
- Las cuentas de usuario de X (como @AdsAPI) se identifican por user_id en la Ads API. Una o más de estas cuentas pueden asociarse con una cuenta de publicidad. La cuenta de usuario de X autenticada que hace solicitudes a la API se denomina ‘usuario actual’. Un listado de cuentas de publicidad a las que el usuario actual tiene acceso se puede encontrar con GET accounts. Los ‘promotable users’ son handles de X que pueden ser promocionados por una cuenta de publicidad específica. Para más detalles sobre esto, consulta Obtener acceso a la cuenta de Ads.
Métodos para acceder a la cuenta de anuncios
Hay dos métodos que puedes usar para hacer solicitudes a la Ads API para la cuenta de un anunciante:- Hacer solicitudes en nombre de un anunciante (recomendado)
- Hacer solicitudes usando tu cuenta a la que se le ha otorgado acceso a la cuenta de un anunciante, por ejemplo, una agencia que gestiona múltiples cuentas.
Niveles de acceso
Permisos a nivel de App
Cada usuario tendrá un nivel de acceso según lo solicitado al presentar la solicitud a la Ads API:- Conversion Only: el usuario tiene acceso a los endpoints Mobile y Web Conversion con acceso read & write.
- Standard Access: el usuario tiene acceso a los endpoints Analytics, Campaign Management, Creatives, Custom Audiences y Conversion con acceso read & write.
Permisos a nivel de cuenta de anuncios
Cada usuario que tenga acceso a una cuenta de Ads tendrá un permiso específico a nivel de cuenta: Account administrator, Ad manager, Campaign analyst, Organic analyst y Creative Manager; consulta business.x.com para la documentación más reciente sobre permisos a nivel de cuenta. Las aplicaciones deben obtener los permisos del usuario autenticado actualmente a través del endpoint Authenticated User Access de la API para determinar a qué endpoints de la API y funciones de Ads pueden acceder. Nota: Cualquier user token utilizado con la Conversion API debe ser para usuarios con permisos a nivel de cuenta de Account administrator o Ad manager.Métodos para obtener access tokens
1. Obtener un access token de anunciante (Usuario)
Hay dos métodos para obtener el access token de un anunciante. El método más común es a través del flujo OAuth de 3-legged directamente desde tu UI web. Las aplicaciones que no tengan una UI accesible públicamente expuesta a los anunciantes pueden implementar un proceso OAuth basado en PIN. Después de que el usuario complete el flujo 3-legged, tu aplicación tendrá las credenciales para hacer solicitudes a la cuenta de Ads del usuario a través de la API. Obtener credenciales de usuario a través del flujo OAuth es el método que recomendamos encarecidamente a la mayoría de los desarrolladores de la Ads API para obtener acceso a una cuenta de anunciante. Te permite llamar a la API en nombre de un usuario y realizar acciones como ese usuario. Estos tokens no expiran, pero pueden ser revocados por el usuario en cualquier momento.2. Obtener tu access token (Desarrollador)
Esta opción requiere que el anunciante otorgue acceso a tu @username (o @usernames) a su cuenta de X Ads a través de la UI de X en business.x.com. Los access tokens obtenidos mediante el flujo OAuth de 3-legged para tu cuenta podrán acceder a la cuenta de X Ads del anunciante. Esto te permite llamar a la API usando los OAuth tokens de tu propio @username en lugar de los del anunciante. La distinción clave en esta opción es que solo podrás crear Promoted-Only Posts si se le ha otorgado a tu @username el permiso de delegación/composición de Posts. Para obtener acceso a crear Promoted-Only Posts en nombre del promotable userFULL en la cuenta, también debes tener acceso para crear Posts en este flujo. Esto habilitará el acceso a través del permiso TWEET_COMPOSER en el endpoint GET accounts/:account_id/authenticated_user_access.
Diferencias entre estos métodos
Nota: Consulta la sección Obtener tu access token (Desarrollador) más arriba para más detalles.
Caso de uso de ejemplo
Access token del anunciante mediante el flujo web OAuth 3-legged
El flujo estándar es basado en web y utiliza el flujo de autorización 3-legged de OAuth. Las capturas de pantalla que se muestran aquí son parte de un ejemplo cuyo código fuente puedes ver en https://github.com/xdevplatform/twauth-web. En algún momento de tu aplicación, querrás redirigir a X para autorizar tu aplicación

