Google Ads API Perl istemci kitaplığı, kitaplık davranışını özelleştirmek için kullanabileceğiniz çeşitli yapılandırma ayarları sağlar.
Yapılandırma dosyası
İstemciyi oluştururken kullanılacak bir googleads.properties dosyası belirtebilirsiniz.
Örnek oluştururken herhangi bir bağımsız değişken kullanmıyorsanız:
my $api_client = Google::Ads::GoogleAds::Client->new();
kitaplık, dosyayı HOME dizininizde veya GOOGLE_ADS_CONFIGURATION_FILE_PATH ortam değişkeninde belirtilen yolda arar (ayarlanmışsa).
Alternatif olarak, yolu açıkça belirtebilirsiniz:
my $properties_file = "/path/to/googleads.properties";
my $api_client = Google::Ads::GoogleAds::Client->new({
properties_file => $properties_file,
});
Bu durumda istemci, dosyayı bu yolda arar.
Bu dosyayı oluşturmanın en kolay yolu, GitHub deposundan googleads.properties öğesini kopyalayıp istemci kimliğinizi, istemci gizli anahtarınızı ve yenileme jetonunuzu içerecek şekilde değiştirmektir.
Dinamik yapılandırma
Yapılandırmayı kitaplığı oluştururken dinamik olarak veya oluşturduktan sonra ayarlayabilirsiniz:
my $api_client = Google::Ads::GoogleAds::Client->new({
login_customer_id => "INSERT_LOGIN_CUSTOMER_ID_HERE",
});
Yapılandırmayı örnek oluşturduktan sonra da değiştirebilirsiniz:
$api_client->set_login_customer_id("INSERT_LOGIN_CUSTOMER_ID_HERE");
Ayrıca Client örneğinden bir OAuth2ApplicationsHandler nesnesi alabilir ve çalışma zamanında istemci kimliğini, istemci gizli anahtarını ve yenileme jetonunu değiştirebilirsiniz:
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");
Yapılandırma ortam değişkenleri
İstemcileri oluştururken yapılandırma ayarlarının bazılarını ortam değişkenlerinden ayarlayabilirsiniz (bkz. standart ortam değişkenleri).
Client modülü, ortam değişkenlerinden değer yüklemek için configure_from_environment_variables işlevini sağlar.
# 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();
Yapılandırma alanları
googleads.properties anahtarların camelCase (ör. loginCustomerId ve linkedCustomerId), Client->new({...}) oluşturucu bağımsız değişkenlerinin ve işleyici yöntemlerinin ise snake_case (ör. login_customer_id ve linked_customer_id) kullandığını unutmayın.
OAuth2ApplicationsHandler içinde kalıcı hale getirilen alanlar:
client_id(googleads.properties,GOOGLE_ADS_CLIENT_IDiçindeclientId): OAuth2 istemci kimliğiniz.client_secret(googleads.properties'dekiclientSecret,GOOGLE_ADS_CLIENT_SECRET): OAuth2 istemci gizli anahtarınız.refresh_token(googleads.properties'derefreshToken,GOOGLE_ADS_REFRESH_TOKEN): OAuth2 yenileme jetonunuz.additional_scopes(googleads.propertiesiçindeadditionalScopes): İstenecek ek OAuth2 kapsamları.
OAuth2ServiceAccountsHandler içinde kalıcı hale getirilen alanlar:
json_key_file_path(googleads.properties,GOOGLE_ADS_JSON_KEY_FILE_PATHiçindejsonKeyFilePath): Hizmet hesabınızın JSON anahtar dosyasının yolu.impersonated_email(googleads.propertiesiçindeimpersonatedEmail,GOOGLE_ADS_IMPERSONATED_EMAIL): Google Workspace'te alan genelinde temsilci atama kullanılırken kimliğine bürünülecek e-posta adresi.additional_scopes(googleads.propertiesiçindeadditionalScopes): İstenecek ek OAuth2 kapsamları.
Client içinde kalıcı hale getirilen alanlar:
developer_token(googleads.properties'dadeveloperToken,GOOGLE_ADS_DEVELOPER_TOKEN): (9 Eylül 2026'da kullanımdan kaldırılacak) Google Ads API geliştirici jetonunuz. İsteğe bağlıdır, istemci kitaplığı sürümünden bağımsız olarak API sunucuları tarafından yoksayılır ve Google Ads API'nin gelecekteki bir ana sürümünde reddedilir.v35.0.0ve sonraki sürümler: İstemci başlatılırken gerekli değildir (yerel istemci tarafıdeveloperTokendoğrulamasıv35.0.0sürümünde kaldırılmıştır).v35.0.0'ten önceki sürümler:v35.0.0veya sonraki bir sürüme yükseltmediyseniz yerel istemci tarafı yapılandırma doğrulaması için gereklidir.
login_customer_id(googleads.propertiesiçindeloginCustomerId,GOOGLE_ADS_LOGIN_CUSTOMER_ID): Müşteri hesabına erişmek için kullanılan yönetici hesabının kimliği. login-customer-id dokümanlarını inceleyin.linked_customer_id(googleads.propertiesiçindelinkedCustomerId,GOOGLE_ADS_LINKED_CUSTOMER_ID): Bağlı müşteri kimliği.service_address(googleads.properties,GOOGLE_ADS_ENDPOINTiçindeserviceAddress): Google Ads API hizmet adresi URL'si (varsayılan olarak"https://googleads.googleapis.com").user_agent(googleads.propertiesiçindeuserAgent,GOOGLE_ADS_PERL_USER_AGENT): HTTP isteklerine dahil edilen özel kullanıcı aracısı başlığı öneki.proxy(googleads.propertiesiçindeproxy,GOOGLE_ADS_PERL_PROXY): İnternet bağlantısı için kullanılan proxy sunucusu URL'si.version(Client->newveyaset_version): Kullanılacak Google Ads API sürümü modülü (varsayılan olarak"V25").die_on_faults(Client->newveyaset_die_on_faults): API hatalarındaGoogle::Ads::GoogleAds::GoogleAdsExceptionnesnesi döndürmek yerine hizmet yöntemlerinindie()'i ham yanıt yüküyle çağırması için1olarak ayarlayın (varsayılan olarak0'dır).http_timeout(Client->newveyaset_http_timeout): Saniye cinsinden HTTP zaman aşımı (varsayılan olarak3600).http_retry_timing(Client->newveyaset_http_retry_timing): Geçici HTTP503ve504hataları için saniye cinsinden yeniden deneme duraklatma aralıkları (varsayılan olarak"5,10,15").