Autentica llamadas a la API

En este ejemplo, mostramos cómo se pueden usar las cuentas de servicio para llamar a la API de plataformas de AdSense con el fin de crear y administrar cuentas secundarias.

Paso 1: Crea un proyecto de Google Cloud nuevo (o usa uno existente)

Si ya tienes un proyecto de Google Cloud, puedes usarlo. De lo contrario, sigue la guía a continuación para configurar un proyecto nuevo:

https://cloud.google.com/resource-manager/docs/creating-managing-projects

Paso 2: Crea una cuenta de servicio

Usar cuentas de servicio es la mejor manera de crear cuentas secundarias. Sigue estos pasos para crear la cuenta de servicio:

  • Visita la página de cuentas de servicio en Google Cloud.
  • Puedes usar una cuenta de servicio existente o crear una nueva:
    • Haz clic en "+ Crear cuenta de servicio".
    • Completa el formulario “Detalles de la cuenta de servicio” (Service account details).
    • Los pasos 2 y 3 en la página (otorgar acceso a proyectos y usuarios) son opcionales

Obtén más información acerca de cómo crear y administrar cuentas de servicio.

Una vez que se haya creado la cuenta de servicio, deberás enviarla a Google para que se agregue a tu cuenta de AdSense. Esto es fundamental, ya que la cuenta de servicio debe tener acceso a tu cuenta de AdSense. Comunícate con tu administrador de cuentas.

Paso 3: Habilita la API de AdSense Platform para tu proyecto de Google Cloud

La API de la plataforma de AdSense no es detectable, lo que significa que debes visitar el siguiente vínculo para habilitarla en tu proyecto:

https://console.developers.google.com/apis/api/adsenseplatform.googleapis.com/overview

Paso 4: Crea una clave de servicio

A fin de generar tokens de acceso para usar en las llamadas a la API, debes crear una clave de servicio. Lleve a cabo los pasos siguientes:

  • Visita la página de cuentas de servicio en Google Cloud.
  • En la columna de acciones, en la cuenta de servicio que deseas usar para crear cuentas secundarias, haz clic en y, luego, en "Administrar claves"
  • Haz clic en “Agregar clave” y, luego, selecciona “Crear clave nueva”
  • Mantén JSON seleccionado como el tipo de clave y haz clic en "Create" (Crear).
  • Se creará un archivo JSON y se descargará en tu computadora. Guárdala de forma segura, ya que será necesaria para autenticar las llamadas a la API.

Obtén más información para crear y administrar claves de cuentas de servicio.

Paso 5: Usa las bibliotecas de OAuth de Google para generar un token de acceso

Google proporciona bibliotecas para ayudar a generar tokens de acceso, que se pueden usar para realizar las llamadas a la API. Obtén información sobre cómo generar credenciales para cuentas de servicio aquí:

https://developers.google.com/identity/protocols/oauth2/service-account#authorizingrequests

El alcance de la API de plataformas de AdSense es el siguiente: https://www.googleapis.com/auth/adsense

Ejemplo de Python

from google.auth.transport import requests
from google.oauth2 import service_account

CREDENTIAL_SCOPES = ["https://www.googleapis.com/auth/adsense"]
CREDENTIALS_KEY_PATH = 'service.json'

def get_service_account_token():
  credentials = service_account.Credentials.from_service_account_file(
          CREDENTIALS_KEY_PATH, scopes=CREDENTIAL_SCOPES)
  credentials.refresh(requests.Request())
  return credentials.token

En esta etapa, estás listo para comenzar a llamar a las APIs. Como las bibliotecas cliente aún no son compatibles con la API de AdSense Platform, se deben realizar solicitudes HTTP directas. El token de acceso se debe incluir como un encabezado en la solicitud HTTP. El encabezado debería verse así:

Authorization: OAuth <credentials>

Se incluyen ejemplos en las páginas de la API.