Detalles internos de OAuth 2.0 para la API de Google Ads

Esta sección está dirigida a usuarios avanzados que ya conocen la especificación de OAuth 2.0 y saben cómo usar OAuth 2.0 con las APIs de Google.

Alcance

Un solo token de acceso puede otorgar diferentes grados de acceso a varias APIs. Un parámetro variable llamado scope controla el conjunto de recursos y operaciones que permite un token de acceso. Durante la solicitud de token de acceso, tu app envía uno o más valores en el parámetro scope.

El alcance de la API de Google Ads es el siguiente:

https://www.googleapis.com/auth/adwords

Acceso sin conexión

Es común que una app cliente de la API de Google Ads solicite acceso sin conexión. Por ejemplo, tu app puede querer ejecutar trabajos por lotes cuando el usuario no esté navegando físicamente en tu sitio web.

Para solicitar acceso sin conexión para un tipo de app web, asegúrate de establecer el parámetro access_type en offline. Puedes encontrar información adicional en la guía de OAuth2 de Google.

En el caso del tipo de app para computadoras, el acceso sin conexión está habilitado de forma predeterminada, por lo que no es necesario que lo solicites explícitamente.

Encabezados de la solicitud

Encabezados de gRPC

Cuando uses la API de gRPC, incluye el token de acceso en cada solicitud. Puedes vincular un Credential a un Channel para usarlo en todas las solicitudes de ese canal. También puedes enviar una credencial personalizada para cada llamada. En la guía de autorización de gRPC, encontrarás más detalles para controlar la autorización.

Encabezados de REST

Cuando uses la API de REST, pasa el token de acceso a través del encabezado HTTP Authorization. A continuación, se muestra un ejemplo de solicitud HTTP:

# Returns the resource names of customers directly accessible by the user
# authenticating the call.
#
# Variables:
#   API_VERSION,
#   DEVELOPER_TOKEN,
#   OAUTH2_ACCESS_TOKEN:
#     See https://developers.google.com/google-ads/api/rest/auth#request_headers
#     for details.
#
curl -f --request GET \
"https://googleads.googleapis.com/v${API_VERSION}/customers:listAccessibleCustomers" \
--header "Content-Type: application/json" \
--header "developer-token: ${DEVELOPER_TOKEN}" \
--header "Authorization: Bearer ${OAUTH2_ACCESS_TOKEN}" \