Schnelleinstieg

In dieser Kurzanleitung erfahren Sie, wie Sie Ihren ersten API-Aufruf an die Google Ads API senden.

Wichtige Konzepte

  • Google Cloud-Projekt: Ein Google Cloud-Projekt bildet die Grundlage für das Erstellen, Aktivieren und Verwenden aller Google-Dienste, einschließlich der Verwaltung von APIs und OAuth 2.0-API-Anmeldedaten. Sie können eines über die Google Cloud Console erstellen.
  • API-Zugriffsebene: Die API-Zugriffsebene Ihres Google Cloud-Projekts bestimmt die Anzahl der API-Aufrufe, die Sie pro Tag ausführen können, und die Umgebungen, in denen Sie API-Aufrufe ausführen können. Die API-Zugriffsebene Ihres Projekts ist auf der Übersichtsseite der Google Ads API Ihres Projekts aufgeführt.
  • Google Ads-Verwaltungskonto: Ein Google Ads-Verwaltungskonto wird verwendet, um andere Google Ads-Konten zu verwalten. Das können mehrere Google Ads-Kundenkonten oder andere Google Ads-Verwaltungskonten sein.
  • Google Ads-Kundenkonto: Das Google Ads-Konto, das für die Schaltung von Anzeigen verwendet wird, die Sie mit API-Aufrufen ansprechen möchten.
  • Kundennummer des Kundenkontos: Die zehnstellige Nummer, die ein Google Ads-Kundenkonto identifiziert. Wenn Sie diese ID aus der Google Ads-Benutzeroberfläche kopiert haben, müssen Sie die Bindestriche entfernen.
  • OAuth 2.0: OAuth 2.0 ist ein branchenübliches Protokoll für die Autorisierung, das von allen Google APIs verwendet wird. Sie benötigen ein Dienstkonto und einen Schlüssel, um OAuth 2.0-Anmeldedaten für API-Aufrufe zu generieren.
  • Dienstkonto: Ein spezieller Google-Kontotyp, der zu Ihrer Anwendung und nicht zu einem einzelnen Nutzer gehört. Es wird verwendet, um Ihre Anwendung bei der Google Ads API zu authentifizieren. Sie benötigen ein Google Cloud-Projekt, um ein Dienstkonto zu erhalten.
  • Dienstkontoschlüssel: Eine JSON-Datei mit Anmeldedaten für die Anwendung, die den privaten Schlüssel für Ihr Dienstkonto enthält. Sie wird verwendet, um OAuth 2.0-Anmeldedaten zu generieren, mit denen ein Dienstkonto bei einem Google Ads API-Aufruf authentifiziert wird. Sie benötigen ein Dienstkonto, um einen Dienstkontoschlüssel zu erhalten.

Vorbereitung

Führen Sie die folgenden Schritte aus, um einen Google Ads API-Aufruf zu senden.

Cloud-Projekt für den Zugriff auf die Google Ads API konfigurieren

Das Google Cloud-Projekt wird zum Verwalten von Google APIs und OAuth 2.0-API-Anmeldedaten verwendet. Sie können Ihre vorhandenen Google Cloud-Projekte in der Google Cloud Console aufrufen oder dort ein neues Projekt erstellen.

Aktivieren Sie zuerst die Google Ads API in Ihrem Projekt:

Google Ads API aktivieren

Rufen Sie als Nächstes die Übersichtsseite der Google Ads API auf. Auf der Seite wird Ihre aktuelle API-Zugriffsebene angezeigt. Wenn Ihre aktuelle API-Zugriffsebene Test ist, maximieren Sie den Bereich Zugriffsebene upgraden. Folgen Sie der Anleitung, um die Zugriffsebene Explorer zu beantragen.

Nachdem du deine Bewerbung eingereicht hast, wird sie von Google automatisch geprüft und in den meisten Fällen auf „Explorer“ hochgestuft. Wenn Sie keinen Explorer-Zugriff erhalten haben, ist das kein Problem. In diesem Leitfaden finden Sie die entsprechenden Anleitungen zum Konfigurieren Ihres Google Ads-Kundenkontos.

Dienstkonto erstellen

Sie benötigen ein Dienstkonto und einen Dienstkontoschlüssel, um API-Aufrufe auszuführen. Wenn Sie bereits eine andere Google API verwenden und ein OAuth 2.0-Dienstkonto und einen Schlüssel erstellt haben, können Sie diesen Schritt überspringen und die vorhandenen Anmeldedaten wiederverwenden.

Dienstkonto und Schlüssel erstellen

  1. Rufen Sie in der Google Cloud Console das Menü > IAM und Verwaltung > Dienstkonten auf.

    Zur Seite „Dienstkonten“

  2. Wählen Sie Ihr Dienstkonto aus.
  3. Klicken Sie auf Schlüssel > Schlüssel hinzufügen > Neuen Schlüssel erstellen.
  4. Wählen Sie JSON aus und klicken Sie auf Erstellen.

    Ihr neues öffentliches/privates Schlüsselpaar wird generiert und als neue Datei auf Ihren Computer heruntergeladen. Speichern Sie die heruntergeladene JSON-Datei als credentials.json in Ihrem Arbeitsverzeichnis. Diese Datei ist die einzige Kopie dieses Schlüssels. Führen Sie keinen Commit von credentials.json in der Versionsverwaltung durch. Fügen Sie die Datei stattdessen beispielsweise Ihrer .gitignore-Datei hinzu.

  5. Klicken Sie auf Schließen.

Ermitteln Sie zuerst das Google Ads-Konto, für das Sie API-Aufrufe ausführen. Der Kontotyp, für den Sie API-Aufrufe ausführen können, hängt von der API-Zugriffsebene Ihres Google Cloud-Projekts ab. Auf der Übersichtsseite der Google Ads API finden Sie Informationen zu Ihrer API-Zugriffsebene.

Zugriffsebenen „Explorer“, „Basic“ und „Standard“

Sie können Aufrufe an Ihr Google Ads-Produktionskonto senden. Sie können jedoch bei Bedarf ein Google Ads-Testkonto erstellen. Folgen Sie dazu der Anleitung auf dem Tab Testzugriff.

Zugriff testen

Ihr Google Cloud-Projekt kann nicht für API-Aufrufe an ein Google Ads-Produktionskonto verwendet werden. Sie können API-Aufrufe nur für Google Ads-Testkonten ausführen.

Google Ads-Testkonto erstellen

In der folgenden Anleitung wird ein Google Ads-Testverwaltungskonto und ein Google Ads-Testwerbetreibendenkonto erstellt.

  1. Klicken Sie auf den blauen Button, um ein Google Ads-Testverwaltungskonto zu erstellen. Melden Sie sich mit einem Google-Konto an, das nicht mit Ihrem Google Ads-Produktionsverwaltungskonto verknüpft ist, wenn Sie dazu aufgefordert werden. Wenn Sie noch kein Konto haben, können Sie auf dieser Seite über den Button Konto erstellen ein neues Google-Konto erstellen.

    Google Ads-Testverwaltungskonto erstellen

  2. Erstellen Sie in Ihrem Google Ads-Testverwaltungskonto ein Google Ads-Testkundenkonto: Klicken Sie auf Konten > > Neues Konto erstellen und füllen Sie das Formular aus. Alle Google Ads-Konten, die Sie über Ihr Google Ads-Testverwaltungskonto erstellen, sind automatisch Google Ads-Testkonten.
  3. Optional können Sie auf der Google Ads-Seite einige Kampagnen im Google Ads-Testkundenkonto erstellen.

Wenn Sie einen API-Aufruf an einen Google Ads-Kunden senden möchten, müssen Sie Ihrem Dienstkonto Zugriff und die entsprechenden Berechtigungen für das Google Ads-Kundenkonto gewähren. Dazu benötigen Sie Administratorzugriff auf das Kundenkonto.

So gewähren Sie dem Dienstkonto Zugriff auf Ihr Google Ads-Konto:

  1. Melden Sie sich zuerst als Administrator in Ihrem Google Ads-Konto an.
  2. Rufen Sie Verwaltung > Zugriff und Sicherheit auf.
  3. Klicken Sie auf dem Tab Nutzer auf den Button .
    Google Ads-Seite „Zugriff und Sicherheit“ mit der Schaltfläche „Nutzer hinzufügen“
  4. Geben Sie die E-Mail-Adresse des Dienstkontos in das Eingabefeld E-Mail ein. Wählen Sie die entsprechende Kontozugriffsebene aus und klicken Sie auf den Button Konto hinzufügen. Beachten Sie, dass die Zugriffsebene „E-Mail“ für Dienstkonten nicht unterstützt wird.
    Dialogfeld zum Hinzufügen der E-Mail-Adresse eines Dienstkontos und zum Auswählen einer Zugriffsebene
  5. Dem Dienstkonto wird Zugriff gewährt.
    Seite „Zugriff und Sicherheit“ mit dem Dienstkonto, das Zugriff hat
  6. [Optional] Sie können einem Dienstkonto bei der Ersteinrichtung keinen Administratorzugriff gewähren. Wenn für Ihre API-Aufrufe Administratorzugriff erforderlich ist, können Sie den Zugriff so aktualisieren.
    1. Klicken Sie in der Spalte Zugriffsebene neben der Zugriffsebene des Dienstkontos auf den Drop-down-Pfeil.
    2. Wählen Sie in der Drop-down-Liste Admin aus.

Tools und Clientbibliotheken herunterladen

Je nachdem, wie Sie API-Aufrufe ausführen möchten, können Sie entweder eine Clientbibliothek oder einen HTTP-Client herunterladen.

Clientbibliothek verwenden

Laden Sie eine Clientbibliothek Ihrer Wahl herunter und installieren Sie sie.

HTTP-Client (REST) verwenden

curl

Laden Sie curl herunter und installieren Sie es. Dies ist ein Befehlszeilentool zum Übertragen von Daten über eine URL.

Google Cloud-Befehlszeile

Folgen Sie der Installationsanleitung für die Google Cloud CLI, um die gcloud CLI zu installieren.

Die Anleitungen im Rest dieses Leitfadens wurden mit der folgenden Version des gcloud-Tools überprüft und funktionieren aufgrund von Unterschieden im Anwendungsverhalten oder in den Befehlszeilenoptionen möglicherweise nicht mit früheren Versionen.

:~$ gcloud version
Google Cloud SDK 492.0.0
alpha 2024.09.06
beta 2024.09.06
bq 2.1.8
bundled-python3-unix 3.11.9
core 2024.09.06
enterprise-certificate-proxy 0.3.2
gcloud-crc32c 1.0.0
gsutil 5.30

API aufrufen

Wählen Sie den gewünschten Client aus, um eine Anleitung zum Senden eines API-Aufrufs zu erhalten:

Java

Die Clientbibliotheksartefakte werden im Maven Central-Repository veröffentlicht.

Informationen zum Verwalten von Abhängigkeitsversionen und zum Vermeiden von Konflikten finden Sie im Leitfaden zur Google Ads API-Materialliste (BOM).

Wenn Sie die BOM nicht verwenden, fügen Sie die Clientbibliothek mit einem der folgenden Build-Tools direkt Ihrem Projekt hinzu:

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

<dependency>
  <groupId>com.google.api-ads</groupId>
  <artifactId>google-ads</artifactId>
  <version>48.1.0</version>
</dependency>

Gradle: Fügen Sie der Datei build.gradle die folgende Abhängigkeit hinzu:

implementation 'com.google.api-ads:google-ads:48.1.0'

Erstellen Sie in Ihrem Basisverzeichnis (~/ads.properties unter Linux und macOS oder %USERPROFILE%\ads.properties unter Windows) eine ads.properties-Datei mit folgendem Inhalt:

api.googleads.serviceAccountSecretsPath=JSON_KEY_FILE_PATH
api.googleads.loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE

Erstellen Sie eine GoogleAdsClient-Instanz, bevor Sie API-Anfragen ausführen. Standardmäßig lädt fromPropertiesFile() Anmeldedaten aus der Datei ads.properties in Ihrem Basisverzeichnis:

GoogleAdsClient googleAdsClient;
try {
  googleAdsClient = GoogleAdsClient.newBuilder().fromPropertiesFile().build();
} catch (IOException e) {
  System.err.printf("Failed to create GoogleAdsClient: %s%n", e);
  throw new RuntimeException("Initialization failed", e);
}

Erstellen Sie als Nächstes einen Kampagnenbericht mit GoogleAdsService.SearchStream, um große Ergebnismengen effizient zu streamen und die Kampagnen in Ihrem Konto abzurufen:

    private void runExample(GoogleAdsClient googleAdsClient, long customerId) {
  try (GoogleAdsServiceClient googleAdsServiceClient =
      googleAdsClient.getLatestVersion().createGoogleAdsServiceClient()) {
    String query = "SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id";
    // Constructs the SearchGoogleAdsStreamRequest.
    SearchGoogleAdsStreamRequest request =
        SearchGoogleAdsStreamRequest.newBuilder()
            .setCustomerId(Long.toString(customerId))
            .setQuery(query)
            .build();

    // Creates and issues a search Google Ads stream request that will retrieve all campaigns.
    ServerStream<SearchGoogleAdsStreamResponse> stream =
        googleAdsServiceClient.searchStreamCallable().call(request);

    // Iterates through and prints all of the results in the stream response.
    for (SearchGoogleAdsStreamResponse response : stream) {
      for (GoogleAdsRow googleAdsRow : response.getResultsList()) {
        System.out.printf(
            "Campaign with ID %d and name '%s' was found.%n",
            googleAdsRow.getCampaign().getId(), googleAdsRow.getCampaign().getName());
      }
    }
  }
}

C#

Die Clientbibliothekspakete werden im NuGet.org-Repository veröffentlicht. Fügen Sie zuerst einen NuGet-Paketverweis auf das Paket Google.Ads.GoogleAds hinzu:

dotnet add package Google.Ads.GoogleAds --version 27.6.0

Wenn Sie API-Aufrufe ausführen möchten, erstellen Sie ein GoogleAdsConfig-Objekt aus Ihren Konfigurationseinstellungen (z. B. appsettings.json, Umgebungsvariablen oder benutzerdefinierte Einstellungen) und übergeben Sie es, um eine GoogleAdsClient-Instanz zu initialisieren:

GoogleAdsConfig config = new GoogleAdsConfig()
{
    OAuth2Mode = OAuth2Flow.SERVICE_ACCOUNT,
    OAuth2SecretsJsonPath = "JSON_KEY_FILE_PATH",
    LoginCustomerId = "INSERT_LOGIN_CUSTOMER_ID_HERE"
};
GoogleAdsClient client = new GoogleAdsClient(config);

Führen Sie als Nächstes einen Kampagnenbericht mit der Methode GoogleAdsService.SearchStream aus, um die Kampagnen in Ihrem Konto abzurufen. In diesem Leitfaden werden die Details der Berichterstellung nicht behandelt.

    public void Run(GoogleAdsClient client, long customerId)
{
    // Get the GoogleAdsService.
    GoogleAdsServiceClient googleAdsService = client.GetService(
        Services.V26.GoogleAdsService);

    // Create a query that will retrieve all campaigns.
    string query = @"SELECT
                    campaign.id,
                    campaign.name,
                    campaign.network_settings.target_content_network
                FROM campaign
                ORDER BY campaign.id";

    try
    {
        // Issue a search request.
        googleAdsService.SearchStream(customerId.ToString(), query,
            delegate (SearchGoogleAdsStreamResponse resp)
            {
                foreach (GoogleAdsRow googleAdsRow in resp.Results)
                {
                    Console.WriteLine("Campaign with ID {0} and name '{1}' was found.",
                        googleAdsRow.Campaign.Id, googleAdsRow.Campaign.Name);
                }
            }
        );
    }
    catch (GoogleAdsException e)
    {
        Console.WriteLine("Failure:");
        Console.WriteLine($"Message: {e.Message}");
        Console.WriteLine($"Failure: {e.Failure}");
        Console.WriteLine($"Request ID: {e.RequestId}");
        throw;
    }
}

PHP

Die Clientbibliothekspakete werden im Packagist-Repository veröffentlicht. Prüfen Sie, ob Sie eine kompatible PHP-Version und Composer installiert haben. Wechseln Sie dann in das Stammverzeichnis Ihres Projekts und führen Sie den folgenden Befehl aus, um die Bibliothek und ihre Abhängigkeiten im Verzeichnis vendor/ Ihres Projekts zu installieren:

composer require googleads/google-ads-php:35.3.0

Erstellen Sie eine Kopie der Datei google_ads_php.ini aus dem GitHub-Repository, speichern Sie sie in Ihrem Basisverzeichnis oder im Stammverzeichnis Ihres Projekts und ändern Sie sie so, dass sie Ihre Anmeldedaten enthält:

[GOOGLE_ADS]
loginCustomerId = "INSERT_LOGIN_CUSTOMER_ID_HERE"

[OAUTH2]
jsonKeyFilePath = "JSON_KEY_FILE_PATH"
scopes = "https://www.googleapis.com/auth/adwords"

Erstellen Sie mit Ihrer google_ads_php.ini-Konfigurationsdatei eine GoogleAdsClient-Instanz:

use Google\Ads\GoogleAds\Lib\OAuth2TokenBuilder;
use Google\Ads\GoogleAds\Lib\V26\GoogleAdsClientBuilder;

$oauth2Credential = (new OAuth2TokenBuilder())
    ->fromFile('/path/to/google_ads_php.ini')
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->fromFile('/path/to/google_ads_php.ini')
    ->withOAuth2Credential($oauth2Credential)
    ->build();

Führen Sie als Nächstes einen Kampagnenbericht mit der Methode GoogleAdsService.SearchStream aus, um die Kampagnen in Ihrem Konto abzurufen:

    public static function runExample(GoogleAdsClient $googleAdsClient, int $customerId)
{
    $googleAdsServiceClient = $googleAdsClient->getGoogleAdsServiceClient();
    // Creates a query that retrieves all campaigns.
    $query = 'SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id';
    // Issues a search stream request.
    /** @var GoogleAdsServerStreamDecorator $stream */
    $stream = $googleAdsServiceClient->searchStream(
        SearchGoogleAdsStreamRequest::build($customerId, $query)
    );

    // Iterates over all rows in all messages and prints the requested field values for
    // the campaign in each row.
    foreach ($stream->iterateAllElements() as $googleAdsRow) {
        /** @var GoogleAdsRow $googleAdsRow */
        printf(
            "Campaign with ID %d and name '%s' was found.%s",
            $googleAdsRow->getCampaign()->getId(),
            $googleAdsRow->getCampaign()->getName(),
            PHP_EOL
        );
    }
}

Python

Die Google Ads API-Clientbibliothek für Python wird über PyPI bereitgestellt. Prüfen Sie, ob eine unterstützte Python-Version installiert ist, und installieren Sie dann die Bibliothek mit pip:

python -m pip install google-ads==35.0.0

Konfigurieren Sie eine google-ads.yaml-Datei, um Ihre API-Aufrufe zu authentifizieren:

  1. Laden Sie eine Kopie der Beispieldatei google-ads.yaml aus dem GitHub-Repository herunter.
  2. Speichern Sie die Datei in Ihrem Basisverzeichnis (~/google-ads.yaml) oder in einem benutzerdefinierten Pfad.
  3. Öffnen Sie google-ads.yaml und aktualisieren Sie die Datei, um Ihre Anmeldedaten einzufügen:

    login_customer_id: INSERT_LOGIN_CUSTOMER_ID_HERE
    json_key_file_path: JSON_KEY_FILE_PATH
    

    Konfigurieren Sie das Logging, bevor Sie den Client initialisieren, damit die Bibliothek alle Initialisierungs- oder Konfigurationswarnungen erfasst. Im folgenden Beispiel wird der Logger der Bibliothek so konfiguriert, dass INFO-Logs in der Standardausgabe (stdout) ausgegeben werden:

import logging
import sys

logger = logging.getLogger("google.ads.googleads.client")
logger.setLevel(logging.INFO)
logger.addHandler(logging.StreamHandler(sys.stdout))

Erstellen Sie eine GoogleAdsClient-Instanz, indem Sie die Methode GoogleAdsClient.load_from_storage aufrufen und den Pfad zu Ihrer google-ads.yaml-Datei übergeben:

from google.ads.googleads.client import GoogleAdsClient

client = GoogleAdsClient.load_from_storage("path/to/google-ads.yaml")

Wenn Sie das Pfadargument weglassen, sucht load_from_storage() standardmäßig in Ihrem Basisverzeichnis (~/google-ads.yaml) nach der Konfigurationsdatei.

Führen Sie als Nächstes einen Kampagnenbericht mit der Methode GoogleAdsService.SearchStream aus, um die Kampagnen in Ihrem Konto abzurufen:

    def main(client: GoogleAdsClient, customer_id: str) -> None:
    ga_service: GoogleAdsServiceClient = client.get_service("GoogleAdsService")

    query: str = """
        SELECT
          campaign.id,
          campaign.name
        FROM campaign
        ORDER BY campaign.id"""

    # Issues a search request using streaming.
    stream: Iterator[SearchGoogleAdsStreamResponse] = ga_service.search_stream(
        customer_id=customer_id, query=query
    )

    for batch in stream:
        rows: List[GoogleAdsRow] = batch.results
        for row in rows:
            print(
                f"Campaign with ID {row.campaign.id} and name "
                f'"{row.campaign.name}" was found.'
            )

Ruby

Die Ruby-Gems für die Clientbibliothek werden auf RubyGems veröffentlicht. Prüfen Sie, ob eine unterstützte Ruby-Version installiert ist, und verwenden Sie Bundler, um die Bibliothek zu installieren:

  1. Fügen Sie das Gem der Gemfile-Datei Ihrer Anwendung hinzu:

    gem 'google-ads-googleads', '~> 46.1.0'
    
  2. Installieren Sie das Gem mit folgendem Befehl:

    bundle install

So konfigurieren Sie Ihre Anmeldedaten:

  1. Kopieren Sie die Beispieldatei google_ads_config.rb aus dem GitHub-Repository.
  2. Speichern Sie die Datei im Stammverzeichnis Ihres Projekts oder in Ihrem Basisverzeichnis (~).
  3. Öffnen Sie google_ads_config.rb und ersetzen Sie die Platzhalterwerte durch Ihre Google Ads API-Anmeldedaten:

    Google::Ads::GoogleAds::Config.new do |c|
      c.login_customer_id = 'INSERT_LOGIN_CUSTOMER_ID_HERE'
      c.keyfile = 'JSON_KEY_FILE_PATH'
    end
    

    Erstellen Sie eine GoogleAdsClient-Instanz, indem Sie den Pfad zu Ihrer Konfigurationsdatei (google_ads_config.rb) übergeben:

client = Google::Ads::GoogleAds::GoogleAdsClient.new(
  'path/to/google_ads_config.rb'
)

Führen Sie als Nächstes einen Kampagnenbericht mit der Methode GoogleAdsService.SearchStream aus, um die Kampagnen in Ihrem Konto abzurufen:

    def get_campaigns(customer_id)
  # GoogleAdsClient will read a config file from
  # ENV['HOME']/google_ads_config.rb when called without parameters
  client = Google::Ads::GoogleAds::GoogleAdsClient.new

  responses = client.service.google_ads.search_stream(
    customer_id: customer_id,
    query: 'SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id',
  )

  responses.each do |response|
    response.results.each do |row|
      puts "Campaign with ID #{row.campaign.id} and name '#{row.campaign.name}' was found."
    end
  end
end

Perl

Die Perl-Clientbibliothek wird auf CPAN bereitgestellt und erfordert Perl 5.28 oder höher sowie den Paketmanager cpan oder cpanm.

  1. Klonen Sie das Repository google-ads-perl in das Verzeichnis Ihrer Wahl:

    git clone https://github.com/googleads/google-ads-perl.git
  2. Wechseln Sie in das Verzeichnis google-ads-perl und führen Sie die folgenden Befehle aus, um die erforderlichen Abhängigkeiten zu installieren und die Bibliothek zu erstellen:

    cd google-ads-perl
    cpan install Module::Build
    perl Build.PL
    perl Build installdeps
    perl Build
    perl Build install

So konfigurieren Sie Ihre Anmeldedaten:

  1. Kopieren Sie die Beispielkonfigurationsdatei googleads.properties aus dem GitHub-Repository in Ihr Basisverzeichnis (~/googleads.properties):

    cp googleads.properties ~/googleads.properties
  2. Bearbeiten Sie ~/googleads.properties, um Ihre Anmeldedaten einzufügen:

    jsonKeyFilePath=JSON_KEY_FILE_PATH
    loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE
    

    Erstellen Sie eine Client-Instanz, indem Sie den Pfad zu Ihrer konfigurierten googleads.properties-Datei (z. B. ~/googleads.properties) übergeben:

my $api_client = Google::Ads::GoogleAds::Client->new({
  properties_file => "/path/to/googleads.properties"
});

Führen Sie als Nächstes einen Kampagnenbericht mit der Methode GoogleAdsService.SearchStream aus, um die Kampagnen in Ihrem Konto abzurufen:

    sub get_campaigns {
  my ($api_client, $customer_id) = @_;

  # Create a search Google Ads stream request that will retrieve all campaigns.
  my $search_stream_request =
    Google::Ads::GoogleAds::V26::Services::GoogleAdsService::SearchGoogleAdsStreamRequest
    ->new({
      customerId => $customer_id,
      query      =>
        "SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id"
    });

  # Get the GoogleAdsService.
  my $google_ads_service = $api_client->GoogleAdsService();

  my $search_stream_handler =
    Google::Ads::GoogleAds::Utils::SearchStreamHandler->new({
      service => $google_ads_service,
      request => $search_stream_request
    });

  # Issue a search request and process the stream response to print the requested
  # field values for the campaign in each row.
  $search_stream_handler->process_contents(
    sub {
      my $google_ads_row = shift;
      printf "Campaign with ID %d and name '%s' was found.\n",
        $google_ads_row->{campaign}{id}, $google_ads_row->{campaign}{name};
    });

  return 1;
}

Wenn das Script ausgeführt wird, werden die übereinstimmenden Zeilen gestreamt und die ID und der Name jeder Kampagne in Ihrem Konto ausgegeben.

curl

Legen Sie zuerst das Dienstkonto als aktive Anmeldedaten in der gcloud CLI fest.

gcloud auth login --cred-file=JSON_KEY_FILE_PATH

Rufen Sie als Nächstes ein OAuth 2.0-Zugriffstoken für die Google Ads API ab.

gcloud auth \
  print-access-token \
  --scopes='https://www.googleapis.com/auth/adwords'

Erstellen Sie eine Datei mit dem Namen query.json, die Ihre Google Ads Query Language-Anfrage (GAQL) enthält:

{
  "query": "SELECT campaign.id, campaign.name, campaign.network_settings.target_content_network FROM campaign ORDER BY campaign.id"
}

Erstellen Sie mit der Methode GoogleAdsService.SearchStream einen Kampagnenbericht, um die Kampagnen in Ihrem Konto abzurufen:

curl -i -X POST \
  https://googleads.googleapis.com/v26/customers/CUSTOMER_ID/googleAds:searchStream \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -H "login-customer-id: LOGIN_CUSTOMER_ID" \
  --data-binary "@query.json"

Wenn beim ersten Aufruf Fehler auftreten, finden Sie unter API-Fehler beheben eine Anleitung zur Fehlerbehebung.