Rozpocznij

Interfejsu Google Ad Manager SOAP API możesz używać do tworzenia aplikacji, które zarządzają zasobami reklamowymi, tworzą zamówienia, generują raporty i wykonują inne czynności.

Aby ułatwić Ci rozpoczęcie korzystania z interfejsu, udostępniamy biblioteki klienta w językach Java, .NET, Python, PHP i Ruby.

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

Uzyskiwanie dostępu do sieci Ad Managera

Jeśli nie masz jeszcze konta Ad Managera, zarejestruj się. Jeśli chcesz przetestować interfejs API w osobnym środowisku, możesz też utworzyć sieć testową. Pamiętaj, że do celów testowych nie potrzebujesz konta AdSense.

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 kodem sieci jest 1234.

Tworzenie danych uwierzytelniających

Wszystkie żądania do interfejsu SOAP API Ad Managera muszą być uwierzytelniane za pomocą protokołu OAuth 2.0. Poniższe kroki dotyczą przypadku użycia, w którym uzyskujesz dostęp do własnych danych Ad Managera. Więcej informacji i inne opcje znajdziesz w artykule na temat uwierzytelniania.

  1. Otwórz stronę Dane logowania w 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 kliknij Utwórz dane logowania, a następnie wybierz Klucz konta usługi.

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

  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 za pomocą interfejsu API kliknij suwak, aby ustawić go w pozycji Włączone.

  4. U dołu strony kliknij przycisk Zapisz.

Konfigurowanie klienta

Pobierz jedną z bibliotek klienta Ad Managera. Biblioteki zawierają funkcje i funkcje opakowujące, które ułatwiają i przyspieszają tworzenie aplikacji.

Na kartach poniżej znajdziesz krótkie wprowadzenie do kodowania w każdym z języków, dla których dostępna jest biblioteka klienta.

Java

Oto podstawowy przykład, który pokazuje, jak używać biblioteki klienta Java. Więcej informacji o użytkowaniu znajdziesz w pliku README w dystrybucji biblioteki klienta.

  1. Konfigurowanie danych logowania

    Uruchom w powłoce to polecenie:

    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

    Zmodyfikuj plik pom.xml i dodaj do tagu dependencies te informacje. Numer najnowszej wersji 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 żądanie

    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.v202608.Network;
    import com.google.api.ads.admanager.axis.v202608.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 pokazujący, jak korzystać z biblioteki klienta w Pythonie. Biblioteka klienta Python obsługuje Pythona w wersji 3.6 lub nowszej. Więcej informacji o korzystaniu z niej znajdziesz w pliku README w dystrybucji biblioteki klienta.

  1. Zainstaluj bibliotekę i skonfiguruj dane logowania.

    Uruchom w powłoce te polecenia:

    python3 -m 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='v202608')
    
    # 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 pokazujący, jak używać biblioteki klienta PHP.

  1. Zainstaluj bibliotekę i skonfiguruj dane logowania.

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

    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. Uruchamianie kodu i wysyłanie żądania
    <?php
    require 'vendor/autoload.php';
    use Google\AdsApi\AdManager\AdManagerSession;
    use Google\AdsApi\AdManager\AdManagerSessionBuilder;
    use Google\AdsApi\AdManager\v202608\ApiException;
    use Google\AdsApi\AdManager\v202608\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 pokazujący, jak używać biblioteki klienta .NET.

  1. Tworzenie nowego projektu

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

  2. Dodawanie do projektu wymaganych odwołań 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łasny plik App.config, możesz skopiować do niego te węzły:

    • configuration/AdManagerApi
    • configuration/configSections/section[name="AdManagerApi"]
    • configuration/system.net
  4. Konfigurowanie danych logowania

    Otwórz plik App.config i zmodyfikuj 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. Zadzwoń do biblioteki

    Możesz wywołać bibliotekę, jak pokazano w tym fragmencie kodu 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, zapoznaj się z tym artykułem w wiki, aby poznać alternatywne sposoby używania klasy AdManagerUser. Więcej informacji o korzystaniu z biblioteki klienta .NET znajdziesz w pliku README. Jeśli chcesz programować w języku .NET bez biblioteki klienta, zapoznaj się z artykułem wiki NoClientLibrary.

Ruby

Oto podstawowy przykład pokazujący, jak korzystać z biblioteki klienta Ruby. Biblioteka klienta Ruby wymaga Ruby w wersji 2.1 lub nowszej.

  1. Zainstaluj Ruby gem i pobierz plik konfiguracji.

    Uruchom w powłoce te polecenia:

    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. Konfigurowanie danych logowania

    Wypełnij wymagane pola w pliku ~/ad_manager_api.yml. Jeśli nie masz jeszcze pliku klucza OAuth2, musisz wykonać czynności opisane w artykule Tworzenie 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 żądanie
    # 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, :v202608)
    
    # 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 dołączony do biblioteki klienta Ruby. Możesz też zapoznać się z pełną biblioteką przykładów dla języka Ruby.

Dalsze kroki

Gdy biblioteka klienta będzie już działać, zmodyfikuj podane przykłady, aby dostosować je do swoich potrzeb.

Więcej informacji o interfejsie API znajdziesz w dokumentacji.

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