ไลบรารีของไคลเอ็นต์ Java จะค้นหาไฟล์การกำหนดค่าชื่อ ads.properties ใน
ไดเรกทอรีหน้าแรก (System.getProperty("user.home") + "/ads.properties" หรือ
~/ads.properties) คุณสามารถลบล้างเส้นทางและชื่อไฟล์นี้ได้ขณะรันไทม์เมื่อ
สร้าง GoogleAdsClient โดยใช้กลไกอย่างใดอย่างหนึ่งต่อไปนี้
- เรียกใช้
fromPropertiesFile(PATH_TO_CONFIG_FILE)โดยที่PATH_TO_CONFIG_FILEคือเส้นทางและชื่อไฟล์Fileของไฟล์การกำหนดค่า - ตั้งค่าตัวแปรสภาพแวดล้อม
GOOGLE_ADS_CONFIGURATION_FILE_PATHเป็นเส้นทางและชื่อไฟล์การกำหนดค่า แล้วเรียกใช้fromPropertiesFile()
รูปแบบของไฟล์การกำหนดค่าคือไฟล์ Properties มาตรฐานของ Java ซึ่งเป็นคู่คีย์-ค่า คีย์ที่รองรับจะแตกต่างกันไป ขึ้นอยู่กับขั้นตอนการตรวจสอบสิทธิ์ที่เลือก
คีย์ที่รองรับสำหรับโฟลว์ของแอปพลิเคชันบนเดสก์ท็อปและเว็บ
หากคุณใช้ขั้นตอนการสมัครแอปพลิเคชันแบบผู้ใช้คนเดียวหรือ หลายคนหนึ่งเครื่อง คีย์ที่รองรับจะมีดังนี้
# 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
คีย์ที่รองรับสำหรับบัญชีบริการ
หากคุณใช้ขั้นตอนบัญชีบริการ คีย์ที่รองรับจะมีดังนี้
# 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
ใช้ตัวแปรสภาพแวดล้อม
ไลบรารีรองรับตัวแปรสภาพแวดล้อมของไลบรารีของไคลเอ็นต์ Google Ads API มาตรฐานทั้งหมด ตารางต่อไปนี้แสดงตัวแปรสภาพแวดล้อมที่สอดคล้องกับพร็อพเพอร์ตี้ไฟล์การกำหนดค่าแต่ละรายการ
| พร็อพเพอร์ตี้ไฟล์การกำหนดค่า | ตัวแปรสภาพแวดล้อม |
|---|---|
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 (ไม่บังคับใน v46.0.0 ขึ้นไป) |
GOOGLE_ADS_DEVELOPER_TOKEN |
เมื่อตั้งค่าตัวแปรสภาพแวดล้อมที่เหมาะสมแล้ว ให้กำหนดค่า
GoogleAdsClient โดยเรียกใช้ fromEnvironment() ใน Builder ดังนี้
GoogleAdsClient googleAdsClient =
GoogleAdsClient.newBuilder()
.fromEnvironment()
.build();
รวมแนวทางการกำหนดค่า
GoogleAdsClient และเครื่องมือสร้างรองรับการรวมกลยุทธ์การกำหนดค่าที่แตกต่างกัน
เช่น คุณสามารถใช้ตัวแปรสภาพแวดล้อมเพื่อกำหนดค่า
ข้อมูลเข้าสู่ระบบของอินสแตนซ์และไฟล์พร็อพเพอร์ตี้สำหรับแอตทริบิวต์อื่นๆ โดยใช้
ข้อมูลโค้ดต่อไปนี้
GoogleAdsClient googleAdsClient =
GoogleAdsClient.newBuilder()
.fromEnvironment()
.fromPropertiesFile()
.build();
คุณสามารถทำการเปลี่ยนแปลงเพิ่มเติมได้ในขณะรันไทม์โดยใช้วิธีการกำหนดค่าอื่นๆ ของ Builder ก่อนเรียกใช้ build()
การเลิกใช้งานโทเค็นของนักพัฒนาซอฟต์แวร์
หลังจากการหยุดให้บริการโทเค็นของนักพัฒนาในวันที่ 9 กันยายน 2026 ระดับการเข้าถึง API จะกำหนดโดยโปรเจ็กต์ Google Cloud ในเซิร์ฟเวอร์ API แทนที่จะเป็นโทเค็นของนักพัฒนา
- การเปลี่ยนแปลงการกำหนดค่า: คุณไม่จำเป็นต้องระบุ
api.googleads.developerTokenในads.propertiesหรือGOOGLE_ADS_DEVELOPER_TOKENในตัวแปรสภาพแวดล้อมอีกต่อไป แอปพลิเคชันที่มีอยู่ซึ่งยังคงระบุapi.googleads.developerTokenจะยังคง ทำงานได้เนื่องจากเซิร์ฟเวอร์ API จะไม่สนใจส่วนหัวdeveloper-token(แม้ว่า Google Ads API เวอร์ชันหลักในอนาคตจะปฏิเสธส่วนหัวนี้) - ข้อกำหนดเกี่ยวกับเวอร์ชันของไลบรารีไคลเอ็นต์: หากต้องการละเว้นโทเค็นของนักพัฒนาซอฟต์แวร์
จากการกำหนดค่า ให้ใช้
google-ads-javav46.0.0ขึ้นไป ซึ่ง นำการตรวจสอบฝั่งไคลเอ็นต์ที่ต้องใช้โทเค็นของนักพัฒนาซอฟต์แวร์ออก - การเปลี่ยนแปลงข้อผิดพลาดในการให้สิทธิ์: หากโปรเจ็กต์ Google Cloud ที่มีสิทธิ์เข้าถึงแบบทดสอบเท่านั้นเรียกใช้บัญชี Google Ads ที่ใช้งานจริง
v25และเวอร์ชันที่ใหม่กว่าของ Google Ads API จะแสดงAuthorizationError.CLOUD_PROJECT_NOT_APPROVED_FOR_PRODUCTIONในขณะที่v24และเวอร์ชันก่อนหน้าจะแสดงAuthorizationError.ACTION_NOT_PERMITTED