कॉन्फ़िगरेशन

लाइब्रेरी, System.getProperty("user.home") + "/ads.properties" में मौजूद कॉन्फ़िगरेशन फ़ाइल ढूंढती है. नीचे दिए गए तरीकों में से किसी एक का इस्तेमाल करके, GoogleAdsClient बनाते समय, रनटाइम के दौरान इस पाथ और फ़ाइल का नाम बदला जा सकता है:

  • fromPropertiesFile(PATH_TO_CONFIG_FILE) को कॉल करें, जहां PATH_TO_CONFIG_FILE आपकी कॉन्फ़िगरेशन फ़ाइल का पाथ और फ़ाइल का नाम है.
  • एनवायरमेंट वैरिएबल GOOGLE_ADS_CONFIGURATION_FILE_PATH को अपनी कॉन्फ़िगरेशन फ़ाइल के पाथ और फ़ाइल के नाम पर सेट करें. इसके बाद, fromPropertiesFile() को कॉल करें.

कॉन्फ़िगरेशन फ़ाइल का फ़ॉर्मैट, 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

# Token which provides access to the Google Ads API in general. It does not
# grant access to any particular ad account (OAuth is used for this purpose).
api.googleads.developerToken=INSERT_DEVELOPER_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

सेवा खातों के साथ काम करने वाली कुंजियां

अगर सेवा खाता फ़्लो का इस्तेमाल किया जा रहा है, तो काम करने वाली कुंजियां इस तरह से काम करती हैं:

# Path to the service account secrets file in JSON format.
# Provided by console.cloud.google.com.
api.googleads.serviceAccountSecretsPath=INSERT_PATH_TO_JSON_HERE

# Email address of the user to impersonate.
# This should be a user who has access to your Google Ads account and is in the same
# Google Apps Domain as the service account.
api.googleads.serviceAccountUser=INSERT_USER_EMAIL_ADDRESS_HERE

# Token which provides access to the Google Ads API in general. It does not
# grant access to any particular ad account (OAuth is used for this purpose).
api.googleads.developerToken=INSERT_DEVELOPER_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

एनवायरमेंट वैरिएबल का इस्तेमाल करना

लाइब्रेरी में सभी Google Ads API क्लाइंट लाइब्रेरी के लिए आम तौर पर इस्तेमाल किए जाने वाले एनवायरमेंट वैरिएबल काम करते हैं. नीचे दी गई टेबल में एनवायरमेंट वैरिएबल दिखाया गया है, जो हर कॉन्फ़िगरेशन फ़ाइल प्रॉपर्टी से जुड़ा है.

कॉन्फ़िगरेशन फ़ाइल प्रॉपर्टी एनवायरमेंट वैरिएबल
api.googleads.developerToken GOOGLE_ADS_DEVELOPER_TOKEN
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

सही एनवायरमेंट वैरिएबल सेट करने के बाद, बिल्डर पर fromEnvironment() को कॉल करके, अपने GoogleAdsClient को कॉन्फ़िगर करें.

GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder()
  .fromEnvironment()
  .build();

कॉन्फ़िगरेशन के तरीके मिलाना

GoogleAdsClient और इसका बिल्डर, कॉन्फ़िगरेशन की अलग-अलग रणनीति को एक साथ इस्तेमाल करने में मदद करता है. उदाहरण के लिए, यहां दिए गए स्निपेट का इस्तेमाल करके, इंस्टेंस के क्रेडेंशियल और दूसरे एट्रिब्यूट के लिए प्रॉपर्टी फ़ाइल कॉन्फ़िगर करने के लिए, एनवायरमेंट वैरिएबल का इस्तेमाल किया जा सकता है.

GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder()
    .fromEnvironment()
    .fromPropertiesFile()
    .build();

इस उदाहरण में, क्लाइंट लाइब्रेरी, ऐसे किसी भी एट्रिब्यूट के लिए प्रॉपर्टी फ़ाइल की वैल्यू का इस्तेमाल करेगी जिसे उसके एनवायरमेंट वैरिएबल और प्रॉपर्टी फ़ाइल में एंट्री, दोनों के ज़रिए तय किया जाता है. विपरीत व्यवहार के लिए, बस fromPropertiesFile() को fromEnvironment() से पहले कॉल करें.

build() को कॉल करने से पहले, बिल्डर के कॉन्फ़िगरेशन के अन्य तरीकों का इस्तेमाल करके रनटाइम के दौरान और बदलाव किए जा सकते हैं.