Python

O Google oferece uma biblioteca de cliente Python para interagir com a API Ad Manager. Recomendamos o uso da biblioteca de cliente com o PyPI.

Para começar, crie um novo projeto no ambiente de desenvolvimento integrado (IDE) que você escolher ou adicione a dependência a um projeto existente. O Google publica artefatos de biblioteca de cliente para PyPI como google-ads-admanager.

pip install google-ads-admanager

Configurar credenciais

A biblioteca de cliente Python usa o OAuth2 e o Application Default Credentials (ADC) para autenticação.

O ADC procura credenciais na seguinte ordem:

  1. variável de ambiente GOOGLE_APPLICATION_CREDENTIALS.
  2. Credenciais do usuário configuradas pela CLI do Google Cloud (CLI gcloud).
  3. Quando executado no Google Cloud, a conta de serviço anexada ao recurso do Google Cloud.

Para criar e configurar suas credenciais do ADC, consulte Autenticação.

Faça sua primeira solicitação

Cada serviço tem um objeto ServiceClient com métodos síncronos e assíncronos para cada método REST. O exemplo a seguir lê um Network de forma síncrona.



from google.ads import admanager_v1


def sample_get_network():
    # Create a client
    client = admanager_v1.NetworkServiceClient()

    # Initialize request argument(s)
    request = admanager_v1.GetNetworkRequest(
        name="networks/[NETWORK_CODE]",
    )

    # Make the request
    response = client.get_network(request=request)

    # Handle the response
    print(response)

Para conferir exemplos de outros métodos e recursos, consulte o repositório do GitHub googleapis/google-cloud-python.

Registrar solicitações e respostas HTTP

A biblioteca de cliente do Python usa a biblioteca padrão logging do Python para registrar solicitações e respostas HTTP. Por padrão, a geração de registros fica desativada.

Para ativar a geração de registros, defina a variável de ambiente GOOGLE_SDK_PYTHON_LOGGING_SCOPE. Essa variável de ambiente configura o processamento de eventos de registro no nível logging.DEBUG ou superior.

# Log only Ad Manager API events
export GOOGLE_SDK_PYTHON_LOGGING_SCOPE=google.ads.admanager_v1

# Log all Google library events
export GOOGLE_SDK_PYTHON_LOGGING_SCOPE=google

Como alternativa, use o módulo logging do Python:

import logging

from google.ads import admanager_v1

logger = logging.getLogger("google.ads.admanager_v1")
logger.addHandler(logging.StreamHandler())
logger.setLevel(logging.DEBUG)

Solucionar erros

Todos os erros da API estendem a classe base GoogleAPIError.

O campo "Motivo do erro" identifica de forma exclusiva os tipos de erro. Use este campo para determinar como lidar com o erro.

try:
  network = client.get_network(request=request)
  print(network)
except GoogleAPIError as e:
  # Handle error
  print(e.reason)

Os erros da API Ad Manager também incluem um requestId exclusivo que pode ser enviado ao suporte para receber ajuda na solução de problemas. O exemplo a seguir extrai o requestId de um GoogleAPIError.

except GoogleAPIError as e:
  requestInfoType = "type.googleapis.com/google.rpc.RequestInfo"
  requestInfo = [detail for detail in e.details if detail['@type'] == requestInfoType][0]
  print(requestInfo['requestId'])

Definir as configurações de proxy

A biblioteca de cliente do Python respeita as configurações de variáveis de ambiente http_proxy e https_proxy.