Erste Schritte

Mit der Google Ad Manager API können Sie Apps erstellen, mit denen Sie unter anderem Inventar verwalten, Aufträge erstellen und Berichte abrufen können.

Die Ad Manager API nutzt SOAP. Als Einstiegshilfe bieten wir Clientbibliotheken für Java, .NET, Python, PHP und Ruby.

So stellen Sie Ihre erste API-Anfrage:

Zugriff auf ein Ad Manager-Netzwerk erhalten

Registrieren Sie sich für ein Ad Manager-Konto, falls Sie noch keines haben. Wenn Sie die API in einer separaten Umgebung testen möchten, können Sie auch ein Testnetzwerk erstellen. Für Testzwecke ist kein AdSense-Konto erforderlich.

Notieren Sie sich Ihren Netzwerkcode. Sie finden sie in der URL, wenn Sie sich in Ihrem Netzwerk anmelden. In der URL https://admanager.google.com/1234#home ist beispielsweise 1234 Ihr Netzwerkcode.

Anmeldedaten für die Authentifizierung erstellen

Sie müssen alle Ad Manager API-Anfragen mit OAuth 2.0 authentifizieren. Die folgenden Schritte beziehen sich auf einen Anwendungsfall für den Zugriff auf Ihre eigenen Ad Manager-Daten. Weitere Informationen und Optionen finden Sie unter Authentifizierung.

  1. Öffnen Sie die Google API Console-Seite „Anmeldedaten“.

  2. Wählen Sie im Projektmenü Projekt erstellen aus, geben Sie einen Namen für das Projekt ein und bearbeiten Sie optional die angegebene Projekt-ID. Klicken Sie auf Erstellen.

  3. Wählen Sie auf der Seite „Anmeldedaten“ die Option Anmeldedaten erstellen und dann Dienstkontoschlüssel aus.

  4. Wählen Sie Neues Dienstkonto und JSON als Schlüsseltyp aus.

  5. Klicken Sie auf Erstellen, um eine Datei mit einem privaten Schlüssel herunterzuladen.

Ad Manager-Netzwerk konfigurieren

  1. Melden Sie sich in Google Ad Manager an.

  2. Klicken Sie in der Seitenleiste auf Verwaltung > Globale Einstellungen.

  3. Setzen Sie den Schieberegler unter Allgemeine Einstellungen > API-Zugriff auf Aktiviert.

  4. Klicken Sie unten auf der Seite auf Speichern.

Client einrichten

Laden Sie eine der Ad Manager-Clientbibliotheken herunter. Die Bibliotheken bieten Wrapper-Funktionen und -Funktionen, die die Anwendungsentwicklung einfacher und schneller machen.

Auf den folgenden Tabs finden Sie Kurzanleitungen für das Programmieren in allen Sprachen, für die eine Clientbibliothek vorhanden ist.

Java

Hier ist ein einfaches Beispiel für die Verwendung der Java-Clientbibliothek. Weitere Verwendungsinformationen finden Sie in der Readme-Datei in der Distribution der Clientbibliothek.

  1. Anmeldedaten einrichten

    Führen Sie den folgenden Befehl in einer Shell aus:

    curl https://raw.githubusercontent.com/googleads/googleads-java-lib/main/examples/admanager_axis/src/main/resources/ads.properties -o ~/ads.properties
    Öffnen Sie die Datei ~/ads.properties und füllen Sie die folgenden Felder aus:
    [...]
    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. Abhängigkeiten angeben

    Bearbeiten Sie die Datei pom.xml und fügen Sie Folgendes in das dependencies-Tag ein: Die aktuelle Versionsnummer finden Sie auf GitHub.

    <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. Code schreiben und eine Anfrage stellen

    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

Hier ist ein einfaches Beispiel, das zeigt, wie die Python-Clientbibliothek verwendet wird. Die Python-Clientbibliothek unterstützt Python v3.6 und höher. Weitere Informationen zur Verwendung finden Sie in der Readme-Datei in der Distribution der Clientbibliothek.

  1. Installieren Sie die Bibliothek und richten Sie Ihre Anmeldedaten ein.

    Führen Sie die folgenden Befehle in einer Shell aus:

    pip install googleads
    curl https://raw.githubusercontent.com/googleads/googleads-python-lib/main/googleads.yaml \
         -o ~/googleads.yaml
    
  2. Richten Sie Ihre ~/googleads.yaml-Datei ein.

    Füllen Sie die folgenden Felder aus:

    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. Führen Sie Code aus und stellen Sie eine Anfrage.
    # 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

Hier ist ein einfaches Beispiel, das zeigt, wie die PHP-Clientbibliothek verwendet wird.

  1. Installieren Sie die Bibliothek und richten Sie Ihre Anmeldedaten ein.

    Führen Sie die folgenden Befehle in einer Shell aus, um die Clientbibliothek zu installieren und die Datei adsapi_php.ini in Ihr Basisverzeichnis herunterzuladen:

    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. Richten Sie Ihre ~/adsapi_php.ini-Datei ein.

    Füllen Sie die folgenden Felder aus:

    [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. Führen Sie Code aus und stellen Sie eine Anfrage.
    <?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

Hier ist ein einfaches Beispiel, das zeigt, wie die .NET-Clientbibliothek verwendet wird

  1. Neues Projekt erstellen

    Öffnen Sie Visual Studio und erstellen Sie ein neues Projekt in der Console-Anwendung.

  2. Ihrem Projekt die erforderlichen Bibliotheksreferenzen hinzufügen

    Fügen Sie eine Nuget-Abhängigkeit für Google.Dfp hinzu.

  3. App.config einrichten

    Kopieren Sie src\App.config in Ihr Projektverzeichnis und fügen Sie es Ihrem Projekt hinzu. Wenn Ihre Anwendung eine eigene App.config hat, können Sie die folgenden Knoten in Ihre App.config kopieren:

    • Konfiguration/AdManagerApi
    • configuration/configSections/section[name="AdManagerApi"]
    • Konfiguration/system.net
  4. Anmeldedaten einrichten

    Öffnen Sie App.config und bearbeiten Sie die folgenden Schlüssel:

    <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. In der Mediathek anrufen

    Sie können die Bibliothek wie im folgenden C#-Code-Snippet aufrufen.

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

Wenn Sie Ihre Anmeldedaten nicht in der App.config festlegen möchten, finden Sie in diesem Wiki-Artikel alternative Möglichkeiten zur Verwendung der Klasse „AdManagerUser“. Weitere Informationen zur Verwendung der .NET-Clientbibliothek finden Sie in der Readme-Datei . Informationen zur Entwicklung in .NET ohne die Clientbibliothek finden Sie im Wiki-Artikel „NoClientLibrary“.

Ruby

Hier ist ein einfaches Beispiel, das zeigt, wie die Ruby-Clientbibliothek verwendet wird. Für die Ruby-Clientbibliothek ist Ruby 2.1 oder höher erforderlich.

  1. Installieren Sie das RubyGem und rufen Sie die Konfigurationsdatei ab.

    Führen Sie die folgenden Befehle in einer Shell aus:

    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. Anmeldedaten einrichten

    Füllen Sie die Pflichtfelder in der Datei ~/ad_manager_api.yml aus. Wenn du noch keine OAuth2-Schlüsseldatei hast, musst du der Anleitung zum Erstellen deiner OAuth2-Anmeldedaten folgen.

    :authentication:
      :oauth2_keyfile: INSERT_PATH_TO_JSON_KEY_FILE_HERE
      :application_name: INSERT_APPLICATION_NAME_HERE
      :network_code: INSERT_NETWORK_CODE_HERE
    
  3. Code schreiben und eine Anfrage stellen
    # 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]]
    

Ausführlichere Schritte für die ersten Schritte finden Sie in der Readme-Datei, die mit der Ruby-Clientbibliothek bereitgestellt wird. Sehen Sie sich auch unsere vollständige Beispielbibliothek für Ruby an.

Nächste Schritte

Wenn Sie eine Clientbibliothek eingerichtet und ausgeführt haben, ändern Sie die bereitgestellten Beispiele, um sie an Ihre Anforderungen zu erweitern.

Weitere Informationen zur API finden Sie in der Referenzdokumentation.

Wenn Sie Hilfe benötigen, besuchen Sie unsere Supportseite.