Autorización y encabezados HTTP

Video: Autenticación

Cuando llames a la API de Google Ads, necesitarás credenciales de la aplicación de OAuth 2.0 y un token de desarrollador. Si realizas llamadas a la API con una cuenta de administrador de Google Ads, también debes especificar un encabezado login-customer-id con cada solicitud. En esta página, se describe cómo configurar estos valores y se documentan varios encabezados HTTP adicionales específicos de la API que se envían y reciben cuando se usa la interfaz REST.

Credenciales de OAuth 2.0

La API de Google Ads usa credenciales de la aplicación para identificar y autorizar solicitudes a la API. Se pueden configurar clientes de OAuth 2.0 y cuentas de servicio. Para obtener más detalles sobre la configuración de la autorización del cliente, consulta OAuth2 en la API de Google Ads.

Si eres nuevo en las APIs de Google, puedes usar oauth2l o OAuth 2.0 Playground para experimentar con las credenciales de la aplicación y la API de Google Ads antes de escribir el código de tu app.

Usar flujos de aplicaciones web o de escritorio

Sigue los pasos para configurar un proyecto de la Consola de APIs de Google para la API de Google Ads. Registra el ID de cliente y el secreto del cliente y, luego, vuelve a esta página.

Una vez que hayas creado un cliente de OAuth, sigue las instrucciones del flujo de la app para computadoras o las instrucciones del flujo de la app web para generar un token de actualización y un token de acceso.

Usa cuentas de servicio

Sigue las instrucciones comunes de la guía Cuentas de servicio para configurar el acceso de la cuenta de servicio a la API de Google Ads.

Una vez que hayas configurado una cuenta de servicio para acceder a tu cuenta de Google Ads, sigue la guía Cómo usar OAuth 2.0 para aplicaciones de servidor a servidor y asegúrate de seleccionar la pestaña HTTP/REST. El scope que se debe usar para el acceso a la API de Google Ads es https://www.googleapis.com/auth/adwords.

Generación de tokens de acceso nuevos

Una vez que tengas un ID de cliente, un secreto de cliente y un token de actualización, puedes generar un nuevo token de acceso para usarlo en llamadas a la API con la herramienta de línea de comandos curl:

curl \
  --data "grant_type=refresh_token" \
  --data "client_id=CLIENT_ID" \
  --data "client_secret=CLIENT_SECRET" \
  --data "refresh_token=REFRESH_TOKEN" \
  https://www.googleapis.com/oauth2/v3/token

Luego, usa el token de acceso que muestra la solicitud de curl en el encabezado HTTP Authorization de cada llamada a la API de Google Ads:

GET /v19/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

Encabezados de la solicitud

Token del desarrollador

La API de Google Ads también requiere un token de desarrollador para realizar llamadas a la API. Puedes solicitar un token para tu cuenta de administrador directamente desde la IU de Google Ads. Para obtener más detalles sobre cómo configurar un token de desarrollador, consulta Obtén tu token de desarrollador.

Debes incluir el valor de tu token de desarrollador en el encabezado HTTP developer-token de cada llamada a la API de Google Ads:

GET /v19/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

ID de cliente de acceso

En el caso de las llamadas a la API de Google Ads que realiza un administrador a una cuenta de cliente (es decir, cuando accedes como administrador para realizar llamadas a la API a una de sus cuentas de cliente), también debes proporcionar el encabezado HTTP login-customer-id. Este valor representa el ID de cliente de Google Ads del administrador que realiza la llamada a la API.

Incluir este encabezado equivale a elegir una cuenta en la IU de Google Ads después de acceder o hacer clic en tu imagen de perfil en la esquina superior derecha de la página. Cuando especifiques el ID de cliente, asegúrate de quitar los guiones (—), por ejemplo: 1234567890, no 123-456-7890.

GET /v19/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN
login-customer-id: MANAGER_CUSTOMER_ID

ID de cliente vinculado

Solo los proveedores de estadísticas de aplicaciones de terceros usan este encabezado cuando suben conversiones a una cuenta de Google Ads vinculada. Consulta la guía de estructura de llamadas a la API para obtener más detalles.

...
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN
login-customer-id: MANAGER_CUSTOMER_ID
linked-customer-id: LINKED_CUSTOMER_ID

Encabezados de respuesta

Los siguientes encabezados se muestran en las respuestas HTTP de la API.

ID de solicitud

request-id es una cadena que identifica de forma exclusiva la solicitud a la API. Cuando se depura o se solucionan problemas con llamadas a la API específicas, request-id es un identificador importante que debes tener a mano cuando te comuniques con el equipo de asistencia para desarrolladores de Google.

request-id: 2a5Cj89VV7CNhya1DZjjrC