Te recomendamos que uses las bibliotecas cliente de la API de Google con la API de Display & Video 360. Con las bibliotecas cliente, no tienes que realizar solicitudes HTTP ni analizar respuestas de forma manual. Las bibliotecas cliente pueden proporcionar una mejor integración del lenguaje, mayor seguridad y compatibilidad para realizar llamadas que requieren la autorización del usuario.
La API de Display & Video 360 se basa en HTTP y JSON. Si lo prefieres, puedes usar cualquier cliente HTTP estándar para realizar solicitudes y analizar respuestas.
Instala una biblioteca cliente
Ofrecemos bibliotecas cliente que admiten la API de Display & Video 360 en una variedad de lenguajes de programación. Para obtener una lista completa de las bibliotecas cliente, consulta nuestra página de muestras y bibliotecas.
Las guías para desarrolladores de la API de Display & Video 360 proporcionan fragmentos de código para los siguientes lenguajes:
Además de los fragmentos de código en nuestras guías, ofrecemos ejemplos de integración completos en estos idiomas. Consulta nuestro repositorio de GitHub de ejemplos de la API de Display & Video 360 para ver estos ejemplos.
Configura tu cliente
Con las credenciales de OAuth 2.0 y una biblioteca cliente instalada, ya puedes usar la API de Display & Video 360. Sigue estos pasos para autorizar y configurar tu cliente:
Java
Importa las bibliotecas necesarias.
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.displayvideo.v4.DisplayVideo; import com.google.api.services.displayvideo.v4.DisplayVideo.Advertisers; import com.google.api.services.displayvideo.v4.model.Advertiser; import com.google.api.services.displayvideo.v4.model.ListAdvertisersResponse; import java.io.Reader; import java.nio.file.Files; import java.nio.file.Paths;Carga el archivo de secretos del cliente y genera credenciales de autorización.
La primera vez que realices este paso, se te pedirá que aceptes un mensaje de autorización en tu navegador. Antes de aceptar, asegúrate de haber accedido con una Cuenta de Google que tenga acceso a Display & Video 360. Tu app estará autorizada para acceder a los datos en nombre de la cuenta a la que se haya accedido en ese momento. Consulta nuestra guía sobre el concepto de permisos de usuario para obtener más detalles.
// 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");Crea un cliente de API autorizado.
// Create authorized API client. DisplayVideo service = new DisplayVideo.Builder(credential.getTransport(), credential.getJsonFactory(), credential) .setApplicationName("displayvideo-java-installed-app-sample") .build();
Python
Importa las bibliotecas necesarias.
from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient import discoveryCarga el archivo de secretos del cliente y genera credenciales de autorización.
La primera vez que realices este paso, se te pedirá que aceptes un mensaje de autorización en tu navegador. Antes de aceptar, asegúrate de haber accedido con una Cuenta de Google que tenga acceso a Display & Video 360. Tu app estará autorizada para acceder a los datos en nombre de la cuenta a la que se haya accedido en ese momento. Consulta nuestra guía sobre el concepto de permisos de usuario para obtener más detalles.
# 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()Crea un cliente de API autorizado.
# Build the discovery document URL. discovery_url = f'https://displayvideo.googleapis.com/$discovery/rest?version=v4' # Build the API service. service = discovery.build( 'displayvideo', 'v4', discoveryServiceUrl=discovery_url, credentials=credentials)
PHP
En este ejemplo, se supone que ejecutas PHP con un servidor web integrado y que configuraste tus credenciales para redireccionar a la página web pertinente. Por ejemplo, este código, en un archivo index.php, se puede ejecutar con el siguiente comando y las credenciales configuradas para redireccionar a http://localhost:8000 después de la autenticación:
php -S localhost:8000 -t ./Descarga e instala el cliente de la API de Google para PHP.
El método preferido es usar Composer:
composer require google/apiclient:^2.18.2 google/apiclient-services:=0.396.0Una vez instalado, asegúrate de incluir el cargador automático:
require_once '/path/to/your-project/vendor/autoload.php';Crea un objeto Google_Client.
$client = new Google_Client();Configura el cliente, redirecciona a la URL de autenticación si es necesario y recupera un token de acceso.
La primera vez que realices este paso, se te pedirá que aceptes un mensaje de autorización en tu navegador. Antes de aceptar, asegúrate de haber accedido con una Cuenta de Google que tenga acceso a Display & Video 360. Tu app estará autorizada para acceder a los datos en nombre de la cuenta a la que se haya accedido en ese momento. Consulta nuestra guía sobre el concepto de permisos de usuario para obtener más detalles.
// Set up the client. $client->setApplicationName('DV360 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);Construye un cliente para el servicio de la API de Display & Video 360.
$service = new Google_Service_DisplayVideo($client);