Google Ads API PHP istemci kitaplığı, kitaplık davranışını özelleştirmek için kullanabileceğiniz çeşitli yapılandırma ayarları sunar.
Yapılandırma dosyası
Bu yapılandırma ayarlarının çoğunu INI yapılandırma dosyalarında depolayabilir ve istemcileri örneklendirirken kullanabilirsiniz (ör. google_ads_php.ini).
Kimlik bilgisi ve istemci oluşturucular, bu tür dosyalardan ayarları yüklemek için fromFile yöntemleri sunar:
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile('/path/to/google_ads_php.ini')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile('/path/to/google_ads_php.ini')
->withOAuth2Credential($oAuth2Credential)
->build();
Bağımsız değişken olarak sağlanan bir yapılandırma yolu yoksa fromFile
yöntemleri varsayılan yapılandırma yolundan yüklenir:
- Ayarlandıysa
GOOGLE_ADS_CONFIGURATION_FILE_PATHadlı ortam değişkeninin değeri. - Aksi takdirde,
HOMEdizininizdekigoogle_ads_php.inidosyası.
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile()
->withOAuth2Credential($oAuth2Credential)
->build();
Dinamik yapılandırma
İstemcileri örneklendirirken bu yapılandırma ayarlarını dinamik olarak belirleyebilirsiniz:
$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();
Yapılandırma ortam değişkenleri
İstemcileri örneklendirirken bazı yapılandırma ayarlarını ortam değişkenlerinden ayarlayabilirsiniz (standart ortam değişkenlerine bakın).
Hem kimlik bilgisi hem de istemci oluşturucular, ortam değişkenlerinden ayarları yüklemek için fromEnvironmentVariables yöntemleri sunar.
$oAuth2Credential = (new OAuth2TokenBuilder())
// ...
->fromEnvironmentVariables()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->fromEnvironmentVariables()
->build();
Yapılandırma alanları
Yapılandırma ayarları, kategoriler halinde düzenlenmiş çeşitli alanları destekler:
OAuth2TokenBuildertarafından kullanılan alanlar:- Uygulama modu:
[OAUTH2] clientId: OAuth2 istemci kimliğiniz.[OAUTH2] clientSecret: OAuth2 istemci gizli anahtarınız.[OAUTH2] refreshToken: OAuth2 yenileme jetonunuz.
- Hizmet hesabı modu:
[OAUTH2] jsonKeyFilePath: JSON anahtar yolu.[OAUTH2] scopes: OAuth2 kapsamları (v32.1.0ve sonraki sürümlerde varsayılan olarakhttps://www.googleapis.com/auth/adwords;v32.1.0sürümünden önceki sürümlerde veya özel kapsamlar kullanılırken zorunlu;fromEnvironmentVariables()tarafından bir ortam değişkeninden okunmaz).[OAUTH2] impersonatedEmail: Google Workspace alan genelinde yetki kullanılırken kimliğine bürünülecek isteğe bağlı e-posta adresi.
- Uygulama Varsayılan Kimlik Bilgileri modu:
- Uygulama modu veya Hizmet hesabı modu alanlarından hiçbiri ayarlanmadığında
OAuth2TokenBuilder, otomatik olarak Uygulama Varsayılan Kimlik Bilgileri'ne (ADC) geri döner.
- Uygulama modu veya Hizmet hesabı modu alanlarından hiçbiri ayarlanmadığında
- Uygulama modu:
GoogleAdsClientBuildertarafından kullanılan alanlar:[GOOGLE_ADS] loginCustomerId: İstekte kullanılacak yetkili müşterinin kimliği.[GOOGLE_ADS] linkedCustomerId: Bağlı müşteri kimliği.[GOOGLE_ADS] endpoint: İsteğe bağlı alternatif Google Ads API sunucu uç noktası.[LOGGING] logFilePath: Günlük kaydı çıkışının yolu.[LOGGING] logLevel: Günlük kaydı düzeyi.[CONNECTION] proxy: İnternet bağlantısı için kullanılan proxy sunucu URL'si.[CONNECTION] transport: Ağ aktarımı (grpcveyarest).[CONNECTION] grpcChannelIsSecure: gRPC kanalının güvenli olup olmadığı.[CONNECTION] grpcChannelCredential: gRPC kanalı kimlik bilgileri.[CONNECTION] unaryMiddlewares: Tekli ara katman yazılımları.[CONNECTION] streamingMiddlewares: Akış ara katman yazılımları.[CONNECTION] grpcInterceptors: gRPC kesicileri.
Yapılandırma doğrulaması
İstemciler örneklendirilirken yapılandırma ayarları kontrol edilir ve geçersiz olduğunda istisnalar oluşturulur. Doğrulama kuralları aşağıdaki gibidir:
[OAUTH2]alanları, hem uygulama modu hem de hizmet hesabı modu için aynı anda ayarlanmamalıdır.- Hizmet hesabı modu kullanılırken
[OAUTH2] jsonKeyFilePathayarlanmalıdır (v32.1.0sürümünden önceki sürümlerde[OAUTH2] scopesde ayarlanmalıdır;v32.1.0ve sonraki sürümlerdescopesvarsayılan olarakhttps://www.googleapis.com/auth/adwordsdeğerine ayarlanır). - Uygulama modu kullanılırken
[OAUTH2] clientId,[OAUTH2] clientSecretve[OAUTH2] refreshTokenayarlanmalıdır. - Ayarlanırsa
[GOOGLE_ADS] loginCustomerIdve[GOOGLE_ADS] linkedCustomerIdpozitif sayılar olmalıdır. - Ayarlandıysa
[CONNECTION] proxygeçerli bir URL olmalıdır (FILTER_VALIDATE_URLfiltresine bakın). - Ayarlandığında
[LOGGING] logLevel, büyük harflerle yazılmış geçerli bir PSR günlük düzeyi (ör.INFO) olmalıdır. - Ayarlanırsa
[CONNECTION] transport,grpcveyarestolmalıdır. [CONNECTION] transport,grpcolarak ayarlanırsa gRPC aktarımı ortam tarafından desteklenmelidir (Aktarım kılavuzuna bakın).[CONNECTION] transport,grpcolarak ayarlanmadığında[CONNECTION] grpcChannelIsSecure,trueolmalıdır (REST bağlantıları her zaman HTTPS gerektirir).[CONNECTION] grpcChannelCredentialyalnızca[CONNECTION] transport,grpcolarak ayarlandığında ayarlanabilir.[CONNECTION] grpcChannelCredentialyalnızca[CONNECTION] grpcChannelIsSecure,trueolduğunda ayarlanabilir.