Başlayın

Envanteri yöneten, sipariş oluşturan, rapor çeken ve daha fazlasını yapan uygulamalar oluşturmak için Google Ad Manager API'sini kullanabilirsiniz.

Ad Manager API'si SOAP'ı kullanır. Başlamanıza yardımcı olmak amacıyla Java, .NET, Python, PHP ve Ruby için istemci kitaplıkları sunuyoruz.

İlk API isteğinizi göndermek için aşağıdaki adımları uygulayın:

Ad Manager ağına erişim elde etme

Henüz hesabınız yoksa bir Ad Manager hesabı için kaydolun. API'yi ayrı bir ortamda test etmek istiyorsanız bir test ağı da oluşturabilirsiniz. Test amaçlı olarak bir AdSense hesabına ihtiyacınız olmadığını unutmayın.

Ağ kodunuzu not edin. Bu bilgiyi, ağınızda oturum açtığınızda URL'de bulabilirsiniz. Örneğin, https://admanager.google.com/1234#home URL'sinde 1234 ağ kodunuzdur.

Kimlik doğrulama kimlik bilgileri oluştur

Tüm Ad Manager API isteklerinin kimliğini OAuth 2.0 kullanarak doğrulamanız gerekir. Aşağıdaki adımlar, kendi Ad Manager verilerinize erişmeyle ilgili kullanım alanını kapsar. Daha fazla bilgi ve diğer seçenekler için Kimlik doğrulama bölümüne bakın.

  1. Google API Konsolu Kimlik Bilgileri sayfasını açın.

  2. Proje menüsünden Proje oluştur'u seçin, proje için bir ad girin ve isteğe bağlı olarak sağlanan Proje Kimliğini düzenleyin. Oluştur'u tıklayın.

  3. Kimlik bilgileri sayfasında Kimlik bilgisi oluştur'u ve ardından Hizmet hesabı anahtarı'nı seçin.

  4. Yeni hizmet hesabı'nı ve anahtar türü olarak JSON'yi seçin.

  5. Özel anahtar içeren bir dosya indirmek için Oluştur'u tıklayın.

Ad Manager ağınızı yapılandırma

  1. Google Ad Manager'da oturum açın.

  2. Kenar çubuğunda Yönetici > Genel ayarlar'ı tıklayın.

  3. Genel ayarlar > Api erişimi bölümünde, kaydırma çubuğunu Etkin'e getirin.

  4. Sayfanın alt kısmındaki Kaydet düğmesini tıklayın.

İstemcinizi ayarlayın

Ad Manager istemci kitaplıklarından birini indirin. Kitaplıklar, uygulama geliştirmeyi daha kolay ve hızlı hale getiren sarmalayıcı işlevleri ve özellikleri sunar.

Aşağıdaki sekmeler, istemci kitaplığı bulunan dillerin her birinde kodlama için hızlı başlangıç kılavuzları sağlar.

Java

Java istemci kitaplığının nasıl kullanılacağını gösteren temel bir örneği burada bulabilirsiniz. Daha ayrıntılı kullanım bilgileri için istemci kitaplığı dağıtımındaki README dosyasına bakın.

  1. Kimlik bilgilerinizi ayarlayın

    Kabukta aşağıdaki komutu çalıştırın:

    curl https://raw.githubusercontent.com/googleads/googleads-java-lib/main/examples/admanager_axis/src/main/resources/ads.properties -o ~/ads.properties
    ~/ads.properties dosyasını açın ve aşağıdaki alanları doldurun:
    [...]
    api.admanager.applicationName=INSERT_APPLICATION_NAME_HERE
    api.admanager.jsonKeyFilePath=INSERT_PATH_TO_JSON_KEY_FILE_HERE
    api.admanager.networkCode=INSERT_NETWORK_CODE_HERE
    [...]
  2. Bağımlılıkları belirtme

    pom.xml dosyanızı düzenleyin ve aşağıdaki kodu dependencies etiketine ekleyin. En son sürüm numarasını GitHub'da bulabilirsiniz.

    <dependency>
      <groupId>com.google.api-ads</groupId>
      <artifactId>ads-lib</artifactId>
      <version>RELEASE</version>
    </dependency>
    <dependency>
      <groupId>com.google.api-ads</groupId>
      <artifactId>dfp-axis</artifactId>
      <version>RELEASE</version>
    </dependency>

  3. Kod yazın ve istekte bulunun.

    import com.google.api.ads.common.lib.auth.OfflineCredentials;
    import com.google.api.ads.common.lib.auth.OfflineCredentials.Api;
    import com.google.api.ads.admanager.axis.factory.AdManagerServices;
    import com.google.api.ads.admanager.axis.v202308.Network;
    import com.google.api.ads.admanager.axis.v202308.NetworkServiceInterface;
    import com.google.api.ads.admanager.lib.client.AdManagerSession;
    import com.google.api.client.auth.oauth2.Credential;
    
    public class App {
      public static void main(String[] args) throws Exception {
        Credential oAuth2Credential = new OfflineCredentials.Builder()
            .forApi(Api.AD_MANAGER)
            .fromFile()
            .build()
            .generateCredential();
    
        // Construct an AdManagerSession.
        AdManagerSession session = new AdManagerSession.Builder()
            .fromFile()
            .withOAuth2Credential(oAuth2Credential)
            .build();
    
        // Construct a Google Ad Manager service factory, which can only be used once per
        // thread, but should be reused as much as possible.
        AdManagerServices adManagerServices = new AdManagerServices();
    
        // Retrieve the appropriate service
        NetworkServiceInterface networkService = adManagerServices.get(session,
            NetworkServiceInterface.class);
    
        // Make a request
        Network network = networkService.getCurrentNetwork();
    
        System.out.printf("Current network has network code '%s' and display" +
            " name '%s'.%n", network.getNetworkCode(), network.getDisplayName());
      }
    }
    

Python

Python istemci kitaplığının nasıl kullanılacağını gösteren temel bir örneği aşağıda bulabilirsiniz. Python İstemci Kitaplığı, Python v3.6 ve sonraki sürümleri destekler. Daha ayrıntılı kullanım bilgileri için istemci kitaplığı dağıtımındaki README dosyasına bakın.

  1. Kitaplığı yükleyin ve kimlik bilgilerinizi ayarlayın.

    Bir kabukta aşağıdaki komutları çalıştırın:

    pip install googleads
    curl https://raw.githubusercontent.com/googleads/googleads-python-lib/main/googleads.yaml \
         -o ~/googleads.yaml
    
  2. ~/googleads.yaml dosyanızı oluşturun.

    Aşağıdaki alanları doldurun:

    ad_manager:
      application_name: INSERT_APPLICATION_NAME_HERE
      network_code: INSERT_NETWORK_CODE_HERE
      path_to_private_key_file: INSERT_PATH_TO_FILE_HERE
    
  3. Kod çalıştırın ve istekte bulunun.
    # Import the library.
    from googleads import ad_manager
    
    # Initialize a client object, by default uses the credentials in ~/googleads.yaml.
    client = ad_manager.AdManagerClient.LoadFromStorage()
    
    # Initialize a service.
    network_service = client.GetService('NetworkService', version='v202308')
    
    # Make a request.
    current_network = network_service.getCurrentNetwork()
    
    print("Current network has network code '%s' and display name '%s'." %
            (current_network['networkCode'], current_network['displayName']))
    

2.999

PHP istemci kitaplığının nasıl kullanılacağını gösteren temel bir örneği burada bulabilirsiniz.

  1. Kitaplığı yükleyin ve kimlik bilgilerinizi ayarlayın.

    İstemci kitaplığını yüklemek için kabukta aşağıdaki komutları çalıştırın ve adsapi_php.ini dosyasını ana dizininize indirin:

    composer require googleads/googleads-php-lib
    curl https://raw.githubusercontent.com/googleads/googleads-php-lib/main/examples/AdManager/adsapi_php.ini -o ~/adsapi_php.ini
  2. ~/adsapi_php.ini dosyanızı ayarlayın.

    Aşağıdaki alanları doldurun:

    [AD_MANAGER]
    networkCode = "INSERT_NETWORK_CODE_HERE"
    applicationName = "INSERT_APPLICATION_NAME_HERE"
    
    [OAUTH2]
    jsonKeyFilePath = "INSERT_ABSOLUTE_PATH_TO_OAUTH2_JSON_KEY_FILE_HERE"
    scopes = "https://www.googleapis.com/auth/dfp"
    
  3. Kod çalıştırın ve istekte bulunun.
    <?php
    require 'vendor/autoload.php';
    use Google\AdsApi\AdManager\AdManagerSession;
    use Google\AdsApi\AdManager\AdManagerSessionBuilder;
    use Google\AdsApi\AdManager\v202308\ApiException;
    use Google\AdsApi\AdManager\v202308\ServiceFactory;
    use Google\AdsApi\Common\OAuth2TokenBuilder;
    
    // Generate a refreshable OAuth2 credential for authentication.
    $oAuth2Credential = (new OAuth2TokenBuilder())
        ->fromFile()
        ->build();
    // Construct an API session configured from a properties file and the OAuth2
    // credentials above.
    $session = (new AdManagerSessionBuilder())
        ->fromFile()
        ->withOAuth2Credential($oAuth2Credential)
        ->build();
    
    // Get a service.
    $serviceFactory = new ServiceFactory();
    $networkService = $serviceFactory->createNetworkService($session);
    
    // Make a request
    $network = $networkService->getCurrentNetwork();
    printf(
        "Network with code %d and display name '%s' was found.\n",
        $network->getNetworkCode(),
        $network->getDisplayName()
    );
    

.NET

.NET istemci kitaplığının nasıl kullanılacağını gösteren temel bir örneği aşağıda bulabilirsiniz

  1. Yeni proje oluşturma

    Visual Studio'yu açın ve yeni bir proje (Konsol Uygulaması) oluşturun.

  2. Gerekli kitaplık referanslarını projenize ekleyin

    Google.Dfp için bir nuget bağımlılığı ekleyin.

  3. App.config dosyanızı kurma

    src\App.config dosyasını proje dizininize kopyalayıp projenize ekleyin. Uygulamanızın kendi App.config dosyası varsa aşağıdaki düğümleri App.config dosyanıza kopyalayabilirsiniz:

    • Configuration/AdManagerApi
    • configuration/configSections/section[name="AdManagerApi"]
    • yapılandırma/sistem.net
  4. Kimlik bilgilerini ayarlama

    App.config'i açın ve aşağıdaki anahtarları düzenleyin:

    <add key="ApplicationName" value="INSERT_YOUR_APPLICATION_NAME_HERE" />
    <add key="NetworkCode" value="INSERT_YOUR_NETWORK_CODE_HERE" />
    <add key="OAuth2Mode" value="SERVICE_ACCOUNT" />
    <add key="OAuth2SecretsJsonPath" value="INSERT_OAUTH2_SECRETS_JSON_FILE_PATH_HERE" />
    

  5. Kitaplığa telefon etme

    Kitaplığı, aşağıdaki C# kod snippet'inde gösterildiği gibi çağırabilirsiniz

    AdManagerUser user = new AdManagerUser();
          using (InventoryService inventoryService = user.GetService<InventoryService>())
                {
                    // Create a statement to select ad units.
                    int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
                    StatementBuilder statementBuilder =
                        new StatementBuilder().OrderBy("id ASC").Limit(pageSize);
    
                    // Retrieve a small amount of ad units at a time, paging through until all
                    // ad units have been retrieved.
                    int totalResultSetSize = 0;
                    do
                    {
                        AdUnitPage page =
                            inventoryService.getAdUnitsByStatement(statementBuilder.ToStatement());
    
                        // Print out some information for each ad unit.
                        if (page.results != null)
                        {
                            totalResultSetSize = page.totalResultSetSize;
                            int i = page.startIndex;
                            foreach (AdUnit adUnit in page.results)
                            {
                                Console.WriteLine(
                                    "{0}) Ad unit with ID \"{1}\" and name \"{2}\" was found.", i++,
                                    adUnit.id, adUnit.name);
                            }
                        }
    
                        statementBuilder.IncreaseOffsetBy(pageSize);
                    } while (statementBuilder.GetOffset() < totalResultSetSize);
    
                    Console.WriteLine("Number of results found: {0}", totalResultSetSize);
                }
            

App.config dosyanızda kimlik bilgilerinizi ayarlamak istemiyorsanız AdManagerUser sınıfını kullanmanın alternatif yolları için bu wiki makalesine bakın. .NET İstemci Kitaplığı'nı kullanma hakkında daha ayrıntılı bilgi için BENİOKU sayfasına bakın. İstemci kitaplığı olmadan .NET'te geliştirme yapmak istiyorsanız lütfen NoClientLibrary wiki makalesine bakın.

Ruby

Ruby istemci kitaplığının nasıl kullanılacağını gösteren temel bir örneği burada bulabilirsiniz. Ruby istemci kitaplığı, Ruby 2.1 veya sonraki sürümünü gerektirir.

  1. Ruby gem'ini yükleyin ve yapılandırma dosyasını alın.

    Bir kabukta aşağıdaki komutları çalıştırın:

    gem install google-dfp-api
    curl https://raw.githubusercontent.com/googleads/google-api-ads-ruby/main/ad_manager_api/ad_manager_api.yml -o ~/ad_manager_api.yml
    
  2. Kimlik bilgilerinizi ayarlayın

    ~/ad_manager_api.yml dosyasındaki zorunlu alanları doldurun. Halihazırda bir OAuth2 anahtar dosyanız yoksa OAuth2 kimlik bilgilerinizi oluşturma adımlarını uygulamanız gerekir.

    :authentication:
      :oauth2_keyfile: INSERT_PATH_TO_JSON_KEY_FILE_HERE
      :application_name: INSERT_APPLICATION_NAME_HERE
      :network_code: INSERT_NETWORK_CODE_HERE
    
  3. Kod yazın ve istekte bulunun.
    # Import the library.
    require 'ad_manager_api'
    
    # Initialize an Ad Manager client instance (uses credentials in ~/ad_manager_api.yml by default).
    ad_manager = AdManagerApi::Api.new
    
    # Get a service instance.
    network_service = ad_manager.service(:NetworkService, :v202308)
    
    # Make a request.
    network = network_service.get_current_network()
    
    puts "The current network is %s (%d)." %
            [network[:display_name], network[:network_code]]
    

Başlamak için daha ayrıntılı adımları, Ruby istemci kitaplığıyla dağıtılan README dosyasında bulabilirsiniz. Ayrıca, Ruby için tam örnek kitaplığımıza göz atın.

Sonraki adımlar

Çalışır durumda bir istemci kitaplığınız olduğunda, verilen örnekleri ihtiyaçlarınıza göre genişletmek için örneklerde değişiklik yapın.

API hakkında daha fazla bilgi edinmek için referans belgelere göz atın.

Yardıma ihtiyacınız olursa Destek sayfamızı ziyaret edin.