Los gehts

Die Campaign Manager 360 API bietet programmatischen Zugriff auf Informationen aus Ihrem Campaign Manager 360-Konto. Damit können Sie Kampagnen und Berichte verwalten und erstellen, genau wie über die Campaign Manager 360- und Report Builder-Webdienste.

In diesem Leitfaden werden die ersten Schritte mit der Campaign Manager 360 API beschrieben.

Vorbereitung

Bevor Sie die Campaign Manager 360 API verwenden können, müssen Sie einige Voraussetzungen erfüllen:

  1. Sie benötigen ein Campaign Manager 360-Konto. Informationen zur Registrierung finden Sie unter Werbetreibende/Agenturen.

  2. Der API-Zugriff muss für Ihr Campaign Manager 360-Konto aktiviert sein. In den meisten Konten ist diese Funktion standardmäßig aktiviert. Wenn Sie sich nicht sicher sind, wenden Sie sich an Ihren Account Manager oder das Campaign Manager 360-Supportteam.

  3. Sie benötigen ein Nutzerprofil mit Zugriff auf dieses Konto. Bitten Sie den Administrator Ihres Campaign Manager 360-Kontos, ein Nutzerprofil zu erstellen, das mit diesem Konto verknüpft ist.

  4. Prüfen Sie die Berechtigungen für Nutzerprofile in der Campaign Manager 360-Benutzeroberfläche. Damit wird festgelegt, auf welche Daten des Nutzerprofils über die API zugegriffen werden kann. Es gibt keine separaten API-Berechtigungen.

Projekt erstellen

Wenn Sie die Campaign Manager 360 API verwenden möchten, müssen Sie zuerst ein Projekt in der Google API Console erstellen oder auswählen und die API aktivieren. Über diesen Link werden Sie durch den Prozess geführt und die Campaign Manager 360 API wird automatisch aktiviert.

Anmeldedaten generieren

Alle Anfragen an die Campaign Manager 360 API müssen autorisiert sein. Eine kurze Übersicht über die Autorisierung finden Sie im Hilfeartikel Anwendung bei Google autorisieren und identifizieren.

In der folgenden Anleitung wird beschrieben, wie Sie eine OAuth 2.0-Client-ID erstellen, die Sie mit dem Vorgang für installierte Anwendungen verwenden können. Eine Anleitung zum Generieren von Anmeldedaten für die Verwendung mit dem Dienstkontoablauf finden Sie im Leitfaden Dienstkonten.

  1. Folgen Sie der Anleitung unter Google API Console-Projekt konfigurieren.

  2. Öffnen Sie in der API Console die Seite Anmeldedaten.
  3. Klicken Sie auf ANMELDEDATEN ERSTELLLEN > OAuth-Client-ID.

    1. Wenn Sie für dieses Projekt noch keinen OAuth-Zustimmungsbildschirm konfiguriert haben, werden Sie jetzt dazu aufgefordert. Klicken Sie auf ZUSTIMMUNGSBildschirm konfigurieren.

    2. Wählen Sie den Nutzertyp aus und klicken Sie auf ERSTELLEN.

    3. Füllen Sie das erste Formular aus. Sie können diese Angaben bei Bedarf später ändern. Klicken Sie abschließend auf Speichern.

    4. Kehren Sie zu ANMELDEDATEN > ANMELDEDATEN ERSTEMMEN > OAuth-Client-ID zurück, um fortzufahren.

  4. Wählen Sie als Anwendungstyp Desktop-Anwendung aus, geben Sie einen Namen ein und klicken Sie auf Erstellen.

Anschließend werden Ihnen eine OAuth 2.0-Client-ID und ein Client-Secret angezeigt, die Sie im JSON-Format herunterladen und für später speichern können.

Clientbibliothek installieren

Die Campaign Manager 360 API basiert auf HTTP und JSON. Daher kann jeder Standard-HTTP-Client Anfragen an sie senden und die Antworten parsen.

Die Google API-Clientbibliotheken bieten jedoch eine bessere Sprachintegration sowie eine höhere Sicherheit und unterstützen auch autorisierte Anfragen. Die Clientbibliotheken sind in verschiedenen Programmiersprachen verfügbar. Wenn du sie verwendest, musst du HTTP-Anfragen nicht manuell erstellen und die Antworten nicht manuell parsen.

Wähle zuerst die Programmiersprache aus, die du für die Entwicklung verwendest.

C#

Installieren Sie die aktuelle Campaign Manager 360 API-Clientbibliothek für .NET. Wir empfehlen, die Installation mit NuGet zu verwalten.

Öffnen Sie die NuGet Package Manager Console und führen Sie den folgenden Befehl aus:

Install-Package Google.Apis.Dfareporting.v3_4

Weitere Informationen

Java

Installieren Sie die neueste Campaign Manager 360 API-Clientbibliothek für Java. Wir empfehlen, Maven zur Verwaltung der Installation zu verwenden.

Fügen Sie der Datei pom.xml die folgende Abhängigkeit hinzu:

<dependency>
  <groupId>com.google.apis</groupId>
  <artifactId>google-api-services-dfareporting</artifactId>
  <version>v4-rev20220611-1.32.1</version>
  <exclusions>
    <exclusion>
      <groupId>com.google.guava</groupId>
      <artifactId>guava-jdk5</artifactId>
    </exclusion>
  </exclusions>
</dependency>

Weitere Informationen

PHP

Installieren Sie die neueste Campaign Manager 360 API-Clientbibliothek für PHP. Wir empfehlen, Composer zur Verwaltung Ihrer Installation zu verwenden.

Öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus:

composer require google/apiclient

Wenn Sie die Bibliothek bereits installiert haben und nur auf die neueste Version aktualisieren möchten, gehen Sie so vor:

composer update google/apiclient

Je nach System musst du diesen Befehlen den Ausdruck sudo voranstellen.

Weitere Informationen

Python

Installieren Sie die neueste Campaign Manager 360 API-Clientbibliothek für Python. Wir empfehlen, pip zur Verwaltung der Installation zu verwenden.

Öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus:

pip install --upgrade google-api-python-client

Je nach System musst du diesen Befehlen den Ausdruck sudo voranstellen.

Weitere Informationen

Ruby

Installieren Sie die neueste Campaign Manager 360 API-Clientbibliothek für Ruby. Wir empfehlen, RubyGems zur Verwaltung Ihrer Installation zu verwenden.

Öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus:

gem install google-api-client

Wenn Sie die Bibliothek bereits installiert haben und nur auf die neueste Version aktualisieren möchten, gehen Sie so vor:

gem update -y google-api-client

Je nach System musst du diesen Befehlen den Ausdruck sudo voranstellen.

Weitere Informationen

Weitere unterstützte Sprachen finden Sie auf der Seite Clientbibliotheken.

Anfrage stellen

Nachdem Sie OAuth 2.0-Anmeldedaten erstellt und eine Clientbibliothek installiert haben, können Sie die Campaign Manager 360 API verwenden. In der folgenden Kurzanleitung erfahren Sie, wie Sie Ihren Client autorisieren, konfigurieren und Ihre erste Anfrage senden.

C#

  1. Lade die Datei mit den Clientschlüsseln und generiere Anmeldedaten für die Autorisierung.

    Wenn Sie diesen Schritt zum ersten Mal ausführen, werden Sie aufgefordert, eine Autorisierungsanfrage in Ihrem Browser zu akzeptieren. Achten Sie darauf, dass Sie mit einem Google-Konto angemeldet sind, das Zugriff auf Campaign Manager 360 hat, bevor Sie die Einladung annehmen. Ihre Anwendung ist dann berechtigt, im Namen des Kontos, in dem Sie gerade angemeldet sind, auf Daten zuzugreifen.

    // Load client secrets from the specified JSON file.
    GoogleClientSecrets clientSecrets;
    using(Stream json = new FileStream(pathToJsonFile, FileMode.Open, FileAccess.Read)) {
      clientSecrets = GoogleClientSecrets.Load(json);
    }
    
    // Create an asynchronous authorization task.
    //
    // Note: providing a data store allows auth credentials to be cached, so they survive multiple
    // runs of the application. This avoids prompting the user for authorization every time the
    // access token expires, by remembering the refresh token. The "user" value is used to
    // identify a specific set of credentials within the data store. You may provide different
    // values here to persist credentials for multiple users to the same data store.
    Task<UserCredential> authorizationTask = GoogleWebAuthorizationBroker.AuthorizeAsync(
        clientSecrets.Secrets,
        OAuthScopes,
        "user",
        CancellationToken.None,
        dataStore);
    
    // Authorize and persist credentials to the data store.
    UserCredential credential = authorizationTask.Result;
  2. Erstellen Sie einen autorisierten Dfareporting-Client.

    // Create a Dfareporting service object.
    //
    // Note: application name should be replaced with a value that identifies your application.
    service = new DfareportingService(
        new BaseClientService.Initializer {
          HttpClientInitializer = credential,
          ApplicationName = "C# installed app sample"
        }
    );
  3. Einen Vorgang ausführen

    // Retrieve and print all user profiles for the current authorized user.
    UserProfileList profiles = service.UserProfiles.List().Execute();
    
    foreach (UserProfile profile in profiles.Items) {
      Console.WriteLine("Found user profile with ID {0} and name \"{1}\".",
          profile.ProfileId, profile.UserName);
    }

Java

  1. Lade die Datei mit den Clientschlüsseln und generiere Anmeldedaten für die Autorisierung.

    Wenn Sie diesen Schritt zum ersten Mal ausführen, werden Sie aufgefordert, eine Autorisierungsanfrage in Ihrem Browser zu akzeptieren. Achten Sie darauf, dass Sie mit einem Google-Konto angemeldet sind, das Zugriff auf Campaign Manager 360 hat, bevor Sie die Einladung annehmen. Ihre Anwendung ist dann berechtigt, im Namen des Kontos, in dem Sie gerade angemeldet sind, auf Daten zuzugreifen.

    // Load the client secrets JSON file.
    GoogleClientSecrets clientSecrets =
        GoogleClientSecrets.load(
            jsonFactory, Files.newBufferedReader(Paths.get(pathToClientSecretsFile), UTF_8));
    
    // Set up the authorization code flow.
    //
    // Note: providing a DataStoreFactory allows auth credentials to be cached, so they survive
    // multiple runs of the program. This avoids prompting the user for authorization every time the
    // access token expires, by remembering the refresh token.
    GoogleAuthorizationCodeFlow flow =
        new GoogleAuthorizationCodeFlow.Builder(
                httpTransport, jsonFactory, clientSecrets, OAUTH_SCOPES)
            .setDataStoreFactory(dataStoreFactory)
            .build();
    
    // Authorize and persist credentials to the data store.
    //
    // Note: the "user" value below is used to identify a specific set of credentials in the data
    // store. You may provide different values here to persist credentials for multiple users to
    // the same data store.
    Credential credential =
        new AuthorizationCodeInstalledApp(flow, new LocalServerReceiver()).authorize("user");
  2. Erstellen Sie einen autorisierten Dfareporting-Client.

    // Create a Dfareporting client instance.
    //
    // Note: application name below should be replaced with a value that identifies your
    // application. Suggested format is "MyCompany-ProductName/Version.MinorVersion".
    Dfareporting reporting =
        new Dfareporting.Builder(credential.getTransport(), credential.getJsonFactory(), credential)
            .setApplicationName("dfareporting-java-installed-app-sample")
            .build();
  3. Einen Vorgang ausführen

    // Retrieve and print all user profiles for the current authorized user.
    UserProfileList profiles = reporting.userProfiles().list().execute();
    for (int i = 0; i < profiles.getItems().size(); i++) {
      System.out.printf("%d) %s%n", i + 1, profiles.getItems().get(i).getUserName());
    }

PHP

  1. Lade die Datei mit den Clientschlüsseln und generiere Anmeldedaten für die Autorisierung.

    Wenn Sie diesen Schritt zum ersten Mal ausführen, werden Sie aufgefordert, eine Autorisierungsanfrage in Ihrem Browser zu akzeptieren. Achten Sie darauf, dass Sie mit einem Google-Konto angemeldet sind, das Zugriff auf Campaign Manager 360 hat, bevor Sie die Einladung annehmen. Ihre Anwendung ist dann berechtigt, im Namen des Kontos, in dem Sie gerade angemeldet sind, auf Daten zuzugreifen.

    // Create a Google_Client instance.
    //
    // Note: application name should be replaced with a value that identifies
    // your application. Suggested format is "MyCompany-ProductName".
    $client = new Google_Client();
    $client->setAccessType('offline');
    $client->setApplicationName('PHP installed app sample');
    $client->setRedirectUri(self::OAUTH_REDIRECT_URI);
    $client->setScopes(self::$OAUTH_SCOPES);
    
    // Load the client secrets file.
    $client->setAuthConfig($pathToJsonFile);
    
    // Try to load cached credentials from the token store. Using a token store
    // allows auth credentials to be cached, so they survive multiple runs of
    // the application. This avoids prompting the user for authorization every
    // time the access token expires, by remembering the refresh token.
    if (file_exists($tokenStore) && filesize($tokenStore) > 0) {
        $client->setAccessToken(file_get_contents($tokenStore));
    } else {
        // If no cached credentials were found, authorize and persist
        // credentials to the token store.
        print 'Open this URL in your browser and authorize the application.';
        printf("\n\n%s\n\n", $client->createAuthUrl());
        print 'Enter the authorization code: ';
        $code = trim(fgets(STDIN));
        $client->authenticate($code);
    
        file_put_contents($tokenStore, json_encode($client->getAccessToken()));
    }
  2. Erstellen Sie einen autorisierten Dfareporting-Client.

    // Create a Dfareporting service object.
    $service = new Google_Service_Dfareporting($client);
  3. Einen Vorgang ausführen

    // Retrieve and print all user profiles for the current authorized user.
    $result = $service->userProfiles->listUserProfiles();
    foreach ($result['items'] as $userProfile) {
        printf(
            "User profile \"%s\" (ID: %d) found for account %d.\n",
            $userProfile->getUserName(),
            $userProfile->getProfileId(),
            $userProfile->getAccountId()
        );
    }

Python

  1. Lade die Datei mit den Clientschlüsseln und generiere Anmeldedaten für die Autorisierung.

    Wenn Sie diesen Schritt zum ersten Mal ausführen, werden Sie aufgefordert, eine Autorisierungsanfrage in Ihrem Browser zu akzeptieren. Achten Sie darauf, dass Sie mit einem Google-Konto angemeldet sind, das Zugriff auf Campaign Manager 360 hat, bevor Sie die Einladung annehmen. Ihre Anwendung ist dann berechtigt, im Namen des Kontos, in dem Sie gerade angemeldet sind, auf Daten zuzugreifen.

    # Set up a Flow object to be used if we need to authenticate.
    flow = client.flow_from_clientsecrets(
        path_to_client_secrets_file, scope=OAUTH_SCOPES)
    
    # Check whether credentials exist in the credential store. Using a credential
    # store allows auth credentials to be cached, so they survive multiple runs
    # of the application. This avoids prompting the user for authorization every
    # time the access token expires, by remembering the refresh token.
    storage = Storage(CREDENTIAL_STORE_FILE)
    credentials = storage.get()
    
    # If no credentials were found, go through the authorization process and
    # persist credentials to the credential store.
    if credentials is None or credentials.invalid:
      credentials = tools.run_flow(flow, storage,
                                   tools.argparser.parse_known_args()[0])
    
    # Use the credentials to authorize an httplib2.Http instance.
    http = credentials.authorize(httplib2.Http())
  2. Erstellen Sie einen autorisierten Dfareporting-Client.

    # Construct a service object via the discovery service.
    service = discovery.build('dfareporting', 'v4', http=http)
  3. Einen Vorgang ausführen

    # Construct the request.
    request = service.userProfiles().list()
    
    # Execute request and print response.
    response = request.execute()
    
    for profile in response['items']:
      print('Found user profile with ID %s and user name "%s".' %
            (profile['profileId'], profile['userName']))

Ruby

  1. Lade die Datei mit den Clientschlüsseln und generiere Anmeldedaten für die Autorisierung.

    Wenn Sie diesen Schritt zum ersten Mal ausführen, werden Sie aufgefordert, eine Autorisierungsanfrage in Ihrem Browser zu akzeptieren. Achten Sie darauf, dass Sie mit einem Google-Konto angemeldet sind, das Zugriff auf Campaign Manager 360 hat, bevor Sie die Einladung annehmen. Ihre Anwendung ist dann berechtigt, im Namen des Kontos, in dem Sie gerade angemeldet sind, auf Daten zuzugreifen.

    # Load client ID from the specified file.
    client_id = Google::Auth::ClientId.from_file(path_to_json_file)
    
    # Set up the user authorizer.
    #
    # Note: providing a token store allows auth credentials to be cached, so they
    # survive multiple runs of the application. This avoids prompting the user for
    # authorization every time the access token expires, by remembering the
    # refresh token.
    authorizer = Google::Auth::UserAuthorizer.new(
      client_id, [API_NAMESPACE::AUTH_DFAREPORTING], token_store
    )
    
    # Authorize and persist credentials to the data store.
    #
    # Note: the 'user' value below is used to identify a specific set of
    # credentials in the token store. You may provide different values here to
    # persist credentials for multiple users to the same token store.
    authorization = authorizer.get_credentials('user')
    if authorization.nil?
      puts format(
        "Open this URL in your browser and authorize the application.\n\n%s" \
        "\n\nEnter the authorization code:",
        authorizer.get_authorization_url(base_url: OAUTH_REDIRECT_URI)
      )
      code = STDIN.gets.chomp
      authorization = authorizer.get_and_store_credentials_from_code(
        base_url: OAUTH_REDIRECT_URI, code: code, user_id: 'user'
      )
    end
  2. Erstellen Sie einen autorisierten Dfareporting-Client.

    # Create a Dfareporting service object.
    #
    # Note: application name should be replaced with a value that identifies
    # your application. Suggested format is "MyCompany-ProductName".
    service = API_NAMESPACE::DfareportingService.new
    service.authorization = authorization
    service.client_options.application_name = 'Ruby installed app sample'
    service.client_options.application_version = '1.0.0'
  3. Einen Vorgang ausführen

    // Retrieve and print all user profiles for the current authorized user.
    UserProfileList profiles = service.UserProfiles.List().Execute();
    
    foreach (UserProfile profile in profiles.Items) {
      Console.WriteLine("Found user profile with ID {0} and name \"{1}\".",
          profile.ProfileId, profile.UserName);
    }

Weitere Informationen

In der API-Referenz finden Sie Informationen zu allen Diensten, die die API bietet. Auf jeder Methodendetailseite ist ein eingebetteter API Explorer verfügbar, mit dem Sie Testanfragen direkt über Ihren Browser senden können.

In unseren anderen Anleitungen werden fortgeschrittene Themen behandelt und es werden End-to-End-Beispiele für gängige Aufgaben bereitgestellt.

Wenn Sie bereit sind, Code zu schreiben, können Sie sich unsere umfangreiche Sammlung von Codebeispielen ansehen, die Sie nach Ihren Bedürfnissen anpassen und erweitern können.