Primeiros passos com a API

Este documento explica como começar a criar apps que usam a API Google Bid Manager. Com a API, você pode gerenciar consultas e extrair metadados de relatório.

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

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 teste a interface.

2. Preparar para a autenticação

Para começar a usar a API Bid Manager, primeiro use a ferramenta de configuração, que oferece orientações sobre como criar um projeto no Console de APIs do Google, ativar a API e criar credenciais.

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

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

3. Chamar a API Bid Manager

As guias abaixo fornecem tutoriais para programação em várias linguagens. Semelhante o exemplo de código também pode ser encontrado Exemplos da API Bid Manager repositório.

  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 essa etapa, será solicitado que você aceite uma autorização no navegador. Antes de aceitar, verifique se você fez login com uma Conta do Google que tem acesso ao Display & Video 360. Seu app será autorizado para acessar dados em nome de qualquer conta que esteja 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. Crie 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. Execute 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 como usar a API Bid Manager com Java, consulte o LEIA-ME no arquivo Exemplos da API Bid Manager

  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 essa etapa, será solicitado que você aceite uma autorização no navegador. Antes de aceitar, verifique se você fez login com uma Conta do Google que tem acesso ao Display & Video 360. Seu app será autorizado para acessar dados em nome de qualquer conta que esteja 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. Crie 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. Realizar 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 mais informações detalhadas sobre o uso da API Bid Manager com Python, consulte o arquivo README nos exemplos da API Bid Manager.

Este exemplo pressupõe que você esteja executando o PHP com um servidor da Web integrado e configurou suas credenciais para redirecionar à página da Web relevante. Para este código, em um arquivo index.php, pode ser executado usando o seguinte e as credenciais configuradas para redirecionar para http://localhost:8000 após autenticação:

php -S localhost:8000 -t ./

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

    O método preferido é pelo Composer:

    composer require google/apiclient:^2.12.1

    Após a instalação, inclua o autoloader

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

  2. Crie um objeto Google_Client.

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

    Na primeira vez que você realizar essa etapa, será necessário aceitar uma solicitação de autorização no navegador. Antes de aceitar, verifique se você fez login com uma Conta do Google que tem acesso ao Display & Vídeo em 360°. Seu app será autorizado a acessar dados em nome de qualquer conta que esteja 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 do Display & Video 360.

    $service = new Google_Service_DoubleClickBidManager($client);
  5. Realizar 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 como usar a 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, explore a referência documentação e começar a construir sua implementação.

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