Die Perl-Clientbibliothek der Google Ads API bietet mehrere Konfigurationseinstellungen, mit denen Sie das Verhalten der Bibliothek 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();
sucht die Bibliothek im Verzeichnis HOME nach der Datei oder im Pfad, der in der Umgebungsvariablen GOOGLE_ADS_CONFIGURATION_FILE_PATH angegeben ist, falls 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 die Datei unter diesem Pfad.
Am einfachsten lässt sich diese Datei generieren, indem Sie googleads.properties aus dem GitHub-Repository kopieren und so ändern, dass sie Ihre Client-ID, Ihren Clientschlüssel und Ihr Aktualisierungstoken enthält.
Dynamische Konfiguration
Sie können die Konfiguration dynamisch einrichten, wenn Sie die Bibliothek instanziieren oder danach:
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 über Umgebungsvariablen festlegen, wenn Sie Clients instanziieren (siehe Standardumgebungsvariablen).
Das Modul Client stellt die Funktion configure_from_environment_variables bereit, um Werte aus Umgebungsvariablen zu laden.
# 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();
Konfigurationsfelder
Beachten Sie, dass googleads.properties-Schlüssel camelCase verwenden (z. B. loginCustomerId und linkedCustomerId), während Client->new({...})-Konstruktorargumente und Handler-Methoden snake_case verwenden (z. B. login_customer_id und linked_customer_id).
In OAuth2ApplicationsHandler beibehaltene Felder:
client_id(clientIdingoogleads.properties,GOOGLE_ADS_CLIENT_ID): Ihre OAuth2-Client-ID.client_secret(clientSecretingoogleads.properties,GOOGLE_ADS_CLIENT_SECRET): Ihr OAuth2-Clientschlüssel.refresh_token(refreshTokeningoogleads.properties,GOOGLE_ADS_REFRESH_TOKEN): Ihr OAuth2-Aktualisierungstoken.additional_scopes(additionalScopesingoogleads.properties): Zusätzliche OAuth2-Bereiche, die angefordert werden sollen.
In OAuth2ServiceAccountsHandler beibehaltene Felder:
json_key_file_path(jsonKeyFilePathingoogleads.properties,GOOGLE_ADS_JSON_KEY_FILE_PATH): Der Pfad zur JSON-Schlüsseldatei Ihres Dienstkontos.impersonated_email(impersonatedEmailingoogleads.properties,GOOGLE_ADS_IMPERSONATED_EMAIL): Die E-Mail-Adresse, die bei der Verwendung der domainweiten Delegation von Google Workspace imitiert werden soll.additional_scopes(additionalScopesingoogleads.properties): Zusätzliche OAuth2-Bereiche, die angefordert werden sollen.
In Client beibehaltene Felder:
login_customer_id(loginCustomerIdingoogleads.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 zu „login-customer-id“.linked_customer_id(linkedCustomerIdingoogleads.properties,GOOGLE_ADS_LINKED_CUSTOMER_ID): Die verknüpfte Kundennummer.service_address(serviceAddressingoogleads.properties,GOOGLE_ADS_ENDPOINT): Die URL der Google Ads API-Dienstadresse (Standard:"https://googleads.googleapis.com").user_agent(userAgentingoogleads.properties,GOOGLE_ADS_PERL_USER_AGENT): Benutzerdefiniertes User-Agent-Header-Präfix, das in HTTP-Anfragen enthalten ist.proxy(proxyingoogleads.properties,GOOGLE_ADS_PERL_PROXY): Die Proxyserver-URL, die für die Internetverbindung verwendet wird.version(Client->newoderset_version): Das zu verwendende Google Ads API-Versionsmodul (Standardwert ist"V26").die_on_faults(Client->newoderset_die_on_faults): Legen Sie1fest, damit Dienstmethoden bei API-Fehlerndie()mit der Rohantwortnutzlast aufrufen, anstatt einGoogle::Ads::GoogleAds::GoogleAdsException-Objekt zurückzugeben (Standardeinstellung ist0).http_timeout(Client->newoderset_http_timeout): Das HTTP-Zeitlimit in Sekunden (Standardwert ist3600).http_retry_timing(Client->newoderset_http_retry_timing): Wiederholungspausenintervalle in Sekunden für vorübergehende HTTP-Fehler503und504(Standardwert ist"5,10,15").