پیکربندی

کتابخانه کارخواه Google Ads API Perl چندین تنظیم پیکربندی ارائه می‌دهد که می‌توانید از آن‌ها برای سفارشی‌سازی رفتار کتابخانه استفاده کنید.

فایل پیکربندی

می‌توانید فایل googleads.properties را برای استفاده هنگام نمونه‌سازی کارخواه مشخص کنید.

اگر هنگام نمونه‌سازی از هیچ آرگومانی استفاده نکنید:

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

سپس کتابخانه در فهرست راهنمای HOME شما به‌دنبال فایل می‌گردد، یا در مسیری که در متغیر محیطی GOOGLE_ADS_CONFIGURATION_FILE_PATH مشخص شده است (اگر تنظیم شده باشد).

یا می‌توانید مسیر را به‌طور صریح مشخص کنید:

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

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

که در این صورت کارخواه فایل را در آن مسیر جستجو می‌کند.

ساده‌ترین راه برای تولید این فایل این است که googleads.properties را از مخزن GitHub کپی کنید و آن را تغییر دهید تا شناسه کارخواه، رمز کارخواه، و ژتون بازآوری شما را دربرگیرد.

پیکربندی پویا

می‌توانید پیکربندی را به‌صورت پویا هنگام نمونه‌سازی کتابخانه یا پس‌از نمونه‌سازی تنظیم کنید:

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

همچنین می‌توانید پیکربندی را پس‌از نمونه‌سازی اصلاح کنید:

$api_client->set_login_customer_id("INSERT_LOGIN_CUSTOMER_ID_HERE");

همچنین می‌توانید شیء OAuth2ApplicationsHandler را از نمونه Client دریافت کنید و شناسه کارخواه، رمز کارخواه، و ژتون بازآوری را در زمان اجرا تغییر دهید:

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");

متغیرهای محیط پیکربندی

می‌توانید برخی‌از تنظیمات پیکربندی را از متغیرهای محیطی هنگام نمونه‌سازی مشتریان تنظیم کنید (متغیرهای محیطی استاندارد را ببینید).

ماژول Client تابع configure_from_environment_variables را برای بار کردن مقادیر از متغیرهای محیطی ارائه می‌دهد.

# 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();

فیلدهای پیکربندی

توجه داشته باشید که کلیدهای googleads.properties از camelCase (مانند loginCustomerId و linkedCustomerId) استفاده می‌کنند، درحالی‌که متغیرهای مستقل سازنده Client->new({...}) و روش‌های گرداننده از snake_case (مانند login_customer_id و linked_customer_id) استفاده می‌کنند.

فیلدهای حفظ‌شده در OAuth2ApplicationsHandler:

  • client_id (clientId در googleads.properties، GOOGLE_ADS_CLIENT_ID): شناسه کارخواه OAuth2 شما.
  • client_secret (clientSecret در googleads.properties، GOOGLE_ADS_CLIENT_SECRET): رمز کارخواه OAuth2 شما.
  • refresh_token (refreshToken در googleads.properties، GOOGLE_ADS_REFRESH_TOKEN): کد بازآوری OAuth2 شما.
  • ‫additional_scopes (additionalScopes در googleads.properties): گستره‌های OAuth2 اضافی برای درخواست.

فیلدهای حفظ‌شده در OAuth2ServiceAccountsHandler:

  • ‫json_key_file_path (jsonKeyFilePath در googleads.properties، GOOGLE_ADS_JSON_KEY_FILE_PATH): مسیر فایل کلید JSON حساب سرویس شما.
  • ‫impersonated_email (impersonatedEmail در googleads.properties، GOOGLE_ADS_IMPERSONATED_EMAIL): نشانی ایمیلی که هنگام استفاده از واگذاری در سطح دامنه Google Workspace جعل هویت می‌شود.
  • ‫additional_scopes (additionalScopes در googleads.properties): گستره‌های OAuth2 اضافی برای درخواست.

فیلدهای حفظ‌شده در Client:

  • ‫login_customer_id (loginCustomerId در googleads.properties، GOOGLE_ADS_LOGIN_CUSTOMER_ID): شناسه حساب مدیر که برای دسترسی به حساب مشتری استفاده می‌شود. سند login-customer-id را ببینید.
  • ‫linked_customer_id (linkedCustomerId در googleads.properties، GOOGLE_ADS_LINKED_CUSTOMER_ID): شناسه مشتری پیوندشده.
  • ‫service_address (serviceAddress در googleads.properties، GOOGLE_ADS_ENDPOINT): نشانی وب سرویس Google Ads API (به‌طور پیش‌فرض "https://googleads.googleapis.com").
  • ‫user_agent (userAgent در googleads.properties، GOOGLE_ADS_PERL_USER_AGENT): پیشوند سرصفحه نماینده کاربر سفارشی موجود در درخواست‌های HTTP.
  • ‫proxy (proxy در googleads.properties، GOOGLE_ADS_PERL_PROXY): نشانی وب پراکسی سرور که برای اتصال اینترنت استفاده می‌شود.
  • version (Client->new یا set_version): ماژول نسخه Google Ads API برای استفاده (به‌طور پیش‌فرض "V26").
  • die_on_faults (Client->new یا set_die_on_faults): روی 1 تنظیم کنید تا روش‌های سرویس die() را با بار داده پاسخ خام در خطاهای API به‌جای برگرداندن شیء Google::Ads::GoogleAds::GoogleAdsException فراخوانی کنند (به‌طور پیش‌فرض روی 0 تنظیم شده است).
  • ‫http_timeout (Client->new یا set_http_timeout): وقفه زمانی HTTP به ثانیه (پیش‌فرض 3600 است).
  • http_retry_timing (Client->new یا set_http_retry_timing): فواصل مکث تکرار مجدد برحسب ثانیه برای خطاهای موقت اچ‌تی‌تی‌پی 503 و 504 (به‌طور پیش‌فرض "5,10,15").