Primeiros passos com a API

Este documento explica como começar a criar apps que usam a API Google Bid Manager. Com a API, é possível gerenciar consultas e recuperar metadados do relatório.

A API Bid Manager v2 é a versão mais recente disponível e recomendada.

1. Antes de começar

Se você não conhece os conceitos do Google Display & Video 360, leia a Central de Ajuda do Display & Video 360 e faça testes com a interface.

2. Preparar para autenticação

Para começar a usar a API Bid Manager, primeiro use a ferramenta de configuração, que orienta você na criação de um projeto no Console de APIs do Google, na ativação da API e na criação de credenciais.

Se você ainda não tiver feito isso, crie suas credenciais do OAuth 2.0 clicando em Criar credenciais > ID do cliente OAuth. Depois, você verá seu ID de cliente na página Credenciais. Clique nele para ver mais detalhes, como a chave secreta do cliente, URIs de redirecionamento, endereço de origem JavaScript e endereço de e-mail.

Para ver mais informações, consulte Autorizar solicitações.

3. Chamar a API Bid Manager

As guias abaixo fornecem guias de início rápido para codificação em várias linguagens. Um código de amostra semelhante também pode ser encontrado no repositório de Exemplos da API Bid Manager.

Java

  1. Importe as bibliotecas necessárias.

    import static java.nio.charset.StandardCharsets.UTF_8;
    import com.google.api.client.auth.oauth2.Credential;
    import com.google.api.client.extensions.java6.auth.oauth2.AuthorizationCodeInstalledApp;
    import com.google.api.client.extensions.jetty.auth.oauth2.LocalServerReceiver;
    import com.google.api.client.googleapis.auth.oauth2.GoogleAuthorizationCodeFlow;
    import com.google.api.client.googleapis.auth.oauth2.GoogleClientSecrets;
    import com.google.api.client.googleapis.util.Utils;
    import com.google.api.services.doubleclickbidmanager.DoubleClickBidManager;
    import com.google.api.services.doubleclickbidmanager.model.ListQueriesResponse;
    import com.google.api.services.doubleclickbidmanager.model.Query;
    import java.io.Reader;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
  2. Carregue o arquivo de chaves secretas do cliente e gere credenciais de autorização.

    Na primeira vez que você executar esta etapa, será necessário aceitar um prompt de autorização no navegador. Antes de aceitar, verifique se você fez login com uma Conta do Google com acesso ao Display & Video 360. Seu app será autorizado a acessar dados em nome de qualquer conta que estiver conectada no momento.

    // Read client secrets file.
    GoogleClientSecrets clientSecrets;
    try (Reader reader = Files.newBufferedReader(Paths.get(path-to-client-secrets-file), UTF_8)) {
      clientSecrets = GoogleClientSecrets.load(Utils.getDefaultJsonFactory(), reader);
    }
    
    // Generate authorization credentials.
    // Set up the authorization code flow.
    GoogleAuthorizationCodeFlow flow =
        new GoogleAuthorizationCodeFlow.Builder(
            Utils.getDefaultTransport(),
            Utils.getDefaultJsonFactory(),
            clientSecrets,
            oauth-scopes)
        .build();
    
    Credential credential =
        new AuthorizationCodeInstalledApp(flow, new LocalServerReceiver()).authorize("user");
    
  3. Criar um cliente de API autorizado.

    // Create authorized API client.
    DoubleClickBidManager service =
        new DoubleClickBidManager.Builder(credential.getTransport(), credential.getJsonFactory(), credential)
            .setApplicationName("bidmanager-java-installed-app-sample")
            .build();
    
  4. Realize uma operação.

    // Perform an operation.
    // Call the API, getting a list of 10 queries.
    ListQueriesResponse queriesResponse = service.queries().list().setPageSize(10).execute();
    
    // Print them out.
    System.out.println("Id\t\tName");
    if (queriesResponse.getQueries().size() > 0) {
      for (int i = 0; i < queriesResponse.getQueries().size(); i++) {
        Query currentQuery = queriesResponse.getQueries().get(i);
        System.out.printf(
            "%s\t%s%n",
            currentQuery.getQueryId(),
            currentQuery.getMetadata().getTitle());
      }
    } else {
      System.out.println("No queries exist.");
    }
    

Para informações mais detalhadas sobre o uso da API Bid Manager com Java, consulte o arquivo README nos exemplos da API Bid Manager.

Python

  1. Importe as bibliotecas necessárias.

    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient import discovery
    
  2. Carregue o arquivo de chaves secretas do cliente e gere credenciais de autorização.

    Na primeira vez que você executar esta etapa, será necessário aceitar um prompt de autorização no navegador. Antes de aceitar, verifique se você fez login com uma Conta do Google com acesso ao Display & Video 360. Seu app será autorizado a acessar dados em nome de qualquer conta que estiver conectada no momento.

    # Set up a flow object to create the credentials using the
    # client secrets file and OAuth scopes.
    credentials = InstalledAppFlow.from_client_secrets_file(
        path-to-client-secrets-file, oauth-scopes).run_local_server()
    
  3. Criar um cliente de API autorizado.

    # Build the discovery document URL.
    discovery_url = f'https://doubleclickbidmanager.googleapis.com/$discovery/rest?version=v2'
    
    # Build the API service.
    service = discovery.build(
        'doubleclickbidmanager',
        'v2',
        discoveryServiceUrl=discovery_url,
        credentials=credentials)
    
  4. Realize uma operação.

    # Build and execute queries.listqueries request.
    response = service.queries().list(pageSize='10').execute()
    
    # Print queries out.
    if 'queries' in response:
      print('Id\t\tName')
      for query in response['queries']:
        print('%s\t%s' % (query['queryId'], query['metadata']['title']))
    else:
      print('No queries exist.')
    

Para informações mais detalhadas sobre o uso da API Bid Manager com Python, consulte o arquivo README nos exemplos da API Bid Manager.

PHP

Neste exemplo, presumimos que você esteja executando o PHP com um servidor da Web integrado e que tenha configurado suas credenciais para redirecionar à página da Web relevante. Por exemplo, esse código, em um arquivo index.php, pode ser executado usando o seguinte comando e credenciais configuradas para redirecionar para http://localhost:8000 após a autenticação:

php -S localhost:8000 -t ./

  1. Faça o download e instale o cliente PHP da API do Google.

    O método preferencial é pelo Composer:

    composer require google/apiclient:^2.12.1
    

    Depois da instalação, inclua o carregador automático

    require_once '/path/to/your-project/vendor/autoload.php';
    

  2. Crie um objeto Google_Client.

    $client = new Google_Client();
    
  3. Configure o cliente, redirecione para o URL de autenticação, se necessário, e recupere um token de acesso.

    Na primeira vez que você executar esta etapa, será necessário aceitar um prompt de autorização no navegador. Antes de aceitar, verifique se você fez login com uma Conta do Google com acesso ao Display & Video 360. Seu app será autorizado a acessar dados em nome de qualquer conta que estiver conectada no momento.

    // Set up the client.
    $client->setApplicationName('DBM API PHP Samples');
    $client->addScope(oauth-scope);
    $client->setAccessType('offline');
    $client->setAuthConfigFile(path-to-client-secrets-file);
    
    // If the code is passed, authenticate. If not, redirect to authentication page.
    if (isset($_GET['code'])) {
      $client->authenticate($_GET['code']);
    } else {
      $authUrl = $client->createAuthUrl();
      header('Location: ' . $authUrl);
    }
    
    // Exchange authorization code for an access token.
    $accessToken = $client->getAccessToken();
    $client->setAccessToken($accessToken);
    
  4. Criar um cliente para o serviço da API Display & Video 360.

    $service = new Google_Service_DoubleClickBidManager($client);
    
  5. Realize uma operação.

    // Configure params for the Queries.listqueries request.
    $optParams = array('pageSize' => 10);
    
    // Execute the request.
    $result = $service->queries->listQueries($optParams);
    
    // Print the retrieved queries.
    if (!empty($result->getQueries())) {
      print('<pre><p>Id Name</p>');
      foreach ($result->getQueries() as $query) {
        printf('<p>%s %s</p>', $query->queryId, $query->metadata->title);
      }
      print('</pre>');
    } else {
      print '<p>No queries exist.</p>';
    }
    

Para informações mais detalhadas sobre o uso da API Bid Manager com PHP, consulte o arquivo README nos exemplos da API Bid Manager.

4. Próximas etapas

Agora que você tem uma biblioteca de cliente em execução, consulte a documentação de referência e comece a criar sua implementação.

Outros guias também estão disponíveis sobre como usar relatórios programados e seguindo as práticas recomendadas de relatórios.