Este documento explica como começar a criar apps que usam a API Google Bid Manager. A API permite gerenciar consultas e recuperar metadados de relatórios.
A API Bid Manager v2 é a versão mais recente disponível e recomendada.
1. Antes de começar
Se você não tiver familiaridade com os conceitos do Google Display & 360, leia a Central de Ajuda do Display & Video 360 e faça testes com a IU.
2. Preparar para autenticação
Para começar a usar a API Bid Manager, primeiro é necessário usar a ferramenta de configuração, que orienta você na criação de um projeto no Console de APIs do Google, na ativação dela 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 de criar as credenciais, você verá seu ID de cliente na página Credenciais. Clique nele para ver detalhes, como a chave secreta do cliente, URIs de redirecionamento, endereço de origem JavaScript e endereço de e-mail.Para mais informações, consulte Autorizar solicitações.
3. Chamar a API Bid Manager
As guias abaixo mostram guias de início rápido para programação em várias linguagens. Um exemplo de código semelhante também pode ser encontrado no repositório de exemplos de API do Bid Manager.
Java
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;
Carregar o arquivo de secrets do cliente e gerar credenciais de autorização.
Na primeira vez que você executar essa etapa, será necessário aceitar uma solicitação de autorização no seu navegador. Antes de aceitar, verifique se você está conectado a uma Conta do Google com acesso ao Display & Video 360. O app vai ter autorização para acessar dados em nome de qualquer conta 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");
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();
Faça 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 arquivo README nos exemplos da API Bid Manager.
Python
Importe as bibliotecas necessárias.
from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient import discovery
Carregar o arquivo de secrets do cliente e gerar credenciais de autorização.
Na primeira vez que você executar essa etapa, será necessário aceitar uma solicitação de autorização no seu navegador. Antes de aceitar, verifique se você está conectado a uma Conta do Google com acesso ao Display & Video 360. O app vai ter autorização para acessar dados em nome de qualquer conta 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()
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)
Faça 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 como usar a 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, este código, em um arquivo index.php
, pode ser executado usando o seguinte
comando e credenciais configurados para redirecionar a http://localhost:8000
após
a autenticação:
php -S localhost:8000 -t ./
Faça o download e instale o cliente PHP da API do Google.
O método preferido é via Composer:
composer require google/apiclient:^2.12.1
Após a instalação, inclua o carregador automático
require_once '/path/to/your-project/vendor/autoload.php';
Crie um objeto Google_Client.
$client = new Google_Client();
Configurar o cliente, redirecionar para o URL de autenticação, se necessário, e recuperar um token de acesso.
Na primeira vez que você executar essa etapa, será necessário aceitar uma solicitação de autorização no seu navegador. Antes de aceitar, verifique se você está conectado a uma Conta do Google com acesso ao Display & Video 360. O app vai ter autorização para acessar dados em nome de qualquer conta 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);
Criar um cliente para o serviço da API Display & 360 Video.
$service = new Google_Service_DoubleClickBidManager($client);
Faça 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 funcionamento, consulte a documentação de referência e comece a criar sua implementação.
Há também outros guias disponíveis sobre como usar relatórios programados e seguir as práticas recomendadas de relatórios.