API'yi Kullanmaya Başlama

Bu belgede, Google Bid Manager API'yi kullanan uygulamalar yazmaya nasıl başlayacağınız açıklanmaktadır. API, sorguları yönetmenize ve rapor meta verilerini almanıza olanak tanır.

Bid Manager API v2, mevcut olan en yeni ve önerilen sürümdür.

1. Başlamadan önce

Google Display & Video 360 kavramları hakkında bilginiz yoksa Display & Video 360 Yardım Merkezi'ni okuyun ve kullanıcı arayüzünü deneyin.

2. Kimlik doğrulama için hazırlanma

Bid Manager API'yi kullanmaya başlamak için önce kurulum aracını kullanmanız gerekir. Bu araç, Google API Konsolu'nda proje oluşturma ve API'yi etkinleştirme konusunda size rehberlik eder.

Henüz yapmadıysanız Kimlik bilgileri oluştur > OAuth istemci kimliği'ni tıklayarak OAuth 2.0 kimlik bilgilerinizi oluşturun. Kimlik bilgilerini oluşturduktan sonra istemci kimliğinizi Kimlik Bilgileri sayfasında görebilirsiniz. İstemci gizli anahtarı, yönlendirme URI'leri, JavaScript kaynakları adresi ve e-posta adresi gibi ayrıntılar için istemci kimliğini tıklayın.

Daha fazla bilgi için İstekleri Yetkilendirme başlıklı makaleyi inceleyin.

3. Bid Manager API'yi çağırma

Aşağıdaki sekmelerde çeşitli dillerde kodlamayla ilgili hızlı başlangıç kılavuzları yer almaktadır. Benzer örnek kodu Bid Manager API Examples deposunda da bulabilirsiniz.

Java

  1. Gerekli kitaplıkları içe aktarın.

    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. İstemci gizli anahtarı dosyasını yükleyin ve yetkilendirme kimlik bilgileri oluşturun.

    Bu adımı ilk kez gerçekleştirdiğinizde tarayıcınızda bir yetkilendirme istemini kabul etmeniz istenir. Kabul etmeden önce Display & Video 360'a erişimi olan bir Google Hesabı ile oturum açtığınızdan emin olun. Uygulamanız, şu anda oturum açılmış olan hesabın adına verilere erişmek için yetkilendirilir.

    // 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. Yetkili bir API istemcisi oluşturun.

    // Create authorized API client.
    DoubleClickBidManager service =
        new DoubleClickBidManager.Builder(credential.getTransport(), credential.getJsonFactory(), credential)
            .setApplicationName("bidmanager-java-installed-app-sample")
            .build();
  4. Bir işlem gerçekleştirin.

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

Bid Manager API'yi Java ile kullanma hakkında daha ayrıntılı bilgi için Bid Manager API örneklerindeki README dosyasını inceleyin.

Python

  1. Gerekli kitaplıkları içe aktarın.

    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient import discovery
  2. İstemci gizli anahtarı dosyasını yükleyin ve yetkilendirme kimlik bilgileri oluşturun.

    Bu adımı ilk kez gerçekleştirdiğinizde tarayıcınızda bir yetkilendirme istemini kabul etmeniz istenir. Kabul etmeden önce Display & Video 360'a erişimi olan bir Google Hesabı ile oturum açtığınızdan emin olun. Uygulamanız, şu anda oturum açılmış olan hesabın adına verilere erişmek için yetkilendirilir.

    # 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. Yetkili bir API istemcisi oluşturun.

    # 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. Bir işlem gerçekleştirin.

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

Bid Manager API'yi Python ile kullanma hakkında daha ayrıntılı bilgi için Bid Manager API örneklerindeki README dosyasını inceleyin.

PHP

Bu örnekte, PHP'yi yerleşik bir web sunucusuyla çalıştırdığınız ve kimlik bilgilerinizi ilgili web sayfasına yönlendirecek şekilde yapılandırdığınız varsayılmaktadır. Örneğin, index.php dosyasındaki bu kod, aşağıdaki komut ve kimlik doğrulama işleminden sonra http://localhost:8000 adresine yönlendirecek şekilde yapılandırılmış kimlik bilgileri kullanılarak çalıştırılabilir:

php -S localhost:8000 -t ./

  1. Google API PHP İstemcisi'ni indirip yükleyin.

    Tercih edilen yöntem Composer'dır:

    composer require google/apiclient:^2.12.1

    Yüklendikten sonra otomatik yükleyiciyi eklediğinizden emin olun.

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

  2. Google_Client nesnesi oluşturun.

    $client = new Google_Client();
  3. İstemciyi ayarlayın, gerekirse kimlik doğrulama URL'sine yönlendirin ve erişim jetonu alın.

    Bu adımı ilk kez gerçekleştirdiğinizde tarayıcınızda bir yetkilendirme istemini kabul etmeniz istenir. Kabul etmeden önce Display & Video 360'a erişimi olan bir Google Hesabı ile oturum açtığınızdan emin olun. Uygulamanız, şu anda oturum açılmış olan hesabın adına verilere erişmek için yetkilendirilir.

    // 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. Display & Video 360 API hizmeti için bir istemci oluşturun.

    $service = new Google_Service_DoubleClickBidManager($client);
  5. Bir işlem gerçekleştirin.

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

Bid Manager API'yi PHP ile kullanma hakkında daha ayrıntılı bilgi için Bid Manager API örneklerindeki README dosyasını inceleyin.

4. Sonraki adımlar

Artık bir istemci kitaplığınız olduğuna göre referans belgelerini inceleyebilir ve uygulamanızı oluşturmaya başlayabilirsiniz.

Planlanmış raporları kullanma ve raporlamayla ilgili en iyi uygulamaları takip etme hakkında ek kılavuzlar da mevcuttur.