Biblioteka klienta interfejsu Google Ads API dla języka PHP udostępnia kilka ustawień konfiguracyjnych, których możesz użyć do dostosowania działania biblioteki.
Plik konfiguracji
Większość tych ustawień konfiguracji możesz przechowywać w plikach konfiguracyjnych INI i używać ich podczas tworzenia instancji klientów, np. google_ads_php.ini.
Zarówno narzędzie do tworzenia uwierzytelniania, jak i klienta udostępniają metody fromFile do wczytywania ustawień z takich plików:
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile('/path/to/google_ads_php.ini')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile('/path/to/google_ads_php.ini')
->withOAuth2Credential($oAuth2Credential)
->build();
Jeśli ścieżka konfiguracji nie zostanie podana jako argument, metody fromFile
wczytują się z domyślnej ścieżki konfiguracji, czyli:
- Wartość zmiennej środowiskowej o nazwie
GOOGLE_ADS_CONFIGURATION_FILE_PATH, jeśli jest ustawiona. - W przeciwnym razie plik
google_ads_php.iniw kataloguHOME.
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile()
->withOAuth2Credential($oAuth2Credential)
->build();
Konfiguracja dynamiczna
Te ustawienia konfiguracji możesz ustawiać dynamicznie podczas tworzenia instancji klientów:
$oAuth2Credential = (new OAuth2TokenBuilder())
->withClientId('INSERT_CLIENT_ID_HERE')
->withClientSecret('INSERT_CLIENT_SECRET_HERE')
->withRefreshToken('INSERT_REFRESH_TOKEN_HERE')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
->build();
Zmienne środowiskowe konfiguracji
Niektóre ustawienia konfiguracji możesz określić za pomocą zmiennych środowiskowych podczas tworzenia instancji klientów (patrz standardowe zmienne środowiskowe).
Konstruktory danych logowania i klienta udostępniają metody fromEnvironmentVariables
do wczytywania ustawień ze zmiennych środowiskowych.
$oAuth2Credential = (new OAuth2TokenBuilder())
// ...
->fromEnvironmentVariables()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->fromEnvironmentVariables()
->build();
Pola konfiguracji
Ustawienia konfiguracji obsługują kilka pól podzielonych na kategorie:
- Pola używane przez
OAuth2TokenBuilder:- Tryb aplikacji:
[OAUTH2] clientId: identyfikator klienta OAuth2.[OAUTH2] clientSecret: tajny klucz klienta OAuth2.[OAUTH2] refreshToken: token odświeżania OAuth2.
- Tryb konta usługi:
[OAUTH2] jsonKeyFilePath: ścieżka klucza JSON.[OAUTH2] scopes: zakresy OAuth2 (domyślniehttps://www.googleapis.com/auth/adwordsw wersjiv32.1.0i nowszych; wymagane w wersjach starszych niżv32.1.0lub w przypadku używania zakresów niestandardowych; nie są odczytywane ze zmiennej środowiskowej przezfromEnvironmentVariables()).[OAUTH2] impersonatedEmail: opcjonalny adres e-mail, który ma być używany podczas przekazywania dostępu w całej domenie Google Workspace.
- Tryb domyślnego uwierzytelniania aplikacji:
- Jeśli nie ustawiono pól Tryb aplikacji ani Tryb konta usługi,
OAuth2TokenBuilderautomatycznie przełącza się na domyślne dane logowania aplikacji (ADC).
- Jeśli nie ustawiono pól Tryb aplikacji ani Tryb konta usługi,
- Tryb aplikacji:
- Pola używane przez
GoogleAdsClientBuilder:[GOOGLE_ADS] developerToken: (Wycofanie 9 września 2026 r.) Twój token deweloperski interfejsu Google Ads API. Opcjonalne, ignorowane przez serwery interfejsu API niezależnie od wersji biblioteki klienta. W przyszłej głównej wersji interfejsu Google Ads API będą odrzucane.v35.0.0i nowsze: nie jest wymagany podczas inicjowania klienta (GoogleAdsClientBuilderusunięto lokalną weryfikację tokena programisty po stronie klienta).- Wersje starsze niż
v35.0.0: wymagane przez lokalną weryfikację konfiguracji po stronie klienta.
[GOOGLE_ADS] loginCustomerId: identyfikator autoryzowanego klienta, który ma być użyty w żądaniu.[GOOGLE_ADS] linkedCustomerId: połączony identyfikator klienta.[GOOGLE_ADS] endpoint: opcjonalny alternatywny punkt końcowy serwera interfejsu Google Ads API.[LOGGING] logFilePath: ścieżka do danych wyjściowych logowania.[LOGGING] logLevel: poziom rejestrowania.[CONNECTION] proxy: adres URL serwera proxy używany do połączenia z internetem.[CONNECTION] transport: transport sieciowy (grpclubrest).[CONNECTION] grpcChannelIsSecure: czy kanał gRPC jest bezpieczny.[CONNECTION] grpcChannelCredential: dane logowania kanału gRPC.[CONNECTION] unaryMiddlewares: pośredniki unarne.[CONNECTION] streamingMiddlewares: oprogramowanie pośredniczące do streamingu.[CONNECTION] grpcInterceptors: przechwytujące gRPC.
Sprawdzanie poprawności konfiguracji
Ustawienia konfiguracji są sprawdzane podczas tworzenia instancji klientów, a w przypadku nieprawidłowych ustawień zgłaszane są wyjątki. Obowiązują te reguły weryfikacji:
- Pola
[OAUTH2]nie mogą być ustawione jednocześnie w trybie aplikacji i w trybie konta usługi. [OAUTH2] jsonKeyFilePathmusi być ustawiona podczas korzystania z trybu konta usługi (w wersjach wcześniejszych niżv32.1.0musi być też ustawiona wartość[OAUTH2] scopes; w wersjiv32.1.0i nowszych wartośćscopesjest domyślnie ustawiona nahttps://www.googleapis.com/auth/adwords).- W trybie aplikacji należy ustawić wartości
[OAUTH2] clientId,[OAUTH2] clientSecreti[OAUTH2] refreshToken. - W wersjach starszych niż
v35.0.0wartość[GOOGLE_ADS] developerTokenjest sprawdzana przez lokalną weryfikację po stronie klienta (w wersjiv35.0.0i nowszych wartość[GOOGLE_ADS] developerTokennie jest wymagana). - Jeśli te parametry są ustawione,
[GOOGLE_ADS] loginCustomerIdi[GOOGLE_ADS] linkedCustomerIdmuszą być liczbami dodatnimi. - Jeśli jest ustawiony, parametr
[CONNECTION] proxymusi być prawidłowym adresem URL (patrzFILTER_VALIDATE_URLfiltr). - Jeśli to pole jest ustawione,
[LOGGING] logLevelmusi być prawidłowym poziomem logowania PSR zapisanym wielkimi literami, np.INFO. - Jeśli ta wartość jest ustawiona,
[CONNECTION] transportmusi mieć wartośćgrpclubrest. - Jeśli wartość
[CONNECTION] transporttogrpc, środowisko musi obsługiwać transport gRPC (patrz przewodnik po transporcie). - Wartość parametru
[CONNECTION] grpcChannelIsSecuremusi być równatrue, jeśli parametr[CONNECTION] transportnie ma wartościgrpc(połączenia REST zawsze wymagają protokołu HTTPS). - Parametr
[CONNECTION] grpcChannelCredentialmożna ustawić tylko wtedy, gdy parametr[CONNECTION] transportma wartośćgrpc. - Ustawienie
[CONNECTION] grpcChannelCredentialmożna skonfigurować tylko wtedy, gdy ustawienie[CONNECTION] grpcChannelIsSecurema wartośćtrue.