Yapılandırma

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 dosyalarında depolayabilir ve istemciler için örnek oluştururken bunları kullanabilirsiniz (ör. google_ads_php.ini).

Hem kimlik bilgisi hem de istemci oluşturucular, bu tür dosyalardan ayarları yüklemek için fromFile yöntemleri sağlar:

$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ğlanmış bir yapılandırma dosyası yolu yoksa fromFile yöntemleri, varsayılan yapılandırma dosyası yolundan yüklenir:

  1. Ayarlandıysa GOOGLE_ADS_CONFIGURATION_FILE_PATH adlı ortam değişkeninin değeri.
  2. Aksi takdirde, HOME dizininizdeki google_ads_php.ini dosyası.
$oAuth2Credential = (new OAuth2TokenBuilder())
    ->fromFile()
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->fromFile()
    ->withOAuth2Credential($oAuth2Credential)
    ->build();

Dinamik yapılandırma

İstemciler için örnek oluştururken bu yapılandırma ayarlarını dinamik olarak belirleyebilirsiniz.

$oAuth2Credential = (new OAuth2TokenBuilder())
    ->withClientId('INSERT_CLIENT_ID')
    // ...
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->withOAuth2Credential($oAuth2Credential)
    ->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
    // ...
    ->build();

Yapılandırma ortamı değişkenleri

İstemcileri tetiklerken ortam değişkenlerindeki bazı yapılandırma ayarlarını belirleyebilirsiniz (kapsamlı listeyi inceleyin).

Hem kimlik bilgisi hem de istemci oluşturucular, ortam değişkenlerinden ayar yüklemek için fromEnvironmentVariables yöntemleri sağlar:

$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.

  1. OAuth2TokenBuilder tarafı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 dosyası yolu.
      • [OAUTH2] scopes: Kapsamlar.
      • [OAUTH2] impersonatedEmail: Kimliğine bürünülecek e-posta adresi.
  2. GoogleAdsClientBuilder tarafından kullanılan alanlar:
    • [GOOGLE_ADS] developerToken: API'ye erişmek için kullandığınız geliştirici jetonunuzdur.
    • [GOOGLE_ADS] loginCustomerId: İstekte kullanılacak yetkili müşterinin kimliği.
    • [GOOGLE_ADS] linkedCustomerId: Bağlı müşteri kimliği.
    • [LOGGING] logFilePath: Günlük kaydının dosya 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: Ulaşım.
    • [CONNECTION] grpcChannelIsSecure: gRPC kanalının güvenli olup olmadığı.
    • [CONNECTION] grpcChannelCredential: gRPC kanalı kimlik bilgileri.
    • [CONNECTION] unaryMiddlewares: Birli ara katman yazılımları.
    • [CONNECTION] streamingMiddlewares: Akış ara katman yazılımları.
    • [CONNECTION] grpcInterceptors: gRPC önleyicileri.
  3. [GAPIC] useGapicV2Source: Hizmet istemcileri oluştururken GAPIC v2 kaynak kodunun kullanılıp kullanılmayacağını belirtir.

Yapılandırma doğrulaması

İstemci örnekleri oluşturulurken yapılandırma ayarları kontrol edilir ve geçersiz olduğunda istisnalar atılır. Kurallar şunlardır:

  1. [OAUTH2] alanları, hem Uygulama Modu hem de Hizmet Hesabı Modu için aynı anda ayarlanmamalıdır.
  2. Hizmet Hesabı Modu kullanılırken [OAUTH2] jsonKeyFilePath ve [OAUTH2] scopes ayarlanmalıdır.
  3. Uygulama Modu kullanılırken [OAUTH2] clientId, [OAUTH2] clientSecret ve [OAUTH2] refreshToken ayarlanmalıdır.
  4. [GOOGLE_ADS] developerToken her zaman ayarlanmalıdır.
  5. Ayarlanırsa [GOOGLE_ADS] loginCustomerId ve [GOOGLE_ADS] linkedCustomerId, pozitif sayı olmalıdır.
  6. Ayarlanırsa [CONNECTION] proxy geçerli bir URL olmalıdır (FILTER_VALIDATE_URL filtresine bakın).
  7. Ayarlanırsa [LOGGING] logLevel, INFO gibi büyük harfle yazılan geçerli bir PSR günlük düzeyi olmalıdır.
  8. Ayarlanırsa [CONNECTION] transport, grpc veya rest olmalıdır.
  9. [CONNECTION] transport, grpc olarak ayarlanırsa gRPC aktarımı ortam tarafından desteklenmelidir (aktarım kılavuzuna bakın).
  10. [CONNECTION] transport, grpc olarak ayarlanmadığında [CONNECTION] grpcChannelIsSecure, true olmalıdır.
  11. [CONNECTION] grpcChannelCredential yalnızca [CONNECTION] transport, grpc olarak ayarlandığında yapılabilir.
  12. [CONNECTION] grpcChannelCredential, yalnızca [CONNECTION] grpcChannelIsSecure true olduğunda ayarlanabilir.