एक से ज़्यादा उपयोगकर्ताओं के लिए पुष्टि करने के वर्कफ़्लो में, उपयोगकर्ताओं की पुष्टि करने के लिए अपना OAuth फ़्लो बनाया जाता है. Google Identity के दस्तावेज़ में, कई तरह के ऐप्लिकेशन के बारे में बताया गया है. साथ ही, Google Cloud Console प्रोजेक्ट के कॉन्फ़िगरेशन के बारे में भी बताया गया है, ताकि उस ऐप्लिकेशन टाइप को सपोर्ट किया जा सके. Google Ads API के साथ ये सभी ऐप्लिकेशन टाइप काम करते हैं. यहां दी गई तकनीकी जानकारी का भी ध्यान रखें:
Google Ads API को ऐक्सेस करने के लिए, आपको अपने ऐप्लिकेशन को इस स्कोप के लिए पुष्टि करने के लिए कॉन्फ़िगर करना होगा:
https://www.googleapis.com/auth/adwords
ऐसा हो सकता है कि उपयोगकर्ता के ऑफ़लाइन होने पर, आपके ऐप्लिकेशन को उसकी ओर से एपीआई कॉल करने पड़ें. खाते की मेट्रिक को ऑफ़लाइन डाउनलोड करने का एक सामान्य तरीका है. इससे रिपोर्ट जनरेट की जा सकती हैं और खाते का विश्लेषण किया जा सकता है. इसलिए, हमारा सुझाव है कि आप OAuth ऑफ़लाइन ऐक्सेस का अनुरोध करें.
आपको OAuth ऐप्लिकेशन की पुष्टि करने की प्रक्रिया पूरी करनी चाहिए और अपने ऐप्लिकेशन को सर्टिफ़िकेट पाना चाहिए.
क्लाइंट लाइब्रेरी का कॉन्फ़िगरेशन
उपयोगकर्ता को अनुमति देने और OAuth 2.0 क्रेडेंशियल पाने के बाद, क्लाइंट लाइब्रेरी को कॉन्फ़िगर किया जा सकता है. इसके लिए, अपनी प्रोग्रामिंग भाषा से जुड़े टैब पर दिए गए निर्देशों का पालन करें.
Java
आपके पास रनटाइम के दौरान, अपने GoogleAdsClient
इंस्टेंस को शुरू करने का विकल्प होता है. इसके लिए, आपको उन क्रेडेंशियल का इस्तेमाल करना होगा जो आपने उस उपयोगकर्ता से लिए हैं जिसके खातों के लिए आपको एपीआई कॉल करने हैं.
UserCredentials credentials =
UserCredentials.newBuilder()
.setClientId(OAUTH_CLIENT_ID)
.setClientSecret(OAUTH_CLIENT_SECRET)
.setRefreshToken(REFRESH_TOKEN)
.build();
// Creates a GoogleAdsClient with the provided credentials.
GoogleAdsClient client =
GoogleAdsClient.newBuilder()
// Sets the developer token which enables API access.
.setDeveloperToken(DEVELOPER_TOKEN)
// Sets the OAuth credentials which provide Google Ads account access.
.setCredentials(credentials)
// Optional: sets the login customer ID.
.setLoginCustomerId(Long.valueOf(LOGIN_CUSTOMER_ID))
.build();
``` See the [configuration guide][java-config-guide] for additional options.
.NET
आपके पास रनटाइम के दौरान, अपने GoogleAdsClient
इंस्टेंस को शुरू करने का विकल्प होता है. इसके लिए, आपको उन क्रेडेंशियल का इस्तेमाल करना होगा जो आपने उस उपयोगकर्ता से लिए हैं जिसके खातों के लिए आपको एपीआई कॉल करने हैं.
GoogleAdsConfig googleAdsConfig = new GoogleAdsConfig()
{
DeveloperToken = DEVELOPER_TOKEN,
LoginCustomerId = LOGIN_CUSTOMER_ID,
OAuth2ClientId = OAUTH_CLIENT_ID,
OAuth2ClientSecret = OAUTH_CLIENT_SECRET,
OAuth2RefreshToken = REFRESH_TOKEN,
};
GoogleAdsClient googleAdsClient = new GoogleAdsClient(googleAdsConfig);
अन्य विकल्पों के लिए, कॉन्फ़िगरेशन गाइड देखें.
Python
आपके पास रनटाइम के दौरान, अपने GoogleAdsClient
इंस्टेंस को शुरू करने का विकल्प होता है. इसके लिए, आपको उन क्रेडेंशियल का इस्तेमाल करना होगा जो आपने उस उपयोगकर्ता से लिए हैं जिसके खातों के लिए आपको एपीआई कॉल करने हैं.
from google.ads.googleads.client import GoogleAdsClient
credentials = {
"developer_token": "INSERT_DEVELOPER_TOKEN_HERE",
"login_customer_id": "INSERT_LOGIN_CUSTOMER_ID_HERE",
"refresh_token": "REFRESH_TOKEN",
"client_id": "OAUTH_CLIENT_ID",
"client_secret": "OAUTH_CLIENT_SECRET"}
client = GoogleAdsClient.load_from_dict(credentials)
अन्य विकल्पों के लिए, कॉन्फ़िगरेशन गाइड देखें.
PHP
आपके पास रनटाइम के दौरान, अपने GoogleAdsClient
इंस्टेंस को शुरू करने का विकल्प होता है. इसके लिए, आपको उन क्रेडेंशियल का इस्तेमाल करना होगा जो आपने उस उपयोगकर्ता से लिए हैं जिसके खातों के लिए आपको एपीआई कॉल करने हैं.
$oAuth2Credential = (new OAuth2TokenBuilder())
->withClientId('INSERT_CLIENT_ID_HERE')
->withClientSecret('INSERT_CLIENT_SECRET_HERE')
->withRefreshToken('INSERT_REFRESH_TOKEN_HERE')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
->withLoginCustomerId('INSERT_LOGIN_CUSTOMER_ID_HERE')
->build();
अन्य विकल्पों के लिए, कॉन्फ़िगरेशन गाइड देखें.
Ruby
आपके पास रनटाइम के दौरान, अपने GoogleAdsClient
इंस्टेंस को शुरू करने का विकल्प होता है. इसके लिए, आपको उन क्रेडेंशियल का इस्तेमाल करना होगा जो आपने उस उपयोगकर्ता से लिए हैं जिसके खातों के लिए आपको एपीआई कॉल करने हैं.
client = Google::Ads::GoogleAds::GoogleAdsClient.new do |config|
config.client_id = 'INSERT_CLIENT_ID_HERE'
config.client_secret = 'INSERT_CLIENT_SECRET_HERE'
config.refresh_token = 'INSERT_REFRESH_TOKEN_HERE'
config.login_customer_id = 'INSERT_LOGIN_CUSTOMER_ID_HERE'
config.developer_token = 'INSERT_DEVELOPER_TOKEN_HERE'
end
अन्य विकल्पों के लिए, कॉन्फ़िगरेशन गाइड देखें.
Perl
आपके पास रनटाइम के दौरान, अपने GoogleAdsClient
इंस्टेंस को शुरू करने का विकल्प होता है. इसके लिए, आपको उन क्रेडेंशियल का इस्तेमाल करना होगा जो आपने उस उपयोगकर्ता से लिए हैं जिसके खातों के लिए आपको एपीआई कॉल करने हैं.
my $api_client = Google::Ads::GoogleAds::Client->new({
developer_token => "INSERT_DEVELOPER_TOKEN_HERE",
login_customer_id => "INSERT_LOGIN_CUSTOMER_ID_HERE"
});
my $oauth2_applications_handler = $api_client->get_oauth2_applications_handler();
$oauth2_applications_handler->set_client_id("INSERT_CLIENT_ID");
$oauth2_applications_handler->set_client_secret("INSERT_CLIENT_SECRET");
$oauth2_applications_handler->set_refresh_token("INSERT_REFRESH_TOKEN");
अन्य विकल्पों के लिए, कॉन्फ़िगरेशन गाइड देखें.
curl
सबसे पहले, एचटीटीपी क्लाइंट का इस्तेमाल करके, OAuth 2.0 का ऐक्सेस टोकन फ़ेच करें. इस गाइड में curl
कमांड का इस्तेमाल किया गया है.
curl \
--data "grant_type=refresh_token" \
--data "client_id=CLIENT_ID" \
--data "client_secret=CLIENT_SECRET" \
--data "refresh_token=REFRESH_TOKEN" \
https://www.googleapis.com/oauth2/v3/token
अब अपने एपीआई कॉल में ऐक्सेस टोकन का इस्तेमाल किया जा सकता है. यहां दिए गए उदाहरण में बताया गया है कि GoogleAdsService.SearchStream
तरीके का इस्तेमाल करके, कैंपेन की रिपोर्ट कैसे जनरेट की जाती है. इस तरीके से, आपके खाते में मौजूद कैंपेन की जानकारी मिलती है. इस गाइड में, रिपोर्टिंग के बारे में जानकारी नहीं दी गई है.
curl -i -X POST https://googleads.googleapis.com/v21/customers/CUSTOMER_ID/googleAds:searchStream \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "developer-token: DEVELOPER_TOKEN" \
-H "login-customer-id: LOGIN_CUSTOMER_ID" \
--data-binary "@query.json"
query.json
में ये चीज़ें शामिल हैं:
{
"query": "SELECT campaign.id, campaign.name, campaign.network_settings.target_content_network FROM campaign ORDER BY campaign.id"
}