Puedes usar la API de SOAP de Google Ad Manager para crear apps que administren el inventario, creen pedidos, generen informes y mucho más.
Para ayudarte a comenzar, ofrecemos bibliotecas cliente para Java, .NET, Python, PHP y Ruby.
Para realizar tu primera solicitud a la API, sigue estos pasos:
Obtén acceso a una red de Ad Manager
Si aún no tienes una, regístrate para obtener una cuenta de Ad Manager. También puedes crear una red de prueba si quieres probar la API en un entorno separado. Ten en cuenta que no necesitas una cuenta de AdSense para realizar pruebas.
Toma nota de tu código de red. Puedes encontrarlo en la URL cuando accedas a tu red. Por ejemplo, en la URL https://admanager.google.com/1234#home, 1234 es tu código de red.
Crea credenciales de autenticación
Debes autenticar todas las solicitudes a la API de Ad Manager SOAP con OAuth 2.0. En los siguientes pasos, se explica el caso de uso del acceso a tus propios datos de Ad Manager. Para obtener más detalles y otras opciones, consulta Autenticación.
Abre la página Credenciales de la consola de APIs de Google.
En el menú del proyecto, elige Crear proyecto, ingresa un nombre para el proyecto y, de manera opcional, edita el ID del proyecto proporcionado. Haz clic en Crear.
En la página Credenciales, selecciona Crear credenciales y, luego, Clave de cuenta de servicio.
Selecciona Nueva cuenta de servicio y, luego,
JSONcomo el tipo de clave.Haz clic en Crear para descargar un archivo que contenga una clave privada.
Configura tu red de Ad Manager
Accede a Google Ad Manager.
En la barra lateral, haz clic en Administrador > Configuración global.
En Configuración general > Acceso a la API, haz clic en el control deslizante para Habilitar.
Haz clic en el botón Guardar en la parte inferior de la página.
Configura tu cliente
Descarga una de las bibliotecas cliente de Ad Manager. Las bibliotecas ofrecen funciones y características de wrapper que facilitan y aceleran el desarrollo de apps.
En las siguientes pestañas, se proporcionan guías de inicio rápido para programar en cada uno de los lenguajes para los que hay una biblioteca cliente.
Java
A continuación, se muestra un ejemplo básico que ilustra cómo usar la biblioteca cliente de Java. Para obtener información de uso más detallada, consulta el archivo README en la distribución de la biblioteca cliente.
- Configura tus credenciales
Ejecuta el siguiente comando en un shell:
Abre el archivocurl https://raw.githubusercontent.com/googleads/googleads-java-lib/main/examples/admanager_axis/src/main/resources/ads.properties -o ~/ads.properties~/ads.propertiesy completa los siguientes 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 dependencias
Edita tu archivo
pom.xmly agrega lo siguiente a la etiquetadependencies. Puedes encontrar el número de versión más reciente en 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>
-
Escribe algo de código y haz una solicitud.
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.v202608.Network; import com.google.api.ads.admanager.axis.v202608.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
A continuación, se muestra un ejemplo básico que ilustra cómo usar la biblioteca cliente de Python. La biblioteca cliente de Python admite Python 3.6 y versiones posteriores. Para obtener información más detallada sobre el uso, consulta el archivo README en la distribución de la biblioteca cliente.
- Instala la biblioteca y configura tus credenciales.
Ejecuta los siguientes comandos en un shell:
python3 -m pip install googleadscurl https://raw.githubusercontent.com/googleads/googleads-python-lib/main/googleads.yaml \ -o ~/googleads.yaml - Configura tu archivo
~/googleads.yaml.Complete los siguientes campos:
ad_manager: application_name: INSERT_APPLICATION_NAME_HERE network_code: INSERT_NETWORK_CODE_HERE path_to_private_key_file: INSERT_PATH_TO_FILE_HERE
-
Ejecuta código y haz una solicitud.
# 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='v202608') # 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
A continuación, se incluye un ejemplo básico que muestra cómo usar la biblioteca cliente de PHP.
-
Instala la biblioteca y configura tus credenciales.
Ejecuta los siguientes comandos en un shell para instalar la biblioteca cliente y descargar el archivo adsapi_php.ini en tu directorio principal:
composer require googleads/googleads-php-libcurl https://raw.githubusercontent.com/googleads/googleads-php-lib/main/examples/AdManager/adsapi_php.ini -o ~/adsapi_php.ini -
Configura tu archivo
~/adsapi_php.ini.Complete los siguientes campos:
[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"
-
Ejecuta código y haz una solicitud.
<?php require 'vendor/autoload.php'; use Google\AdsApi\AdManager\AdManagerSession; use Google\AdsApi\AdManager\AdManagerSessionBuilder; use Google\AdsApi\AdManager\v202608\ApiException; use Google\AdsApi\AdManager\v202608\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
A continuación, se incluye un ejemplo básico que muestra cómo usar la biblioteca cliente de .NET.
- Crea un proyecto nuevo
Abre Visual Studio y crea un proyecto nuevo (aplicación de consola).
- Agrega las referencias de biblioteca necesarias a tu proyecto
Agrega una dependencia de NuGet para Google.Dfp.
- Configura tu App.config
Copia src\App.config en el directorio de tu proyecto y agrégalo a este. Si tu aplicación tiene su propio archivo App.config, puedes copiar los siguientes nodos en él:
- configuration/AdManagerApi
- configuration/configSections/section[name="AdManagerApi"]
- configuration/system.net
- Configura las credenciales
Abre App.config y edita las siguientes claves:
<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" />
- Cómo hacer una llamada a la biblioteca
Puedes llamar a la biblioteca como se muestra en el siguiente fragmento de código en C#:
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); }
Si no deseas establecer tus credenciales en el archivo App.config, consulta este artículo de la wiki para conocer otras formas de usar la clase AdManagerUser. Para obtener información más detallada sobre el uso de la biblioteca cliente de .NET, consulta el archivo README . Si deseas desarrollar en .NET sin la biblioteca cliente, consulta el artículo de wiki NoClientLibrary.
Ruby
A continuación, se incluye un ejemplo básico que muestra cómo usar la biblioteca cliente de Ruby. La biblioteca cliente de Ruby requiere Ruby 2.1 o versiones posteriores.
-
Instala la gem de Ruby y obtén el archivo de configuración.
Ejecuta los siguientes comandos en un shell:
gem install google-dfp-apicurl https://raw.githubusercontent.com/googleads/google-api-ads-ruby/main/ad_manager_api/ad_manager_api.yml -o ~/ad_manager_api.yml -
Configura tus credenciales
Completa los campos obligatorios del archivo
~/ad_manager_api.yml. Si aún no tienes un archivo de claves de OAuth2, deberás seguir los pasos para crear tus credenciales de OAuth2.:authentication: :oauth2_keyfile: INSERT_PATH_TO_JSON_KEY_FILE_HERE :application_name: INSERT_APPLICATION_NAME_HERE :network_code: INSERT_NETWORK_CODE_HERE
-
Escribe algo de código y haz una solicitud.
# 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, :v202608) # Make a request. network = network_service.get_current_network() puts "The current network is %s (%d)." % [network[:display_name], network[:network_code]]
Puedes encontrar pasos más detallados para comenzar en el archivo README que se distribuye con la biblioteca cliente de Ruby. También puedes consultar nuestra biblioteca de ejemplos completa para Ruby.
Próximos pasos
Cuando tengas una biblioteca cliente en funcionamiento, modifica los ejemplos proporcionados para extenderlos según tus necesidades.
Explora la documentación de referencia para obtener más información sobre la API.
Si necesitas ayuda, visita nuestra página de asistencia.