Library klien PHP Google Ads API menyediakan beberapa setelan konfigurasi yang dapat Anda gunakan untuk menyesuaikan perilaku library.
File konfigurasi
Anda dapat menyimpan sebagian besar setelan konfigurasi ini di
file ini
dan menggunakannya saat membuat instance klien, misalnya,
google_ads_php.ini
.
Builder kredensial dan klien menyediakan metode fromFile
untuk memuat
setelan dari file tersebut:
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile('/path/to/google_ads_php.ini')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile('/path/to/google_ads_php.ini')
->withOAuth2Credential($oAuth2Credential)
->build();
Jika tidak ada jalur konfigurasi yang diberikan sebagai argumen, metode fromFile
akan dimuat dari jalur konfigurasi default, yaitu:
- Nilai variabel lingkungan bernama
GOOGLE_ADS_CONFIGURATION_FILE_PATH
jika ditetapkan. - Jika tidak, file
google_ads_php.ini
di direktoriHOME
Anda.
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile()
->withOAuth2Credential($oAuth2Credential)
->build();
Konfigurasi dinamis
Anda dapat menetapkan setelan konfigurasi ini secara dinamis saat membuat instance klien.
$oAuth2Credential = (new OAuth2TokenBuilder())
->withClientId('INSERT_CLIENT_ID')
// ...
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
// ...
->build();
Variabel lingkungan konfigurasi
Anda dapat menetapkan beberapa setelan konfigurasi dari variabel lingkungan saat membuat instance klien (lihat daftar lengkap).
Kredensial dan builder klien menyediakan metode fromEnvironmentVariables
untuk memuat setelan dari variabel lingkungan:
$oAuth2Credential = (new OAuth2TokenBuilder())
// ...
->fromEnvironmentVariables()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->fromEnvironmentVariables()
->build();
Kolom konfigurasi
Setelan konfigurasi mendukung beberapa kolom yang diatur dalam kategori.
- Kolom yang digunakan oleh
OAuth2TokenBuilder
:- Mode Aplikasi
[OAUTH2] clientId
: Client ID OAuth2 Anda.[OAUTH2] clientSecret
: Rahasia klien OAuth2 Anda.[OAUTH2] refreshToken
: Token refresh OAuth2 Anda.
- Mode Akun Layanan
[OAUTH2] jsonKeyFilePath
: Jalur file kunci JSON.[OAUTH2] scopes
: Cakupan.[OAUTH2] impersonatedEmail
: Email yang akan ditiru identitasnya.
- Mode Aplikasi
- Kolom yang digunakan oleh
GoogleAdsClientBuilder
:[GOOGLE_ADS] developerToken
: Token developer Anda untuk mengakses API.[GOOGLE_ADS] loginCustomerId
: ID pelanggan yang diotorisasi untuk digunakan dalam permintaan.[GOOGLE_ADS] linkedCustomerId
: ID pelanggan tertaut.[LOGGING] logFilePath
: Jalur file untuk logging.[LOGGING] logLevel
: Level logging.[CONNECTION] proxy
: URL server proxy yang digunakan untuk konektivitas internet.[CONNECTION] transport
: Transpor.[CONNECTION] grpcChannelIsSecure
: Apakah saluran gRPC aman atau tidak.[CONNECTION] grpcChannelCredential
: Kredensial saluran gRPC.[CONNECTION] unaryMiddlewares
: Middleware unary.[CONNECTION] streamingMiddlewares
: Middleware streaming.[CONNECTION] grpcInterceptors
: Interceptor gRPC.
Validasi konfigurasi
Setelan konfigurasi diperiksa saat membuat instance klien dan pengecualian akan ditampilkan jika tidak valid. Berikut adalah aturannya:
- Kolom
[OAUTH2]
tidak boleh ditetapkan untuk Mode Aplikasi dan Mode Akun Layanan secara bersamaan. [OAUTH2] jsonKeyFilePath
dan[OAUTH2] scopes
harus ditetapkan saat menggunakan Mode Akun Layanan.[OAUTH2] clientId
,[OAUTH2] clientSecret
, dan[OAUTH2] refreshToken
harus ditetapkan saat menggunakan Mode Aplikasi.[GOOGLE_ADS] developerToken
harus selalu ditetapkan.- Jika ditetapkan,
[GOOGLE_ADS] loginCustomerId
dan[GOOGLE_ADS] linkedCustomerId
harus berupa angka positif. - Jika ditetapkan,
[CONNECTION] proxy
harus berupa URL yang valid (lihat filter FILTER_VALIDATE_URL). - Jika ditetapkan,
[LOGGING] logLevel
harus berupa level log PSR yang valid dengan huruf kapital, sepertiINFO
. - Jika ditetapkan,
[CONNECTION] transport
harusgrpc
ataurest
. - Jika
[CONNECTION] transport
ditetapkan kegrpc
, transpor gRPC harus didukung oleh lingkungan (lihat panduan transport). [CONNECTION] grpcChannelIsSecure
harustrue
jika[CONNECTION] transport
tidak ditetapkan kegrpc
.[CONNECTION] grpcChannelCredential
hanya dapat ditetapkan jika[CONNECTION] transport
ditetapkan kegrpc
.[CONNECTION] grpcChannelCredential
hanya dapat ditetapkan jika[CONNECTION] grpcChannelIsSecure
adalahtrue
.