Клиентская библиотека PHP Google Ads API предоставляет несколько параметров конфигурации, которые можно использовать для настройки поведения библиотеки.
Конфигурационный файл
 Большую часть этих параметров конфигурации можно сохранить в ini -файлах и использовать их при создании экземпляров клиентов, например google_ads_php.ini .
 Разработчики учетных данных и клиентов предоставляют методы fromFile для загрузки настроек из таких файлов:
$oAuth2Credential = (new OAuth2TokenBuilder())
    ->fromFile('/path/to/google_ads_php.ini')
    ->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
    ->fromFile('/path/to/google_ads_php.ini')
    ->withOAuth2Credential($oAuth2Credential)
    ->build();
 Если в качестве аргумента не указан путь конфигурации, методы fromFile загружаются из пути конфигурации по умолчанию, который:
-  Значение переменной среды с именем 
GOOGLE_ADS_CONFIGURATION_FILE_PATH, если она установлена. -  В противном случае файл 
google_ads_php.iniнаходится в вашемHOMEкаталоге. 
$oAuth2Credential = (new OAuth2TokenBuilder())
    ->fromFile()
    ->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
    ->fromFile()
    ->withOAuth2Credential($oAuth2Credential)
    ->build();
Динамическая конфигурация
Эти параметры конфигурации можно устанавливать динамически при создании экземпляров клиентов.
$oAuth2Credential = (new OAuth2TokenBuilder())
    ->withClientId('INSERT_CLIENT_ID')
    // ...
    ->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
    ->withOAuth2Credential($oAuth2Credential)
    ->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
    // ...
    ->build();
Переменные среды конфигурации
Вы можете установить некоторые параметры конфигурации из переменных среды при создании экземпляров клиентов (см. исчерпывающий список ).
 Разработчики учетных данных и клиентов предоставляют методы fromEnvironmentVariables для загрузки настроек из переменных среды:
$oAuth2Credential = (new OAuth2TokenBuilder())
    // ...
    ->fromEnvironmentVariables()
    ->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
    ->withOAuth2Credential($oAuth2Credential)
    // ...
    ->fromEnvironmentVariables()
    ->build();
Поля конфигурации
Параметры конфигурации поддерживают несколько полей, организованных по категориям.
-  Поля, используемые 
OAuth2TokenBuilder:-  Режим приложения
-  
[OAUTH2] clientId: ваш идентификатор клиента OAuth2. -  
[OAUTH2] clientSecret: секрет вашего клиента OAuth2. -  
[OAUTH2] refreshToken: ваш токен обновления OAuth2. 
 -  
 -  Режим учетной записи службы
-  
[OAUTH2] jsonKeyFilePath: путь к файлу ключей Json. -  
[OAUTH2] scopes: области. -  
[OAUTH2] impersonatedEmail: адрес электронной почты, который нужно выдать за другое лицо. 
 -  
 
 -  Режим приложения
 -  Поля, используемые 
GoogleAdsClientBuilder:-  
[GOOGLE_ADS] developerToken: ваш токен разработчика для доступа к API. -  
[GOOGLE_ADS] loginCustomerId: идентификатор авторизованного клиента , который будет использоваться в запросе. -  
[GOOGLE_ADS] linkedCustomerId: идентификатор связанного клиента. -  
[LOGGING] logFilePath: путь к файлу для ведения журнала. -  
[LOGGING] logLevel: уровень ведения журнала. -  
[CONNECTION] proxy: URL-адрес прокси-сервера, используемый для подключения к Интернету. -  
[CONNECTION] transport: Транспорт. -  
[CONNECTION] grpcChannelIsSecure: является ли канал gRPC безопасным или нет. -  
[CONNECTION] grpcChannelCredential: учетные данные канала gRPC. -  
[CONNECTION] unaryMiddlewares: унарное промежуточное ПО. -  
[CONNECTION] streamingMiddlewares: промежуточное ПО потоковой передачи. -  
[CONNECTION] grpcInterceptors: перехватчики gRPC. 
 -  
 
Проверка конфигурации
Параметры конфигурации проверяются при создании экземпляров клиентов, а исключения выдаются, если они недействительны. Вот правила:
-  Поля 
[OAUTH2]не должны быть установлены одновременно для режима приложения и режима учетной записи службы. -  Области 
[OAUTH2] jsonKeyFilePathи[OAUTH2] scopesдолжны быть установлены при использовании режима учетной записи службы. -  
[OAUTH2] clientId,[OAUTH2] clientSecretи[OAUTH2] refreshTokenдолжны быть установлены при использовании режима приложения. -  
[GOOGLE_ADS] developerTokenдолжен быть установлен всегда. -  Если установлено, 
[GOOGLE_ADS] loginCustomerIdи[GOOGLE_ADS] linkedCustomerIdдолжны быть положительными числами. -  Если установлено, 
[CONNECTION] proxyдолжен быть действительным URL-адресом (см. фильтр FILTER_VALIDATE_URL ). -  Если установлено, 
[LOGGING] logLevelдолжен быть допустимым уровнем журнала PSR, написанным заглавными буквами, напримерINFO. -  Если установлено, 
[CONNECTION] transportдолжно быть либоgrpc, либоrest. -  Если для 
[CONNECTION] transportустановлено значениеgrpc, транспорт gRPC должен поддерживаться средой (см. руководство по транспорту ). -  
[CONNECTION] grpcChannelIsSecureдолжно иметьtrue, если[CONNECTION] transportне установлено значениеgrpc. -  
[CONNECTION] grpcChannelCredentialможно установить только в том случае, если для[CONNECTION] transportустановлено значениеgrpc. -  
[CONNECTION] grpcChannelCredentialможно установить только в том случае, если[CONNECTION] grpcChannelIsSecureустановленоtrue.