Rozpocznij

Za pomocą interfejsu Google Ad Manager API możesz tworzyć aplikacje do zarządzania zasobami reklamowymi, tworzenia zamówień, generowania raportów i wykonywania innych czynności.

Interfejs API Ad Managera używa protokołu SOAP. Aby ułatwić Ci rozpoczęcie pracy, udostępniamy biblioteki klienta dla języków Java, .NET, Python, PHP i Ruby.

Aby utworzyć pierwsze żądanie do interfejsu API, wykonaj te czynności:

Uzyskiwanie dostępu do sieci Ad Managera

Jeśli jeszcze nie masz konta Ad Managera, załóż je. Jeśli chcesz przetestować interfejs API w osobnym środowisku, możesz utworzyć sieć testową. Pamiętaj, że konto AdSense nie jest potrzebne do celów testowych.

Zanotuj kod sieci. Znajdziesz go w adresie URL po zalogowaniu się w sieci. Na przykład w adresie URL https://admanager.google.com/1234#home 1234 to kod sieci.

Tworzenie danych uwierzytelniających

Wszystkie żądania do interfejsu API Ad Managera musisz uwierzytelniać przy użyciu protokołu OAuth 2.0. Opisane poniżej kroki opisują przypadek użycia dostępu do własnych danych Ad Managera. Więcej informacji i inne informacje znajdziesz w artykule na temat uwierzytelniania.

  1. Otwórz stronę danych logowania do Konsoli interfejsów API Google

  2. W menu projektu wybierz Utwórz projekt, wpisz nazwę projektu i opcjonalnie zmodyfikuj podany identyfikator projektu. Kliknij Utwórz.

  3. Na stronie Dane logowania wybierz Utwórz dane logowania, a potem Klucz konta usługi.

  4. Wybierz Nowe konto usługi i wybierz JSON jako typ klucza.

  5. Kliknij Utwórz, aby pobrać plik zawierający klucz prywatny.

Konfigurowanie sieci Ad Managera

  1. Zaloguj się w usłudze Google Ad Manager.

  2. Na pasku bocznym kliknij Administracja > Ustawienia globalne.

  3. W sekcji Ustawienia ogólne > Dostęp do interfejsu API kliknij suwak, aby ustawić go w pozycji Włączono.

  4. Kliknij przycisk Zapisz u dołu strony.

Konfigurowanie klienta

Pobierz jedną z bibliotek klienta Ad Managera. Biblioteki oferują funkcje kodu towarzyszącego, które ułatwiają i przyspieszają tworzenie aplikacji.

Poniższe karty zawierają krótkie wprowadzenia do kodowania w każdym języku, dla którego dostępna jest biblioteka klienta.

Java

Oto podstawowy przykład, który pokazuje, jak korzystać z biblioteki klienta Java. Szczegółowe informacje o wykorzystaniu znajdziesz w pliku README w dystrybucji biblioteki klienta.

  1. Skonfiguruj dane logowania

    Uruchom to polecenie w powłoce:

    curl https://raw.githubusercontent.com/googleads/googleads-java-lib/main/examples/admanager_axis/src/main/resources/ads.properties -o ~/ads.properties
    Otwórz plik ~/ads.properties i wypełnij te pola:
    [...]
    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. Określanie zależności

    Edytuj plik pom.xml i dodaj do tagu dependencies podane niżej dane. Najnowszą wersję znajdziesz na GitHubie.

    <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. Napisz kod i wyślij prośbę.

    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.v202402.Network;
    import com.google.api.ads.admanager.axis.v202402.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

Oto podstawowy przykład, który pokazuje, jak używać biblioteki klienta w Pythonie. Biblioteka klienta Pythona obsługuje Pythona w wersji 3.6 lub nowszej. Szczegółowe informacje o wykorzystaniu znajdziesz w pliku README w dystrybucji biblioteki klienta.

  1. Zainstaluj bibliotekę i skonfiguruj dane logowania.

    Uruchom te polecenia w powłoce:

    pip install googleads
    curl https://raw.githubusercontent.com/googleads/googleads-python-lib/main/googleads.yaml \
         -o ~/googleads.yaml
    
  2. Skonfiguruj plik ~/googleads.yaml.

    Wypełnij te pola:

    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. Uruchom kod i wyślij żądanie.
    # 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='v202402')
    
    # 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']))
    

PHP

Oto podstawowy przykład, który pokazuje, jak korzystać z biblioteki klienta PHP.

  1. Zainstaluj bibliotekę i skonfiguruj dane logowania.

    Uruchom w powłoce te polecenia, aby zainstalować bibliotekę klienta i pobrać plik adsapi_php.ini do katalogu głównego:

    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. Skonfiguruj plik ~/adsapi_php.ini.

    Wypełnij te pola:

    [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. Uruchom kod i wyślij żądanie.
    <?php
    require 'vendor/autoload.php';
    use Google\AdsApi\AdManager\AdManagerSession;
    use Google\AdsApi\AdManager\AdManagerSessionBuilder;
    use Google\AdsApi\AdManager\v202402\ApiException;
    use Google\AdsApi\AdManager\v202402\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

Oto podstawowy przykład, który pokazuje, jak użyć biblioteki klienta.NET

  1. Tworzenie nowego projektu

    Otwórz Visual Studio i utwórz nowy projekt (aplikacja Console).

  2. Dodaj do projektu wymagane odwołania do bibliotek

    Dodaj zależność nuget dla Google.Dfp.

  3. Konfigurowanie pliku App.config

    Skopiuj plik src\App.config do katalogu projektu i dodaj go do projektu. Jeśli Twoja aplikacja ma własną konfigurację App.config, możesz skopiować do niej te węzły:

    • konfiguracja/AdManager API
    • configuration/configSections/section[name="AdManagerApi"]
    • konfiguracja/system.net
  4. Skonfiguruj dane logowania

    Otwórz plik App.config i edytuj te klucze:

    <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. Wykonywanie połączenia z biblioteką

    Możesz wywołać tę bibliotekę w sposób podany w tym fragmencie kodu w języku C#

    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);
                }
            

Jeśli nie chcesz ustawiać danych logowania w pliku App.config, przeczytaj ten artykuł na stronie wiki, aby poznać alternatywne sposoby korzystania z klasy AdManagerUser. Więcej informacji o używaniu biblioteki klienta .NET znajdziesz w README . Jeśli chcesz programować w środowisku .NET bez biblioteki klienta, zapoznaj się z tym artykułem wiki NoClientLibrary.

Ruby

Oto podstawowy przykład, który pokazuje, jak używać biblioteki klienta Ruby. Biblioteka klienta Ruby wymaga języka Ruby 2.1 lub nowszej wersji.

  1. Zainstaluj klejnot Ruby i pobierz plik konfiguracji.

    Uruchom te polecenia w powłoce:

    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. Skonfiguruj dane logowania

    Wypełnij wymagane pola w pliku ~/ad_manager_api.yml. Jeśli nie masz jeszcze pliku klucza OAuth2, wykonaj instrukcje tworzenia danych logowania OAuth2.

    :authentication:
      :oauth2_keyfile: INSERT_PATH_TO_JSON_KEY_FILE_HERE
      :application_name: INSERT_APPLICATION_NAME_HERE
      :network_code: INSERT_NETWORK_CODE_HERE
    
  3. Napisz kod i wyślij prośbę.
    # 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, :v202402)
    
    # Make a request.
    network = network_service.get_current_network()
    
    puts "The current network is %s (%d)." %
            [network[:display_name], network[:network_code]]
    

Bardziej szczegółowe instrukcje znajdziesz w pliku README, który jest rozpowszechniany wraz z biblioteką klienta Ruby. Zapoznaj się też z naszą pełną przykładową biblioteką dla Ruby.

Dalsze kroki

Po uruchomieniu biblioteki klienta zmodyfikuj podane przykłady, aby dostosować je do swoich potrzeb.

Przejrzyj dokumentację referencyjną, aby dowiedzieć się więcej o interfejsie API.

Jeśli potrzebujesz wsparcia, odwiedź naszą stronę Pomoc.