Konfiguration

Die Google Ads API Perl-Clientbibliothek bietet mehrere Konfigurationseinstellungen, mit denen Sie das Bibliotheksverhalten anpassen können.

Konfigurationsdatei

Sie können eine googleads.properties-Datei angeben, die beim Instanziieren des Clients verwendet werden soll.

Wenn Sie beim Instanziieren keine Argumente verwenden:

my $api_client = Google::Ads::GoogleAds::Client->new();

Die Bibliothek sucht dann im Verzeichnis HOME nach der Datei oder am Pfad, der in der Umgebungsvariable GOOGLE_ADS_CONFIGURATION_FILE_PATH angegeben ist, sofern diese festgelegt ist.

Alternativ können Sie einen Pfad explizit angeben:

my $properties_file = "/path/to/googleads.properties";

my $api_client = Google::Ads::GoogleAds::Client->new({
  properties_file => $properties_file,
});

In diesem Fall sucht der Client nach der Datei unter diesem Pfad.

Am einfachsten ist es, googleads.properties aus dem GitHub-Repository zu kopieren und so zu ändern, dass Ihre Client-ID, Ihr Clientschlüssel und Ihr Aktualisierungstoken enthalten sind.

Dynamische Konfiguration

Sie können die Konfiguration dynamisch beim Instanziieren der Bibliothek oder nach der Instanziierung einrichten:

my $api_client = Google::Ads::GoogleAds::Client->new({
  login_customer_id => "INSERT_LOGIN_CUSTOMER_ID_HERE",
});

Sie können die Konfiguration auch nach der Instanziierung ändern:

$api_client->set_login_customer_id("INSERT_LOGIN_CUSTOMER_ID_HERE");

Sie können auch ein OAuth2ApplicationsHandler-Objekt aus der Client-Instanz abrufen und die Client-ID, den Clientschlüssel und das Aktualisierungstoken zur Laufzeit ändern:

my $oauth2_applications_handler =
  $api_client->get_oauth2_applications_handler();
$oauth2_applications_handler->set_client_id("INSERT_CLIENT_ID_HERE");
$oauth2_applications_handler->set_client_secret("INSERT_CLIENT_SECRET_HERE");
$oauth2_applications_handler->set_refresh_token("INSERT_REFRESH_TOKEN_HERE");

Konfigurationsumgebungsvariablen

Sie können einige der Konfigurationseinstellungen beim Instanziieren von Clients über Umgebungsvariablen festlegen (siehe Standardumgebungsvariablen).

Das Modul Client stellt die Funktion configure_from_environment_variables zum Laden von Werten aus Umgebungsvariablen bereit.

# Get the Google Ads API Client. By default, any credentials are read from
# ~/googleads.properties, or, if set, from the file specified in the
# GOOGLE_ADS_CONFIGURATION_FILE_PATH environment variable.
my $api_client = Google::Ads::GoogleAds::Client->new();

# Load the configuration from any set environment variables.
$api_client->configure_from_environment_variables();

Felder für die Konfiguration

googleads.properties-Schlüssel verwenden camelCase (z. B. loginCustomerId und linkedCustomerId), während Client->new({...})-Konstruktorargumente und ‑Handlermethoden snake_case (z. B. login_customer_id und linked_customer_id) verwenden.

In OAuth2ApplicationsHandler gespeicherte Felder:

  • client_id (clientId in googleads.properties, GOOGLE_ADS_CLIENT_ID): Ihre OAuth2-Client-ID.
  • client_secret (clientSecret in googleads.properties, GOOGLE_ADS_CLIENT_SECRET): Ihr OAuth2-Clientschlüssel.
  • refresh_token (refreshToken in googleads.properties, GOOGLE_ADS_REFRESH_TOKEN): Ihr OAuth2-Aktualisierungstoken.
  • additional_scopes (additionalScopes in googleads.properties): Zusätzliche OAuth2-Bereiche, die angefordert werden sollen.

In OAuth2ServiceAccountsHandler gespeicherte Felder:

  • json_key_file_path (jsonKeyFilePath in googleads.properties, GOOGLE_ADS_JSON_KEY_FILE_PATH): Der Pfad zur JSON-Schlüsseldatei Ihres Dienstkontos.
  • impersonated_email (impersonatedEmail in googleads.properties, GOOGLE_ADS_IMPERSONATED_EMAIL): Die E-Mail-Adresse, die bei der domänenweiten Delegierung von Google Workspace verwendet werden soll.
  • additional_scopes (additionalScopes in googleads.properties): Zusätzliche OAuth2-Bereiche, die angefordert werden sollen.

In Client gespeicherte Felder:

  • developer_token (developerToken in googleads.properties, GOOGLE_ADS_DEVELOPER_TOKEN): (Wird am 9. September 2026 eingestellt) Ihr Google Ads API-Entwicklertoken. Optional, wird von API-Servern unabhängig von der Clientbibliotheksversion ignoriert und in einer zukünftigen Hauptversion der Google Ads API abgelehnt.
    • v35.0.0 und höher: Bei der Clientinitialisierung nicht erforderlich (die lokale clientseitige developerToken-Validierung wurde in v35.0.0 entfernt).
    • Versionen vor v35.0.0: Erforderlich für die lokale clientseitige Validierung der Konfiguration, wenn Sie kein Upgrade auf v35.0.0 oder höher durchgeführt haben.
  • login_customer_id (loginCustomerId in googleads.properties, GOOGLE_ADS_LOGIN_CUSTOMER_ID): Die ID des Verwaltungskontos, das für den Zugriff auf das Kundenkonto verwendet wird. Weitere Informationen finden Sie in der Dokumentation zur Anmelde-Kundennummer.
  • linked_customer_id (linkedCustomerId in googleads.properties, GOOGLE_ADS_LINKED_CUSTOMER_ID): Die verknüpfte Kundennummer.
  • service_address (serviceAddress in googleads.properties, GOOGLE_ADS_ENDPOINT): Die URL der Google Ads API-Dienstadresse (Standardwert: "https://googleads.googleapis.com").
  • user_agent (userAgent in googleads.properties, GOOGLE_ADS_PERL_USER_AGENT): Benutzerdefiniertes Präfix für den User-Agent-Header, das in HTTP-Anfragen enthalten ist.
  • proxy (proxy in googleads.properties, GOOGLE_ADS_PERL_PROXY): Die Proxyserver-URL, die für die Internetverbindung verwendet wird.
  • version (Client->new oder set_version): Das Google Ads API-Versionsmodul, das verwendet werden soll (Standardwert: "V25").
  • die_on_faults (Client->new oder set_die_on_faults): Auf 1 setzen, damit Dienstmethoden bei API-Fehlern die() mit der Rohantwortnutzlast aufrufen, anstatt ein Google::Ads::GoogleAds::GoogleAdsException-Objekt zurückzugeben (Standardwert: 0).
  • http_timeout (Client->new oder set_http_timeout): Das HTTP-Zeitlimit in Sekunden (Standardwert: 3600).
  • http_retry_timing (Client->new oder set_http_retry_timing): Pausenintervalle für Wiederholungsversuche in Sekunden für vorübergehende HTTP-Fehler 503 und 504 (Standardwert: "5,10,15").