Pierwsze kroki z interfejsem API

Z tego dokumentu dowiesz się, jak zacząć pisać aplikacje korzystające z interfejsu Google Bid Manager API. Interfejs API umożliwia zarządzanie zapytaniami i pobieranie metadanych raportów.

Bid Manager API w wersji 2 to najnowsza i zalecana wersja.

1. Zanim rozpoczniesz

Jeśli nie znasz pojęć związanych z Google Display & Video 360, przeczytaj Centrum pomocy Display & Video 360 i wypróbuj interfejs.

2. Przygotuj się do uwierzytelniania

Aby rozpocząć korzystanie z interfejsu Bid Manager API, musisz najpierw użyć narzędzia do konfiguracji, które przeprowadzi Cię przez proces tworzenia projektu w Konsoli interfejsów API Google i włączania interfejsu API.

Jeśli jeszcze tego nie zrobiono, utwórz dane logowania OAuth 2.0, klikając Utwórz dane logowania > Identyfikator klienta OAuth. Po utworzeniu danych logowania możesz zobaczyć identyfikator klienta na stronie Dane logowania. Kliknij identyfikator klienta, aby wyświetlić szczegóły, takie jak tajny klucz klienta, identyfikatory URI przekierowania, adres źródła JavaScript i adres e-mail.

Więcej informacji znajdziesz w artykule Autoryzowanie żądań.

3. Wywoływanie interfejsu Bid Manager API

Na kartach poniżej znajdziesz przewodniki Szybki start dotyczące kodowania w różnych językach. Podobny przykładowy kod znajdziesz też w repozytorium z przykładami interfejsu Bid Manager API.

Java

  1. Zaimportuj niezbędne biblioteki.

    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;
  2. Wczytaj plik z hasłami klienta i wygeneruj dane logowania autoryzacji.

    Gdy wykonasz ten krok po raz pierwszy, zobaczysz w przeglądarce prośbę o zaakceptowanie autoryzacji. Zanim zaakceptujesz, upewnij się, że logujesz się za pomocą konta Google, które ma dostęp do Display & Video 360. Twoja aplikacja będzie autoryzowana do uzyskiwania dostępu do danych w imieniu konta, na które się zalogujesz.

    // 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. Utwórz autoryzowanego klienta interfejsu API.

    // Create authorized API client.
    DoubleClickBidManager service =
        new DoubleClickBidManager.Builder(credential.getTransport(), credential.getJsonFactory(), credential)
            .setApplicationName("bidmanager-java-installed-app-sample")
            .build();
  4. Wykonaj operację.

    // 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.");
    }

Więcej informacji o korzystaniu z interfejsu Bid Manager API w języku Java, znajdziesz w README w przykładach interfejsu Bid Manager API.

Python

  1. Zaimportuj niezbędne biblioteki.

    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient import discovery
  2. Wczytaj plik z hasłami klienta i wygeneruj dane logowania autoryzacji.

    Gdy wykonasz ten krok po raz pierwszy, zobaczysz w przeglądarce prośbę o zaakceptowanie autoryzacji. Zanim zaakceptujesz, upewnij się, że logujesz się za pomocą konta Google, które ma dostęp do Display & Video 360. Twoja aplikacja będzie autoryzowana do uzyskiwania dostępu do danych w imieniu konta, na które się zalogujesz.

    # 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. Utwórz autoryzowanego klienta interfejsu API.

    # 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)
  4. Wykonaj operację.

    # 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.')

Więcej informacji o korzystaniu z interfejsu Bid Manager API w języku Python, znajdziesz w README w przykładach interfejsu Bid Manager API.

PHP

Ten przykład zakłada, że używasz PHP z wbudowanym serwerem WWW i że masz skonfigurowane dane logowania, aby przekierowywać na odpowiednią stronę internetową. Na przykład ten kod w pliku index.php można uruchomić za pomocą tego polecenia i danych logowania skonfigurowanych tak, aby po uwierzytelnieniu przekierowywać na adres http://localhost:8000:

php -S localhost:8000 -t ./

  1. Pobierz i zainstaluj bibliotekę klienta Google API PHP.

    Preferowana metoda to użycie narzędzia Composer:

    composer require google/apiclient:^2.12.1

    Po zainstalowaniu pamiętaj, aby dołączyć autoloader.

    require_once '/path/to/your-project/vendor/autoload.php';

  2. Utwórz obiekt Google_Client.

    $client = new Google_Client();
  3. Skonfiguruj klienta, w razie potrzeby przekieruj na adres URL uwierzytelniania i pobierz token dostępu.

    Gdy wykonasz ten krok po raz pierwszy, zobaczysz w przeglądarce prośbę o zaakceptowanie autoryzacji. Zanim zaakceptujesz, upewnij się, że logujesz się za pomocą konta Google, które ma dostęp do Display & Video 360. Twoja aplikacja będzie autoryzowana do uzyskiwania dostępu do danych w imieniu konta, na które się zalogujesz.

    // 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);
  4. Utwórz klienta usługi Display &Video 360 API.

    $service = new Google_Service_DoubleClickBidManager($client);
  5. Wykonaj operację.

    // 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>';
    }

Więcej informacji o korzystaniu z interfejsu Bid Manager API w języku PHP, znajdziesz w README w przykładach interfejsu Bid Manager API.

4. Dalsze kroki

Gdy masz już działającą bibliotekę klienta, zapoznaj się z dokumentacją i zacznij tworzyć implementację.

Dostępne są też dodatkowe przewodniki dotyczące korzystania z raportów zaplanowanych i stosowania sprawdzonych metod raportowania.