Configura tu cliente

Con las credenciales de OAuth 2.0 creadas y una biblioteca cliente instalada, puedes comenzar a usar la API de Display & Video 360. Para obtener información sobre cómo autorizar, configurar tu cliente y realizar tu primera solicitud, sigue la guía de inicio rápido que aparece a continuación.

Java

  1. 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.v3.DisplayVideo;
    import com.google.api.services.displayvideo.v3.DisplayVideo.Advertisers;
    import com.google.api.services.displayvideo.v3.model.Advertiser;
    import com.google.api.services.displayvideo.v3.model.ListAdvertisersResponse;
    import java.io.Reader;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
  2. Carga el archivo de secretos del cliente y genera las 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 que accediste con una Cuenta de Google que tenga acceso a Display & Video 360. Tu app estará autorizada para acceder a los datos en nombre de cualquier cuenta a la que accedas. Consulta nuestra guía sobre solicitudes de autorización para obtener más detalles sobre los permisos del usuario de Display & Video 360.

    // 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. 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();
    
  4. Realiza una operación.

    // Perform an operation.
    // Retrieve and print the first ten advertisers under a partner.
    ListAdvertisersResponse response =
        service
            .advertisers()
            .list()
            .setPartnerId(partner-id)
            .setPageSize(10)
            .execute();
    if (response.getAdvertisers().size() > 0) {
      for (int i = 0; i < response.getAdvertisers().size(); i++) {
        System.out.printf(
            "ID: %s Display Name: %s%n",
            response.getAdvertisers().get(i).getAdvertiserId(),
            response.getAdvertisers().get(i).getDisplayName());
      }
    } else {
      System.out.print("No advertisers found.");
    }
    

Python

  1. Importa las bibliotecas necesarias.

    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient import discovery
    
  2. Carga el archivo de secretos del cliente y genera las 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 que accediste con una Cuenta de Google que tenga acceso a Display & Video 360. Tu app estará autorizada para acceder a los datos en nombre de cualquier cuenta a la que accedas. Consulta nuestra guía sobre solicitudes de autorización para obtener más detalles sobre los permisos del usuario de Display & Video 360.

    # 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. Crea un cliente de API autorizado.

    # Build the discovery document URL.
    discovery_url = f'https://displayvideo.googleapis.com/$discovery/rest?version=v3'
    
    # Build the API service.
    service = discovery.build(
        'displayvideo',
        'v3',
        discoveryServiceUrl=discovery_url,
        credentials=credentials)
    
  4. Realiza una operación.

    # Build advertisers.list request.
    request = service.advertisers().list(
        partnerId=partner-id, pageSize='10')
    
    # Execute request.
    response = request.execute()
    
    # Print response.
    if len(response['advertisers']) > 0:
      for advertiser in response['advertisers']:
        print(f'ID: {advertiser["advertiserId"]} Display Name: {advertiser["displayName"]}')
    else:
      print('No advertisers found.')
    

PHP

En esta muestra, se supone que ejecutas el PHP con un servidor web integrado y que configuraste tus credenciales para que redireccionen a la página web correspondiente. Por ejemplo, este código, en un archivo index.php, se puede ejecutar con el siguiente comando y las siguientes credenciales configuradas para redireccionar a http://localhost:8000 después de la autenticación:

php -S localhost:8000 -t ./

  1. Descarga y, luego, instala el cliente PHP de la API de Google.

    El método preferido es usar Composer:

    composer require google/apiclient:^2.15.1 google/apiclient-services:=0.332.0
    

    Una vez instalado, asegúrate de incluir el cargador automático:

    require_once '/path/to/your-project/vendor/autoload.php';
    
  2. Crea un objeto Google_Client.

    $client = new Google_Client();
    
  3. Configurar el cliente, redireccionar a la URL de autenticación si es necesario y recuperar 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 que accediste con una Cuenta de Google que tenga acceso a Display & Video 360. Tu app estará autorizada para acceder a los datos en nombre de cualquier cuenta a la que accedas. Consulta nuestra guía sobre solicitudes de autorización para obtener más detalles sobre los permisos del usuario de Display & Video 360.

    // 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);
    
  4. Crea un cliente para el servicio de la API de Display & Video 360.

    $service = new Google_Service_DisplayVideo($client);
    
  5. Realiza una operación.

    // Configure params for the advertisers.list request.
    $optParams = array('pageSize' => 10, 'partnerId' => partner-id);
    
    // Execute the request.
    $result = $service->advertisers->listAdvertisers($optParams);
    
    // Print the retrieved advertisers.
    if (!empty($result->getAdvertisers())) {
      print('<pre>');
      foreach ($result->getAdvertisers() as $advertiser) {
        printf('<p>ID: %s, Display Name: %s</p>', $advertiser->advertiserId, $advertiser->displayName);
      }
      print('</pre>');
    } else {
      print '<p>No advertisers found.</p>';
    }