Pierwsze kroki z interfejsem API

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

Ten artykuł wyjaśnia, jak zacząć tworzyć aplikacje korzystające z interfejsu Google Bid Manager API. Interfejs API umożliwia zarządzanie zapytaniami i pobieranie metadanych raportów.

Bid Manager API v2 to najnowsza dostępna i zalecana wersja.

1. Zanim rozpoczniesz

Jeśli nie znasz się na Google Display & Video 360, przeczytaj Centrum pomocy Display & Video 360 i eksperymentuj z interfejsem.

2. Przygotowanie do uwierzytelniania

Aby zacząć korzystać z interfejsu Bid Manager API, musisz najpierw użyć narzędzia do konfiguracji, które przeprowadzi Cię przez proces tworzenia projektu w konsoli Google API, włączania interfejsu API i tworzenia danych logowania.

Utwórz dane logowania OAuth 2.0, klikając Utwórz dane logowania OAuthGt. Po utworzeniu danych logowania identyfikator klienta możesz sprawdzić na stronie Dane logowania. Kliknij identyfikator klienta, aby uzyskać szczegółowe informacje, takie jak obiekt tajny klienta, identyfikatory URI przekierowania, adres źródłowy JavaScript i adres e-mail.

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

3. Wywoływanie interfejsu Bid Manager API

Karty poniżej zawierają krótkie wprowadzenie do kodowania w różnych językach. Podobny przykładowy kod znajdziesz też w przykładach repozytorium API Bid Managera.

Java

  1. Importuj 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. Wczytanie pliku obiektów tajnych klienta i wygenerowanie danych uwierzytelniających.

    Gdy po raz pierwszy wykonasz ten krok, w przeglądarce zostanie wyświetlona prośba o autoryzację. Zanim ją zaakceptujesz, sprawdź, czy logujesz się na konto Google, które ma dostęp do Display & Video 360. Aplikacja będzie uprawniona do uzyskiwania dostępu do danych w imieniu zalogowanego konta.

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

Szczegółowe informacje o korzystaniu z interfejsu Bid Manager API w Javie znajdziesz w pliku README w przykładach interfejsu Bid Manager API.

Python

  1. Importuj niezbędne biblioteki.

    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient import discovery
    
  2. Wczytanie pliku obiektów tajnych klienta i wygenerowanie danych uwierzytelniających.

    Gdy po raz pierwszy wykonasz ten krok, w przeglądarce zostanie wyświetlona prośba o autoryzację. Zanim ją zaakceptujesz, sprawdź, czy logujesz się na konto Google, które ma dostęp do Display & Video 360. Aplikacja będzie uprawniona do uzyskiwania dostępu do danych w imieniu zalogowanego konta.

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

Szczegółowe informacje o korzystaniu z interfejsu Bid Manager API w Pythonie znajdziesz w pliku README w przykładach interfejsu Bid Manager API.

PHP

W tym przykładzie zakładamy, że korzystasz z PHP z wbudowanym serwerem WWW i masz skonfigurowane dane logowania tak, by przekierowywać użytkowników na odpowiednią stronę. Na przykład ten kod w pliku index.php można uruchomić przy użyciu tego polecenia i danych logowania skonfigurowanych do przekierowywania do http://localhost:8000 po uwierzytelnieniu:

php -S localhost:8000 -t ./

  1. Pobierz i zainstaluj klienta PHP Google API.

    Preferowaną metodą jest Composer:

    composer require google/apiclient:^2.12.1
    

    Po zainstalowaniu aplikacji dodaj automatyczne narzędzie

    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 do adresu URL uwierzytelniania i pobierz token dostępu.

    Gdy po raz pierwszy wykonasz ten krok, w przeglądarce zostanie wyświetlona prośba o autoryzację. Zanim ją zaakceptujesz, sprawdź, czy logujesz się na konto Google, które ma dostęp do Display & Video 360. Aplikacja będzie uprawniona do uzyskiwania dostępu do danych w imieniu zalogowanego konta.

    // 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 dla usługi API Display &Video 360.

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

Szczegółowe informacje o korzystaniu z interfejsu Bid Manager API w języku PHP znajdziesz w pliku README w przykładach interfejsu API Bid Managera.

4. Dalsze kroki

Po uruchomieniu biblioteki klienta możesz zapoznać się z dokumentacją referencyjną i rozpocząć tworzenie implementacji.

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