Library klien Java mencari file konfigurasi bernama ads.properties di
direktori beranda Anda (System.getProperty("user.home") + "/ads.properties", atau
~/ads.properties). Anda dapat mengganti jalur dan nama file ini saat runtime saat
membuat GoogleAdsClient menggunakan salah satu mekanisme berikut:
- Panggil
fromPropertiesFile(PATH_TO_CONFIG_FILE), denganPATH_TO_CONFIG_FILEadalah jalur dan nama fileFiledari file konfigurasi Anda. - Tetapkan variabel lingkungan
GOOGLE_ADS_CONFIGURATION_FILE_PATHke jalur dan nama file konfigurasi Anda, lalu panggilfromPropertiesFile().
Format file konfigurasi adalah file Properties Java standar yang berisi pasangan nilai kunci. Kunci yang didukung bervariasi bergantung pada alur autentikasi yang dipilih.
Kunci yang didukung untuk alur aplikasi desktop dan web
Jika Anda menggunakan alur aplikasi pengguna tunggal atau multi-pengguna, kunci yang didukung adalah sebagai berikut:
# Credential for accessing Google's OAuth servers.
# Provided by console.cloud.google.com.
api.googleads.clientId=INSERT_CLIENT_ID_HERE
# Credential for accessing Google's OAuth servers.
# Provided by console.cloud.google.com.
api.googleads.clientSecret=INSERT_CLIENT_SECRET_HERE
# Renewable OAuth credential associated with 1 or more Google Ads accounts.
api.googleads.refreshToken=INSERT_REFRESH_TOKEN_HERE
# Required for manager accounts only: Specify the login customer ID used to
# authenticate API calls. This will be the customer ID of the authenticated
# manager account. You can also specify this later in code if your application
# uses multiple manager account + OAuth pairs.
#
# api.googleads.loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE
# Only required if explicitly instructed by the service documentation.
# api.googleads.linkedCustomerId=INSERT_LINKED_CUSTOMER_ID_HERE
# Maximum allowed response payload size, in bytes.
# Customize this to allow response sizes for GoogleAdsService.search and
# GoogleAdsService.searchStream API calls to exceed the default limit of 64MB.
# api.googleads.maxInboundMessageBytes=INSERT_MAX_INBOUND_MESSAGE_BYTES_HERE
# Specifies whether to use Application Default Credentials.
api.googleads.useApplicationDefaultCredentials=false
Kunci yang didukung untuk akun layanan
Jika Anda menggunakan alur akun layanan, kunci yang didukung adalah sebagai berikut:
# Path to the service account secrets file in JSON format.
# Provided by console.cloud.google.com.
api.googleads.serviceAccountSecretsPath=INSERT_PATH_TO_JSON_HERE
# Optional: Email address of the user to impersonate when using Google Workspace
# domain-wide delegation. This should be a user who has access to your Google Ads
# account and is in the same Google Workspace domain as the service account.
# api.googleads.serviceAccountUser=INSERT_USER_EMAIL_ADDRESS_HERE
# Required for manager accounts only: Specify the login customer ID used to
# authenticate API calls. This will be the customer ID of the authenticated
# manager account. You can also specify this later in code if your application
# uses multiple manager account + OAuth pairs.
#
# api.googleads.loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE
Menggunakan variabel lingkungan
Library ini mendukung semua variabel lingkungan library klien Google Ads API standar. Tabel berikut menunjukkan variabel lingkungan yang sesuai dengan setiap properti file konfigurasi:
| Properti file konfigurasi | Variabel lingkungan |
|---|---|
api.googleads.clientId |
GOOGLE_ADS_CLIENT_ID |
api.googleads.clientSecret |
GOOGLE_ADS_CLIENT_SECRET |
api.googleads.refreshToken |
GOOGLE_ADS_REFRESH_TOKEN |
api.googleads.serviceAccountSecretsPath |
GOOGLE_ADS_JSON_KEY_FILE_PATH |
api.googleads.serviceAccountUser |
GOOGLE_ADS_IMPERSONATED_EMAIL |
api.googleads.loginCustomerId |
GOOGLE_ADS_LOGIN_CUSTOMER_ID |
api.googleads.linkedCustomerId |
GOOGLE_ADS_LINKED_CUSTOMER_ID |
api.googleads.maxInboundMessageBytes |
GOOGLE_ADS_MAX_INBOUND_MESSAGE_BYTES |
api.googleads.useApplicationDefaultCredentials |
GOOGLE_ADS_USE_APPLICATION_DEFAULT_CREDENTIALS |
api.googleads.developerToken (opsional di v46.0.0 dan yang lebih baru) |
GOOGLE_ADS_DEVELOPER_TOKEN |
Setelah menetapkan variabel lingkungan yang sesuai, konfigurasikan
GoogleAdsClient dengan memanggil fromEnvironment() di builder:
GoogleAdsClient googleAdsClient =
GoogleAdsClient.newBuilder()
.fromEnvironment()
.build();
Menggabungkan pendekatan konfigurasi
GoogleAdsClient dan buildernya mendukung penggabungan berbagai strategi konfigurasi. Misalnya, Anda dapat menggunakan variabel lingkungan untuk mengonfigurasi
kredensial instance dan file properti untuk atribut lain menggunakan
cuplikan berikut:
GoogleAdsClient googleAdsClient =
GoogleAdsClient.newBuilder()
.fromEnvironment()
.fromPropertiesFile()
.build();
Anda dapat melakukan perubahan lebih lanjut saat runtime menggunakan metode konfigurasi
builder lainnya sebelum memanggil build().
Penghentian token developer
Setelah penghentian token developer pada 9 September 2026, tingkat akses API ditentukan oleh project Google Cloud Anda di server API, bukan token developer:
- Perubahan konfigurasi: Anda tidak perlu lagi menentukan
api.googleads.developerTokendiads.propertiesatauGOOGLE_ADS_DEVELOPER_TOKENdi variabel lingkungan Anda. Aplikasi yang sudah ada yang masih menentukanapi.googleads.developerTokenakan terus berfungsi karena server API mengabaikan headerdeveloper-token(meskipun versi utama Google Ads API mendatang akan menolaknya). - Persyaratan versi library klien: Untuk menghilangkan token developer
dari konfigurasi Anda, gunakan
google-ads-javav46.0.0atau yang lebih baru, yang menghapus validasi sisi klien yang memerlukan token developer. - Perubahan error otorisasi: Jika project Google Cloud dengan akses Test saja memanggil akun Google Ads produksi, Google Ads API
v25dan yang lebih baru akan menampilkanAuthorizationError.CLOUD_PROJECT_NOT_APPROVED_FOR_PRODUCTION, sedangkanv24dan yang lebih lama akan menampilkanAuthorizationError.ACTION_NOT_PERMITTED.