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)
->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
// ...
->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] developerToken: एपीआई को ऐक्सेस करने के लिए आपका डेवलपर टोकन.[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] developerTokenको हमेशा सेट किया जाना चाहिए.- अगर सेट किया गया है, तो
[GOOGLE_ADS] loginCustomerIdऔर[GOOGLE_ADS] linkedCustomerIdपॉज़िटिव संख्याएं होनी चाहिए. - अगर यह नीति सेट की जाती है, तो
[CONNECTION] proxyएक मान्य यूआरएल होना चाहिए (फ़िल्टर देखें FILTER_VALIDATE_URL). - अगर सेट है, तो
[LOGGING] logLevelको बड़े अक्षरों में लिखा गया मान्य पीएसआर लॉग लेवल होना चाहिए, जैसे किINFO. - अगर यह नीति सेट है, तो
[CONNECTION] transport,grpcयाrestहोना चाहिए. - अगर
[CONNECTION] transportकोgrpcपर सेट किया गया है, तो gRPC ट्रांसपोर्ट भी एनवायरमेंट के हिसाब से होना चाहिए. गाइड ट्रांसपोर्ट देखें. - जब
[CONNECTION] transportकोgrpcपर सेट न किया गया हो, तो[CONNECTION] grpcChannelIsSecureकोtrueपर सेट किया जाना चाहिए. [CONNECTION] grpcChannelCredentialको सिर्फ़ तब सेट किया जा सकता है, जब[CONNECTION] transportकोgrpcपर सेट किया गया हो.[CONNECTION] grpcChannelCredentialको सिर्फ़ तब सेट किया जा सकता है, जब[CONNECTION] grpcChannelIsSecuretrueहो.