Google Ads API की PHP क्लाइंट लाइब्रेरी, कॉन्फ़िगरेशन की कई सेटिंग उपलब्ध कराती है. इनका इस्तेमाल करके, लाइब्रेरी के काम करने के तरीके को अपनी पसंद के मुताबिक बनाया जा सकता है.
कॉन्फ़िगरेशन फ़ाइल
कॉन्फ़िगरेशन की इनमें से ज़्यादातर सेटिंग को
कॉन्फ़िगरेशन की इनमें से ज़्यादातर सेटिंग को
ini
फ़ाइलों में सेव किया जा सकता है. साथ ही, क्लाइंट को इंस्टैंशिएट करते समय इनका इस्तेमाल किया जा सकता है. उदाहरण के लिए,
google_ads_php.ini.
क्रेडेंशियल और क्लाइंट बिल्डर, दोनों में fromFile तरीके उपलब्ध होते हैं. इनकी मदद से, इन फ़ाइलों से सेटिंग लोड की जा सकती हैं:
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile('/path/to/google_ads_php.ini')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile('/path/to/google_ads_php.ini')
->withOAuth2Credential($oAuth2Credential)
->build();
अगर आर्ग्युमेंट के तौर पर कोई कॉन्फ़िगरेशन पाथ नहीं दिया गया है, तो fromFile तरीके, डिफ़ॉल्ट कॉन्फ़िगरेशन पाथ से लोड होते हैं. यह पाथ यहां दिया गया है:
- अगर
GOOGLE_ADS_CONFIGURATION_FILE_PATHनाम का एनवायरमेंट वैरिएबल सेट है, तो उसकी वैल्यू. - अन्यथा, आपकी
HOMEडायरेक्ट्री में मौजूदgoogle_ads_php.iniफ़ाइल.
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile()
->withOAuth2Credential($oAuth2Credential)
->build();
डाइनैमिक कॉन्फ़िगरेशन
क्लाइंट को इंस्टैंशिएट करते समय, कॉन्फ़िगरेशन की इन सेटिंग को डाइनैमिक तरीके से सेट किया जा सकता है.
$oAuth2Credential = (new OAuth2TokenBuilder())
->withClientId('INSERT_CLIENT_ID')
// ...
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->build();
कॉन्फ़िगरेशन एनवायरमेंट वैरिएबल
क्लाइंट को इंस्टैंशिएट करते समय, कॉन्फ़िगरेशन की कुछ सेटिंग को एनवायरमेंट वैरिएबल से सेट किया जा सकता है. पूरी सूची देखें.
क्रेडेंशियल और क्लाइंट बिल्डर, दोनों में fromEnvironmentVariables तरीके उपलब्ध होते हैं. इनकी मदद से, एनवायरमेंट वैरिएबल से सेटिंग लोड की जा सकती हैं:
$oAuth2Credential = (new OAuth2TokenBuilder())
// ...
->fromEnvironmentVariables()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->fromEnvironmentVariables()
->build();
कॉन्फ़िगरेशन फ़ील्ड
कॉन्फ़िगरेशन सेटिंग में, कैटगरी के हिसाब से व्यवस्थित कई फ़ील्ड शामिल होते हैं.
OAuth2TokenBuilderके इस्तेमाल किए जाने वाले फ़ील्ड:- ऐप्लिकेशन मोड
[OAUTH2] clientId: आपका OAuth2 क्लाइंट आईडी.[OAUTH2] clientSecret: आपका OAuth2 क्लाइंट सीक्रेट.[OAUTH2] refreshToken: आपका OAuth2 रीफ़्रेश टोकन.
- सेवा खाता मोड
[OAUTH2] jsonKeyFilePath: Json कुंजी का पाथ.[OAUTH2] scopes: दायरे.[OAUTH2] impersonatedEmail: वह ईमेल जिससे उपयोगकर्ता के तौर पर काम किया जा सकता है.
- ऐप्लिकेशन मोड
GoogleAdsClientBuilderके इस्तेमाल किए जाने वाले फ़ील्ड:[GOOGLE_ADS] loginCustomerId: अनुरोध में इस्तेमाल करने के लिए, अनुमति वाले ग्राहक का आईडी.[GOOGLE_ADS] linkedCustomerId: लिंक किया गया ग्राहक आईडी.[LOGGING] logFilePath: लॉगिंग का पाथ.[LOGGING] logLevel: लॉगिंग का लेवल.[CONNECTION] proxy: इंटरनेट कनेक्टिविटी के लिए इस्तेमाल किया जाने वाला प्रॉक्सी सर्वर यूआरएल.[CONNECTION] transport: ट्रांसपोर्ट.[CONNECTION] grpcChannelIsSecure: gRPC चैनल सुरक्षित है या नहीं.[CONNECTION] grpcChannelCredential: gRPC चैनल के क्रेडेंशियल.[CONNECTION] unaryMiddlewares: यूनेरी मिडलवेयर.[CONNECTION] streamingMiddlewares: स्ट्रीमिंग मिडलवेयर.[CONNECTION] grpcInterceptors: gRPC इंटरसेप्टर.
कॉन्फ़िगरेशन की पुष्टि करना
क्लाइंट को इंस्टैंशिएट करते समय, कॉन्फ़िगरेशन सेटिंग की जांच की जाती है. अगर सेटिंग अमान्य हैं, तो अपवाद थ्रो किए जाते हैं. यहां नियम दिए गए हैं:
- ऐप्लिकेशन मोड और सेवा खाता मोड, दोनों के लिए
[OAUTH2]फ़ील्ड एक साथ सेट नहीं किए जा सकते. - सेवा खाता मोड का इस्तेमाल करते समय,
[OAUTH2] jsonKeyFilePathऔर[OAUTH2] scopesसेट करना ज़रूरी है. - ऐप्लिकेशन मोड का इस्तेमाल करते समय,
[OAUTH2] clientId,[OAUTH2] clientSecret, और[OAUTH2] refreshTokenसेट करना ज़रूरी है. - अगर
[GOOGLE_ADS] loginCustomerIdऔर[GOOGLE_ADS] linkedCustomerIdसेट किए गए हैं, तो ये पॉज़िटिव संख्याएं होनी चाहिए. - अगर सेट किया गया है, तो
[CONNECTION] proxyएक मान्य यूआरएल होना चाहिए. फ़िल्टर FILTER_VALIDATE_URL देखें. - अगर सेट किया गया है, तो
[LOGGING] logLevelबड़े अक्षरों में लिखा गया कोई मान्य PSR लॉग लेवल होना चाहिए. जैसे,INFO. - अगर
[CONNECTION] transportसेट किया गया है, तो यहgrpcयाrestहोना चाहिए. - अगर
[CONNECTION] transportकोgrpcपर सेट किया गया है, तो एनवायरमेंट में gRPC ट्रांसपोर्ट की सुविधा होनी चाहिए. ट्रांसपोर्ट के बारे में गाइड देखें. - जब
[CONNECTION] transportकोgrpcपर सेट नहीं किया जाता है, तब[CONNECTION] grpcChannelIsSecureकी वैल्यूtrueहोनी चाहिए. [CONNECTION] grpcChannelCredentialको सिर्फ़ तब सेट किया जा सकता है, जब[CONNECTION] transportकोgrpcपर सेट किया गया हो.[CONNECTION] grpcChannelCredentialको सिर्फ़ तब सेट किया जा सकता है, जब[CONNECTION] grpcChannelIsSecureकी वैल्यूtrueहो.