Os desenvolvedores podem usar a API Google Ad Manager para criar aplicativos que gerenciam inventário, criam pedidos, geram relatórios e muito mais.
A API Ad Manager usa o VPAID. Para ajudar você a começar, oferecemos bibliotecas de cliente para Java, .NET, Python, PHP e Ruby. Para fazer sua primeira solicitação de API, siga as etapas abaixo.
Acessar uma rede do Ad Manager
Se você ainda não tiver uma, crie uma conta do Ad Manager. Também é possível criar uma rede de teste se você quiser testar a API em um ambiente separado. Você não precisa de uma conta do AdSense para fins de teste.
Anote o código de rede. Você o encontrará no URL quando fizer login na rede. Por exemplo, no URL
https://admanager.google.com/1234#home
, 1234
é o
código de rede.
Criar credenciais de autenticação
É preciso autenticar todas as solicitações da API Ad Manager usando o OAuth2. As etapas a seguir abrangem o caso de uso simples de acesso aos seus próprios dados do Ad Manager. Veja mais detalhes e outras opções em Autenticação.
- Abra a página de credenciais do Console de APIs do Google.
- No menu do projeto, escolha Criar projeto, insira um nome para ele e edite o ID fornecido. Clique em Criar.
- Na página "Credenciais", selecione Criar credenciais e, em seguida, selecione Chave da conta de serviço.
- Selecione Nova conta de serviço e selecione JSON como o tipo de chave.
- Clique em Criar para fazer o download de um arquivo com uma chave privada.
Configurar sua rede do Ad Manager
- Faça login no Google Ad Manager.
- Na barra lateral, clique em Administrador > Configurações globais.
- Em Configurações gerais > Acesso à API, clique no controle deslizante para Ativado.
- Clique no botão Salvar na parte de baixo da página.
Configurar o cliente
Faça o download de uma das bibliotecas de cliente do Ad Manager. As bibliotecas oferecem funções de wrapper e recursos que facilitam e agilizam o desenvolvimento de aplicativos.
As guias abaixo mostram guias de início rápido para programação em cada uma das linguagens para as quais há uma biblioteca de cliente.
Java
Veja um exemplo básico que mostra como usar a biblioteca do cliente Java. Para informações de uso mais detalhadas, consulte o arquivo README na distribuição da biblioteca de cliente.
- Configurar suas credenciais
Execute o seguinte comando em um shell:
curl https://raw.githubusercontent.com/googleads/googleads-java-lib/master/examples/admanager_axis/src/main/resources/ads.properties -o ~/ads.properties
Abra o arquivo~/ads.properties
e preencha os seguintes campos:[...] api.admanager.applicationName=INSERT_APPLICATION_NAME_HERE api.admanager.jsonKeyFilePath=INSERT_PATH_TO_JSON_KEY_FILE_HERE api.admanager.networkCode=INSERT_NETWORK_CODE_HERE [...]
-
Especificar dependências
Edite o arquivo
pom.xml
e adicione o seguinte à tagdependencies
. O número da versão mais recente está no GitHub.<dependency> <groupId>com.google.api-ads</groupId> <artifactId>ads-lib</artifactId> <version>RELEASE</version> </dependency> <dependency> <groupId>com.google.api-ads</groupId> <artifactId>dfp-axis</artifactId> <version>RELEASE</version> </dependency>
-
Escreva um código e faça uma solicitação.
import com.google.api.ads.common.lib.auth.OfflineCredentials; import com.google.api.ads.common.lib.auth.OfflineCredentials.Api; import com.google.api.ads.admanager.axis.factory.AdManagerServices; import com.google.api.ads.admanager.axis.v202302.Network; import com.google.api.ads.admanager.axis.v202302.NetworkServiceInterface; import com.google.api.ads.admanager.lib.client.AdManagerSession; import com.google.api.client.auth.oauth2.Credential; public class App { public static void main(String[] args) throws Exception { Credential oAuth2Credential = new OfflineCredentials.Builder() .forApi(Api.AD_MANAGER) .fromFile() .build() .generateCredential(); // Construct an AdManagerSession. AdManagerSession session = new AdManagerSession.Builder() .fromFile() .withOAuth2Credential(oAuth2Credential) .build(); // Construct a Google Ad Manager service factory, which can only be used once per // thread, but should be reused as much as possible. AdManagerServices adManagerServices = new AdManagerServices(); // Retrieve the appropriate service NetworkServiceInterface networkService = adManagerServices.get(session, NetworkServiceInterface.class); // Make a request Network network = networkService.getCurrentNetwork(); System.out.printf("Current network has network code '%s' and display" + " name '%s'.%n", network.getNetworkCode(), network.getDisplayName()); } }
Python
Veja um exemplo básico que mostra como usar a biblioteca do cliente Python. A biblioteca de cliente do Python é compatível com o Python v3.6+. Para informações de uso mais detalhadas, consulte o arquivo README na distribuição da biblioteca de cliente.
- Instale a biblioteca e configure suas credenciais.
Execute os seguintes comandos em um shell:
pip install googleads curl https://raw.githubusercontent.com/googleads/googleads-python-lib/master/googleads.yaml \ -o ~/googleads.yaml
- Configure o arquivo
~/googleads.yaml
.Preencha os campos a seguir:
ad_manager: application_name: INSERT_APPLICATION_NAME_HERE network_code: INSERT_NETWORK_CODE_HERE path_to_private_key_file: INSERT_PATH_TO_FILE_HERE
-
Execute um código e faça uma solicitação.
# Import the library. from googleads import ad_manager # Initialize a client object, by default uses the credentials in ~/googleads.yaml. client = ad_manager.AdManagerClient.LoadFromStorage() # Initialize a service. network_service = client.GetService('NetworkService', version='v202302') # Make a request. current_network = network_service.getCurrentNetwork() print("Current network has network code '%s' and display name '%s'." % (current_network['networkCode'], current_network['displayName']))
PHP
Veja um exemplo básico que mostra como usar a biblioteca do cliente PHP.
-
Instale a biblioteca e configure suas credenciais.
Execute os comandos a seguir em um shell para instalar a biblioteca de cliente e fazer o download do arquivo adsapi_php.ini no diretório principal:
composer require googleads/googleads-php-lib curl https://raw.githubusercontent.com/googleads/googleads-php-lib/master/examples/AdManager/adsapi_php.ini -o ~/adsapi_php.ini
-
Configure o arquivo
~/adsapi_php.ini
.Preencha os campos a seguir:
[AD_MANAGER] networkCode = "INSERT_NETWORK_CODE_HERE" applicationName = "INSERT_APPLICATION_NAME_HERE" [OAUTH2] jsonKeyFilePath = "INSERT_ABSOLUTE_PATH_TO_OAUTH2_JSON_KEY_FILE_HERE" scopes = "https://www.googleapis.com/auth/dfp"
-
Execute um código e faça uma solicitação.
<?php require 'vendor/autoload.php'; use Google\AdsApi\AdManager\AdManagerSession; use Google\AdsApi\AdManager\AdManagerSessionBuilder; use Google\AdsApi\AdManager\v202302\ApiException; use Google\AdsApi\AdManager\v202302\ServiceFactory; use Google\AdsApi\Common\OAuth2TokenBuilder; // Generate a refreshable OAuth2 credential for authentication. $oAuth2Credential = (new OAuth2TokenBuilder()) ->fromFile() ->build(); // Construct an API session configured from a properties file and the OAuth2 // credentials above. $session = (new AdManagerSessionBuilder()) ->fromFile() ->withOAuth2Credential($oAuth2Credential) ->build(); // Get a service. $serviceFactory = new ServiceFactory(); $networkService = $serviceFactory->createNetworkService($session); // Make a request $network = $networkService->getCurrentNetwork(); printf( "Network with code %d and display name '%s' was found.\n", $network->getNetworkCode(), $network->getDisplayName() );
.NET
Veja um exemplo básico que mostra como usar a biblioteca do cliente.NET
- Criar um novo projeto
Abra o Visual Studio e crie um novo projeto (ou seja, aplicativo do Console).
- Adicionar as referências de biblioteca necessárias ao projeto
Adicione uma dependência nuget para Google.Dfp.
- Configurar o App.config
Copie src\App.config para o diretório do projeto e adicione-o ao projeto. Se o aplicativo tiver seu próprio App.config, será possível copiar os seguintes nós para ele.
- configuração/AdManagerApi
- configuração/configSections/section[name="AdManagerApi"]
- configuração/system.net
- Credenciais de configuração
Abra App.config e edite as seguintes chaves:
<add key="ApplicationName" value="INSERT_YOUR_APPLICATION_NAME_HERE" /> <add key="NetworkCode" value="INSERT_YOUR_NETWORK_CODE_HERE" /> <add key="OAuth2Mode" value="SERVICE_ACCOUNT" /> <add key="OAuth2SecretsJsonPath" value="INSERT_OAUTH2_SECRETS_JSON_FILE_PATH_HERE" />
- Fazer uma chamada para a biblioteca
Você pode chamar a biblioteca conforme mostrado no snippet de código C# a seguir
AdManagerUser user = new AdManagerUser(); using (InventoryService inventoryService = user.GetService<InventoryService>()) { // Create a statement to select ad units. int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT; StatementBuilder statementBuilder = new StatementBuilder().OrderBy("id ASC").Limit(pageSize); // Retrieve a small amount of ad units at a time, paging through until all // ad units have been retrieved. int totalResultSetSize = 0; do { AdUnitPage page = inventoryService.getAdUnitsByStatement(statementBuilder.ToStatement()); // Print out some information for each ad unit. if (page.results != null) { totalResultSetSize = page.totalResultSetSize; int i = page.startIndex; foreach (AdUnit adUnit in page.results) { Console.WriteLine( "{0}) Ad unit with ID \"{1}\" and name \"{2}\" was found.", i++, adUnit.id, adUnit.name); } } statementBuilder.IncreaseOffsetBy(pageSize); } while (statementBuilder.GetOffset() < totalResultSetSize); Console.WriteLine("Number of results found: {0}", totalResultSetSize); }
Se você não quiser definir suas credenciais na App.config, consulte este artigo da wiki para ver maneiras alternativas de usar a classe AdManagerUser. Para informações mais detalhadas sobre o uso da biblioteca do cliente .NET, consulte o README . Se você quiser desenvolver em .NET sem a biblioteca do cliente, consulte o artigo da wiki NoClientLibrary.
Ruby
Veja um exemplo básico que mostra como usar a biblioteca do cliente Ruby. A biblioteca de cliente do Ruby requer o Ruby 2.1 ou posterior.
-
Instale a gem do Ruby e receba o arquivo de configuração.
Execute os seguintes comandos em um shell:
gem install google-dfp-api
curl https://raw.githubusercontent.com/googleads/google-api-ads-ruby/master/ad_manager_api/ad_manager_api.yml -o ~/ad_manager_api.yml
-
Configurar suas credenciais
Preencha os campos obrigatórios no arquivo
~/ad_manager_api.yml
. Se você ainda não tiver um arquivo de chave OAuth2, siga as etapas para criar suas credenciais de OAuth2.:authentication: :oauth2_keyfile: INSERT_PATH_TO_JSON_KEY_FILE_HERE :application_name: INSERT_APPLICATION_NAME_HERE :network_code: INSERT_NETWORK_CODE_HERE
-
Escreva um código e faça uma solicitação.
# Import the library. require 'ad_manager_api' # Initialize an Ad Manager client instance (uses credentials in ~/ad_manager_api.yml by default). ad_manager = AdManagerApi::Api.new # Get a service instance. network_service = ad_manager.service(:NetworkService, :v202302) # Make a request. network = network_service.get_current_network() puts "The current network is %s (%d)." % [network[:display_name], network[:network_code]]
As etapas mais detalhadas para começar podem ser encontradas no arquivo README distribuído com a biblioteca de cliente do Ruby. Confira também nossa biblioteca de exemplo completa para Ruby.
Próximas etapas
Quando você tiver uma biblioteca de cliente em funcionamento, modifique os exemplos fornecidos para estendê-los de acordo com suas necessidades.
Consulte a documentação de referência para saber mais sobre a API.
Se precisar de ajuda, acesse nossa página de suporte.