Node.js

O Google oferece uma biblioteca de cliente do Node.js para interagir com a API Ad Manager.

Pré-requisito

Para usar a biblioteca de cliente do Node.js, é necessário ter o Node.js instalado. Para mais informações, consulte Fazer o download do Node.js®.

Instale a biblioteca de cliente

Para começar, crie um novo projeto no ambiente de desenvolvimento integrado (IDE) de sua preferência ou adicione a dependência a um projeto atual. O Google publica artefatos da biblioteca de cliente no npm como @google-ads/admanager.

package.json

"dependencies": {
  "@google-ads/admanager": "^0.4.0"
}

Linha de comando

npm install @google-ads/admanager

Configurar credenciais

Para autenticar, a biblioteca de cliente do Node.js usa o OAuth2 e o Application Default Credentials (ADC). 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 para cada método REST. Para exemplos de cada método, consulte o repositório do GitHub googleapis/google-cloud-node. O exemplo a seguir lê um Network objeto:

// Resource name of the Network
const name = 'networks/NETWORK_CODE'

// Imports the Admanager library
const {NetworkServiceClient} = require('@google-ads/admanager').v1;

// Instantiates a client
const admanagerClient = new NetworkServiceClient();

async function callGetNetwork() {
  // Construct request
  const request = {
    name,
  };

  // Run request
  const response = await admanagerClient.getNetwork(request);
  console.log(response);
}

callGetNetwork();

Registrar solicitações e respostas HTTP

A biblioteca de cliente do Node.js oferece suporte ao registro de solicitações e respostas HTTP. Por padrão, a biblioteca de cliente desativa o registro.

Para ativar o registro padrão na saída padrão, defina a variável de ambiente GOOGLE_SDK_NODE_LOGGING como uma lista separada por vírgulas de nomes de pacotes da API Google. Você pode ativar o registro para todas as APIs Google definindo o valor da variável como all. Para todos os nomes de pacotes de biblioteca de cliente disponíveis, consulte Bibliotecas de cliente do Google Cloud Node.js

Node.js

// Enable logging for the Google Ad Manager API
process.env.GOOGLE_SDK_NODE_LOGGING = 'admanager';

// Enable logging for the Google Ad Manager and pubsub APIs.
process.env.GOOGLE_SDK_NODE_LOGGING = 'admanager,pubsub';

// Enable logging for all Google APIs
process.env.GOOGLE_SDK_NODE_LOGGING = 'all';

Linux ou macOS

# Enable logging for the Google Ad Manager API.
export GOOGLE_SDK_NODE_LOGGING=admanager

# Enable logging for the Google Ad Manager and pubsub APIs.
export GOOGLE_SDK_NODE_LOGGING=admanager,pubsub

# Enable logging for all Google APIs
export GOOGLE_SDK_NODE_LOGGING=all

Windows

# Enable logging for the Google Ad Manager API.
set GOOGLE_SDK_NODE_LOGGING=admanager

# Enable logging for the Google Ad Manager and pubsub APIs.
set GOOGLE_SDK_NODE_LOGGING=admanager,pubsub

# Enable logging for all Google APIs
set GOOGLE_SDK_NODE_LOGGING=all

Como alternativa, você pode mudar o back-end de registro ou conectar eventos de registro. Para mais informações, consulte Ferramentas de registro do Google.

Solucionar erros

Na biblioteca de cliente do Node.js, todos os erros da API Ad Manager geram uma exceção do tipo GaxiosError.

Os erros da API Ad Manager incluem uma mensagem de erro e um valor requestId exclusivo que você pode fornecer à equipe de suporte da API. Para receber ajuda com a solução de problemas, consulte Entrar em contato com o suporte da API. O exemplo a seguir extrai o valor requestId e a mensagem de erro:

const admanagerClient = new NetworkServiceClient();
try {
  const network = admanagerClient.getNetwork(
    { name: 'networks/NETWORK_CODE' }
  );
  console.log(network);
} catch(e) {
  if (e instanceof GaxiosError) {
    // Load the error
    const apiError = JSON.parse(e.message).error;
    const requestInfoType = 'type.googleapis.com/google.rpc.RequestInfo';
    const requestInfo = apiError.details.find(detail => detail['@type'] === requestInfoType);
    console.error(apiError.status + ' - ' + apiError.message);
    console.error('RequestId: ' + requestInfo.requestId);
  } else {
    throw e;
  }
}