इस क्विकस्टार्ट गाइड की मदद से, Google Ads API को पहला एपीआई कॉल किया जा सकता है.
मुख्य सिद्धांत
- Google Cloud प्रोजेक्ट: Google Cloud प्रोजेक्ट, सभी Google सेवाएं बनाने, चालू करने, और उनका इस्तेमाल करने का आधार बनाता है. इनमें एपीआई और OAuth 2.0 API क्रेडेंशियल मैनेज करना शामिल है. Google Cloud Console में जाकर, एक बनाया जा सकता है.
- एपीआई ऐक्सेस लेवल: आपके Google Cloud प्रोजेक्ट का एपीआई ऐक्सेस लेवल यह तय करता है कि हर दिन कितने एपीआई कॉल किए जा सकते हैं. साथ ही, यह भी तय करता है कि किन एनवायरमेंट में एपीआई कॉल किए जा सकते हैं. आपके प्रोजेक्ट के एपीआई ऐक्सेस लेवल की जानकारी, आपके प्रोजेक्ट के Google Ads API के होम पेज पर दी गई है.
- Google Ads मैनेजर खाता: Google Ads मैनेजर खाते का इस्तेमाल, अन्य Google Ads खातों को मैनेज करने के लिए किया जाता है. ये Google Ads क्लाइंट खातों या अन्य Google Ads मैनेजर खातों का कलेक्शन हो सकता है.
- Google Ads क्लाइंट खाता: यह वह Google Ads खाता होता है जिसका इस्तेमाल विज्ञापन दिखाने के लिए किया जाता है. आपको एपीआई कॉल के ज़रिए इसी खाते को टारगेट करना होता है.
- क्लाइंट ग्राहक आईडी: यह 10 अंकों वाला वह नंबर होता है जिससे Google Ads क्लाइंट खाते की पहचान होती है. अगर आपने इस आईडी को Google Ads के यूज़र इंटरफ़ेस (यूआई) से कॉपी किया है, तो डैश हटाना न भूलें.
- OAuth 2.0: OAuth 2.0, अनुमति देने के लिए इंडस्ट्री-स्टैंडर्ड प्रोटोकॉल है. इसका इस्तेमाल सभी Google API करते हैं. एपीआई कॉल करने के लिए, आपको OAuth 2.0 क्रेडेंशियल जनरेट करने के लिए सेवा खाते और कुंजी की ज़रूरत होगी.
- सेवा खाता: यह एक खास तरह का Google खाता होता है. यह किसी व्यक्ति के बजाय, आपके ऐप्लिकेशन का होता है. इसका इस्तेमाल, Google Ads API से आपके ऐप्लिकेशन की पुष्टि करने के लिए किया जाता है. सेवा खाता पाने के लिए, आपके पास Google Cloud प्रोजेक्ट होना चाहिए.
- सेवा खाते की कुंजी: यह एक JSON ऐप्लिकेशन क्रेडेंशियल फ़ाइल होती है. इसमें आपके सेवा खाते के लिए निजी कुंजी होती है. इसका इस्तेमाल, Google Ads API को कॉल करते समय सेवा खाते की पुष्टि करने के लिए, OAuth 2.0 क्रेडेंशियल जनरेट करने के लिए किया जाता है. सेवा खाते की कुंजी पाने के लिए, आपके पास सेवा खाता होना ज़रूरी है.
ज़रूरी शर्तें
Google Ads API कॉल करने के लिए, आपको यह तरीका अपनाना होगा.
Google Ads API के ऐक्सेस के लिए, Cloud प्रोजेक्ट को कॉन्फ़िगर करना
Google Cloud प्रोजेक्ट का इस्तेमाल, Google API और OAuth 2.0 API क्रेडेंशियल को मैनेज करने के लिए किया जाता है. Google Cloud Console पर जाकर, अपने मौजूदा Google Cloud प्रोजेक्ट देखे जा सकते हैं या नया प्रोजेक्ट बनाया जा सकता है.
अपने प्रोजेक्ट में Google Ads API चालू करें:
इसके बाद, Google Ads API के होम पेज पर जाएं. इस पेज पर, एपीआई के लिए आपका मौजूदा ऐक्सेस लेवल दिखता है. अगर आपका मौजूदा एपीआई ऐक्सेस लेवल Test है, तो ऐक्सेस लेवल अपग्रेड करें सेक्शन को बड़ा करें. एक्सप्लोरर ऐक्सेस लेवल के लिए आवेदन करने के लिए, दिए गए निर्देशों का पालन करें.
आवेदन पूरा करने के बाद, Google आपके आवेदन की अपने-आप समीक्षा करेगा. साथ ही, ज़्यादातर मामलों में इसे एक्सप्लोरर में अपग्रेड कर देगा. अगर आपको एक्सप्लोरर का ऐक्सेस नहीं दिया गया है, तो चिंता न करें. Google Ads क्लाइंट खाता कॉन्फ़िगर करते समय, यह गाइड आपको सही निर्देश देगी.
सेवा खाता बनाना
एपीआई कॉल करने के लिए, आपके पास सेवा खाता और सेवा खाता कुंजी होनी चाहिए. अगर पहले से ही किसी अन्य Google API का इस्तेमाल किया जा रहा है और आपने OAuth 2.0 सेवा खाता और कुंजी बना ली है, तो इस चरण को छोड़कर मौजूदा क्रेडेंशियल का फिर से इस्तेमाल किया जा सकता है.
सेवा खाता और कुंजी बनाने का तरीका
- Google Cloud console में, मेन्यू > आईएएम और एडमिन > सेवा खाते पर जाएं.
- अपना सेवा खाता चुनें.
- कुंजियां > कुंजी जोड़ें > नई कुंजी बनाएं पर क्लिक करें.
- JSON को चुनें. इसके बाद, बनाएं पर क्लिक करें.
आपका नया सार्वजनिक/निजी पासकोड का जोड़ा जनरेट करके आपकी मशीन पर एक नई फ़ाइल के तौर पर डाउनलोड किया जाता है. डाउनलोड की गई JSON फ़ाइल को अपनी वर्किंग डायरेक्ट्री में
credentials.jsonके तौर पर सेव करें. यह फ़ाइल, इस कुंजी की सिर्फ़ एक कॉपी है.credentials.jsonको वर्शन कंट्रोल में शामिल न करें. उदाहरण के लिए, इसे अपनी.gitignoreफ़ाइल में न जोड़ें. - बंद करें पर क्लिक करें.
अपने Google Ads क्लाइंट खाते को कॉन्फ़िगर करना
सबसे पहले, उस Google Ads खाते की पहचान करें जिसके लिए आपको एपीआई कॉल करने हैं. एपीआई कॉल करने के लिए इस्तेमाल किए जाने वाले खाते का टाइप, आपके Google Cloud प्रोजेक्ट के एपीआई ऐक्सेस लेवल पर निर्भर करता है. एपीआई के ऐक्सेस का लेवल जानने के लिए, Google Ads API के होम पेज पर जाएं.
एक्सप्लोरर, बेसिक, और स्टैंडर्ड ऐक्सेस लेवल
Google Ads के प्रोडक्शन खाते से कॉल किए जा सकते हैं. हालांकि, अगर आपको ज़रूरत है, तो टेस्ट ऐक्सेस टैब पर दिए गए निर्देशों का पालन करके, Google Ads का टेस्ट खाता बनाया जा सकता है.
टेस्ट ऐक्सेस
आपके Google Cloud प्रोजेक्ट का इस्तेमाल, Google Ads प्रोडक्शन खाते में एपीआई कॉल करने के लिए नहीं किया जा सकता. एपीआई कॉल सिर्फ़ Google Ads के टेस्ट खातों के लिए किए जा सकते हैं.
Google Ads का टेस्ट खाता बनाने का तरीका
यहां दिए गए निर्देशों का पालन करके, Google Ads का टेस्ट मैनेजर खाता और उसके नीचे Google Ads का टेस्ट विज्ञापन देने वाला खाता बनाया जा सकता है.
Google Ads का टेस्ट मैनेजर खाता बनाने के लिए, नीले बटन पर क्लिक करें. अगर कहा जाए, तो उस Google खाते से साइन इन करें जो आपके Google Ads प्रोडक्शन मैनेजर खाते से लिंक नहीं है. अगर आपके पास Google खाता नहीं है, तो उस पेज पर मौजूद खाता बनाएं बटन का इस्तेमाल करके, नया Google खाता बनाएं.
- अपने Google Ads टेस्ट मैनेजर खाते में, Google Ads टेस्ट ग्राहक खाता बनाएं: खाते > > नया खाता बनाएं पर क्लिक करें और फ़ॉर्म भरें. Google Ads के टेस्ट मैनेजर खाते से बनाए गए सभी Google Ads खाते, Google Ads के टेस्ट खाते होते हैं.
- विकल्प के तौर पर, Google Ads पेज से Google Ads के टेस्ट क्लाइंट खाते में कुछ कैंपेन बनाएं.
Google Ads ग्राहक खाते में एपीआई कॉल करने के लिए, आपको अपने सेवा खाते को Google Ads ग्राहक खाते का ऐक्सेस देना होगा. साथ ही, ज़रूरी अनुमतियां देनी होंगी. इसके लिए, आपके पास ग्राहक खाते का एडमिन ऐक्सेस होना चाहिए.
सेवा खाते को अपने Google Ads खाते का ऐक्सेस देने का तरीका
- सबसे पहले, एडमिन के तौर पर अपने Google Ads खाते में साइन इन करें.
- एडमिन > ऐक्सेस और सुरक्षा पर जाएं.
- उपयोगकर्ता टैब में जाकर,
बटन पर क्लिक करें.
- ईमेल इनपुट बॉक्स में, सेवा खाते का ईमेल पता टाइप करें.
खाते का सही ऐक्सेस लेवल चुनें. इसके बाद, खाता जोड़ें बटन पर क्लिक करें. ध्यान दें कि सेवा खातों के लिए, ईमेल ऐक्सेस लेवल काम नहीं करता.
- सेवा खाते को ऐक्सेस दिया गया हो.
- [ज़रूरी नहीं] शुरुआती सेटअप के दौरान, किसी सेवा खाते को एडमिन ऐक्सेस नहीं दिया जा सकता. अगर आपके एपीआई कॉल के लिए एडमिन के ऐक्सेस की ज़रूरत है, तो ऐक्सेस को इस तरह अपग्रेड किया जा सकता है.
- ऐक्सेस लेवल कॉलम में, सेवा खाते के ऐक्सेस लेवल के बगल में मौजूद ड्रॉप-डाउन ऐरो पर क्लिक करें.
- ड्रॉप-डाउन सूची से एडमिन चुनें.
टूल और क्लाइंट लाइब्रेरी डाउनलोड करना
आपके पास क्लाइंट लाइब्रेरी या एचटीटीपी क्लाइंट डाउनलोड करने का विकल्प होता है. यह इस बात पर निर्भर करता है कि आपको एपीआई कॉल कैसे करने हैं.
क्लाइंट लाइब्रेरी का इस्तेमाल करना
अपनी पसंद की क्लाइंट लाइब्रेरी डाउनलोड और इंस्टॉल करें.
एचटीटीपी क्लाइंट (REST) का इस्तेमाल करना
curl
यूआरएल के ज़रिए डेटा ट्रांसफ़र करने के लिए, कमांड लाइन टूल curl डाउनलोड और इंस्टॉल करें.
Google Cloud का कमांड-लाइन इंटरफ़ेस
gcloud सीएलआई इंस्टॉल करने के लिए, Google Cloud CLI को इंस्टॉल करने से जुड़ी गाइड में दिए गए निर्देशों का पालन करें.
इस गाइड में दिए गए बाकी निर्देशों की पुष्टि की गई है कि वे gcloud टूल के इस वर्शन के साथ काम करते हैं. ऐसा हो सकता है कि ये निर्देश, पिछले वर्शन के साथ काम न करें. इसकी वजह यह है कि ऐप्लिकेशन के व्यवहार या कमांड-लाइन विकल्पों में अंतर होता है.
:~$ gcloud version
Google Cloud SDK 492.0.0
alpha 2024.09.06
beta 2024.09.06
bq 2.1.8
bundled-python3-unix 3.11.9
core 2024.09.06
enterprise-certificate-proxy 0.3.2
gcloud-crc32c 1.0.0
gsutil 5.30एपीआई कॉल करना
एपीआई कॉल करने का तरीका जानने के लिए, अपनी पसंद का क्लाइंट चुनें:
Java
क्लाइंट लाइब्रेरी के आर्टफ़ैक्ट, Maven Central रिपॉज़िटरी में पब्लिश किए जाते हैं.
डिपेंडेंसी के वर्शन मैनेज करने और टकरावों को रोकने के लिए, Google Ads API के बिल ऑफ़ मटीरियल (बीओएम) से जुड़ी गाइड देखें.
अगर बीओएम का इस्तेमाल नहीं किया जा रहा है, तो यहां दिए गए किसी एक बिल्ड टूल का इस्तेमाल करके, क्लाइंट लाइब्रेरी को सीधे अपने प्रोजेक्ट में जोड़ें:
Maven: अपनी pom.xml फ़ाइल में यह डिपेंडेंसी जोड़ें:
<dependency>
<groupId>com.google.api-ads</groupId>
<artifactId>google-ads</artifactId>
<version>47.0.0</version>
</dependency>
Gradle: अपनी build.gradle फ़ाइल में यह डिपेंडेंसी जोड़ें:
implementation 'com.google.api-ads:google-ads:47.0.0'
अपनी होम डायरेक्ट्री में, यहां दिए गए कॉन्टेंट के साथ ads.properties फ़ाइल बनाएं (Linux और macOS पर ~/ads.properties या Windows पर %USERPROFILE%\ads.properties):
api.googleads.serviceAccountSecretsPath=JSON_KEY_FILE_PATH
api.googleads.loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE
एपीआई अनुरोध चलाने से पहले, GoogleAdsClient इंस्टेंस बनाएं. डिफ़ॉल्ट रूप से, fromPropertiesFile() आपकी होम डायरेक्ट्री में मौजूद ads.properties फ़ाइल से क्रेडेंशियल लोड करता है:
GoogleAdsClient googleAdsClient;
try {
googleAdsClient = GoogleAdsClient.newBuilder().fromPropertiesFile().build();
} catch (IOException e) {
System.err.printf("Failed to create GoogleAdsClient: %s%n", e);
throw new RuntimeException("Initialization failed", e);
}
इसके बाद, GoogleAdsService.SearchStream का इस्तेमाल करके कैंपेन रिपोर्ट जनरेट करें. इससे बड़े नतीजे के सेट को आसानी से स्ट्रीम किया जा सकता है. साथ ही, अपने खाते में मौजूद कैंपेन को वापस पाया जा सकता है:
private void runExample(GoogleAdsClient googleAdsClient, long customerId) {
try (GoogleAdsServiceClient googleAdsServiceClient =
googleAdsClient.getLatestVersion().createGoogleAdsServiceClient()) {
String query = "SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id";
// Constructs the SearchGoogleAdsStreamRequest.
SearchGoogleAdsStreamRequest request =
SearchGoogleAdsStreamRequest.newBuilder()
.setCustomerId(Long.toString(customerId))
.setQuery(query)
.build();
// Creates and issues a search Google Ads stream request that will retrieve all campaigns.
ServerStream<SearchGoogleAdsStreamResponse> stream =
googleAdsServiceClient.searchStreamCallable().call(request);
// Iterates through and prints all of the results in the stream response.
for (SearchGoogleAdsStreamResponse response : stream) {
for (GoogleAdsRow googleAdsRow : response.getResultsList()) {
System.out.printf(
"Campaign with ID %d and name '%s' was found.%n",
googleAdsRow.getCampaign().getId(), googleAdsRow.getCampaign().getName());
}
}
}
}
C#
क्लाइंट लाइब्रेरी पैकेज, NuGet.org रिपॉज़िटरी पर पब्लिश किए जाते हैं.
Google.Ads.GoogleAds पैकेज में NuGet पैकेज का रेफ़रंस जोड़कर शुरू करें:
dotnet add package Google.Ads.GoogleAds --version 27.4.0एपीआई कॉल करने के लिए, अपनी कॉन्फ़िगरेशन सेटिंग (जैसे कि appsettings.json, एनवायरमेंट वैरिएबल या कस्टम सेटिंग) से GoogleAdsConfig ऑब्जेक्ट बनाएं. इसके बाद, GoogleAdsClient इंस्टेंस को शुरू करने के लिए इसे पास करें:
GoogleAdsConfig config = new GoogleAdsConfig()
{
OAuth2Mode = OAuth2Flow.SERVICE_ACCOUNT,
OAuth2SecretsJsonPath = "JSON_KEY_FILE_PATH",
LoginCustomerId = "INSERT_LOGIN_CUSTOMER_ID_HERE"
};
GoogleAdsClient client = new GoogleAdsClient(config);
इसके बाद, GoogleAdsService.SearchStream तरीके का इस्तेमाल करके, कैंपेन की रिपोर्ट जनरेट करें. इससे आपके खाते में मौजूद कैंपेन को वापस लाया जा सकेगा. इस गाइड में, शिकायत करने के बारे में जानकारी नहीं दी गई है.
public void Run(GoogleAdsClient client, long customerId)
{
// Get the GoogleAdsService.
GoogleAdsServiceClient googleAdsService = client.GetService(
Services.V25.GoogleAdsService);
// Create a query that will retrieve all campaigns.
string query = @"SELECT
campaign.id,
campaign.name,
campaign.network_settings.target_content_network
FROM campaign
ORDER BY campaign.id";
try
{
// Issue a search request.
googleAdsService.SearchStream(customerId.ToString(), query,
delegate (SearchGoogleAdsStreamResponse resp)
{
foreach (GoogleAdsRow googleAdsRow in resp.Results)
{
Console.WriteLine("Campaign with ID {0} and name '{1}' was found.",
googleAdsRow.Campaign.Id, googleAdsRow.Campaign.Name);
}
}
);
}
catch (GoogleAdsException e)
{
Console.WriteLine("Failure:");
Console.WriteLine($"Message: {e.Message}");
Console.WriteLine($"Failure: {e.Failure}");
Console.WriteLine($"Request ID: {e.RequestId}");
throw;
}
}
PHP
क्लाइंट लाइब्रेरी के पैकेज, Packagist repository पर पब्लिश किए जाते हैं.
पक्का करें कि आपके पास PHP का ऐसा वर्शन हो जो इस लाइब्रेरी के साथ काम करता हो और Composer इंस्टॉल हो. इसके बाद, अपने प्रोजेक्ट की रूट डायरेक्ट्री में जाएं और लाइब्रेरी और उससे जुड़ी ज़रूरी फ़ाइलें इंस्टॉल करने के लिए, यहां दिया गया निर्देश चलाएं. ये फ़ाइलें, आपके प्रोजेक्ट की vendor/ डायरेक्ट्री में इंस्टॉल होंगी:
composer require googleads/google-ads-php:35.1.0GitHub रिपॉज़िटरी से google_ads_php.ini फ़ाइल की कॉपी बनाएं. इसे अपनी होम डायरेक्ट्री या प्रोजेक्ट की रूट डायरेक्ट्री में सेव करें. इसके बाद, इसमें अपने क्रेडेंशियल शामिल करने के लिए बदलाव करें:
[GOOGLE_ADS]
loginCustomerId = "INSERT_LOGIN_CUSTOMER_ID_HERE"
[OAUTH2]
jsonKeyFilePath = "JSON_KEY_FILE_PATH"
scopes = "https://www.googleapis.com/auth/adwords"
अपनी google_ads_php.ini कॉन्फ़िगरेशन फ़ाइल का इस्तेमाल करके, GoogleAdsClient इंस्टेंस बनाएं:
use Google\Ads\GoogleAds\Lib\OAuth2TokenBuilder;
use Google\Ads\GoogleAds\Lib\V25\GoogleAdsClientBuilder;
$oauth2Credential = (new OAuth2TokenBuilder())
->fromFile('/path/to/google_ads_php.ini')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile('/path/to/google_ads_php.ini')
->withOAuth2Credential($oauth2Credential)
->build();
इसके बाद, अपने खाते में कैंपेन वापस पाने के लिए, GoogleAdsService.SearchStream तरीके का इस्तेमाल करके कैंपेन रिपोर्ट जनरेट करें:
public static function runExample(GoogleAdsClient $googleAdsClient, int $customerId)
{
$googleAdsServiceClient = $googleAdsClient->getGoogleAdsServiceClient();
// Creates a query that retrieves all campaigns.
$query = 'SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id';
// Issues a search stream request.
/** @var GoogleAdsServerStreamDecorator $stream */
$stream = $googleAdsServiceClient->searchStream(
SearchGoogleAdsStreamRequest::build($customerId, $query)
);
// Iterates over all rows in all messages and prints the requested field values for
// the campaign in each row.
foreach ($stream->iterateAllElements() as $googleAdsRow) {
/** @var GoogleAdsRow $googleAdsRow */
printf(
"Campaign with ID %d and name '%s' was found.%s",
$googleAdsRow->getCampaign()->getId(),
$googleAdsRow->getCampaign()->getName(),
PHP_EOL
);
}
}
Python
Python के लिए Google Ads API क्लाइंट लाइब्रेरी, PyPI पर उपलब्ध है. पक्का करें कि आपने Python का ऐसा वर्शन इंस्टॉल किया हो जिस पर यह लाइब्रेरी काम करती है. इसके बाद, pip का इस्तेमाल करके लाइब्रेरी इंस्टॉल करें:
python -m pip install google-ads==33.0.0अपने एपीआई कॉल की पुष्टि करने के लिए, google-ads.yaml फ़ाइल कॉन्फ़िगर करें:
- GitHub रिपॉज़िटरी से, सैंपल
google-ads.yamlफ़ाइल की कॉपी डाउनलोड करें. - फ़ाइल को अपनी होम डायरेक्ट्री (
~/google-ads.yaml) या कस्टम पाथ में सेव करें. google-ads.yamlखोलें और अपने क्रेडेंशियल शामिल करने के लिए इसे अपडेट करें:login_customer_id: INSERT_LOGIN_CUSTOMER_ID_HERE json_key_file_path: JSON_KEY_FILE_PATHक्लाइंट को शुरू करने से पहले लॉगिंग को कॉन्फ़िगर करें, ताकि लाइब्रेरी, शुरू करने या कॉन्फ़िगरेशन से जुड़ी किसी भी चेतावनी को कैप्चर कर सके. यहां दिए गए उदाहरण में, लाइब्रेरी के लॉगर को कॉन्फ़िगर किया गया है, ताकि वह
INFOलॉग को स्टैंडर्ड आउटपुट (stdout) पर दिखा सके:
import logging
import sys
logger = logging.getLogger("google.ads.googleads.client")
logger.setLevel(logging.INFO)
logger.addHandler(logging.StreamHandler(sys.stdout))
GoogleAdsClient.load_from_storage तरीके को कॉल करके, GoogleAdsClient इंस्टेंस बनाएं और अपनी google-ads.yaml फ़ाइल का पाथ पास करें:
from google.ads.googleads.client import GoogleAdsClient
client = GoogleAdsClient.load_from_storage("path/to/google-ads.yaml")
पाथ आर्ग्युमेंट को शामिल न करने पर, load_from_storage() डिफ़ॉल्ट रूप से आपकी होम डायरेक्ट्री (~/google-ads.yaml) में कॉन्फ़िगरेशन फ़ाइल खोजता है.
इसके बाद, अपने खाते में कैंपेन वापस पाने के लिए, GoogleAdsService.SearchStream तरीके का इस्तेमाल करके कैंपेन रिपोर्ट जनरेट करें:
def main(client: GoogleAdsClient, customer_id: str) -> None:
ga_service: GoogleAdsServiceClient = client.get_service("GoogleAdsService")
query: str = """
SELECT
campaign.id,
campaign.name
FROM campaign
ORDER BY campaign.id"""
# Issues a search request using streaming.
stream: Iterator[SearchGoogleAdsStreamResponse] = ga_service.search_stream(
customer_id=customer_id, query=query
)
for batch in stream:
rows: List[GoogleAdsRow] = batch.results
for row in rows:
print(
f"Campaign with ID {row.campaign.id} and name "
f'"{row.campaign.name}" was found.'
)
Ruby
क्लाइंट लाइब्रेरी के लिए Ruby gems, RubyGems पर पब्लिश किए जाते हैं. पक्का करें कि आपने Ruby का ऐसा वर्शन इंस्टॉल किया हो जिस पर यह लाइब्रेरी काम करती है. साथ ही, लाइब्रेरी को इंस्टॉल करने के लिए Bundler का इस्तेमाल करें:
अपने ऐप्लिकेशन के
Gemfileमें यह gem जोड़ें:gem 'google-ads-googleads', '~> 45.1.0'इस कमांड को चलाकर, gem इंस्टॉल करें:
bundle install
अपने क्रेडेंशियल कॉन्फ़िगर करने के लिए:
- GitHub रिपॉज़िटरी से, सैंपल
google_ads_config.rbफ़ाइल कॉपी करें. - फ़ाइल को अपने प्रोजेक्ट की रूट डायरेक्ट्री या होम डायरेक्ट्री (
~) में सेव करें. google_ads_config.rbखोलें और प्लेसहोल्डर वैल्यू को अपने Google Ads API क्रेडेंशियल से बदलें:Google::Ads::GoogleAds::Config.new do |c| c.login_customer_id = 'INSERT_LOGIN_CUSTOMER_ID_HERE' c.keyfile = 'JSON_KEY_FILE_PATH' endअपनी कॉन्फ़िगरेशन फ़ाइल (
google_ads_config.rb) का पाथ पास करके,GoogleAdsClientइंस्टेंस बनाएं:
client = Google::Ads::GoogleAds::GoogleAdsClient.new(
'path/to/google_ads_config.rb'
)
इसके बाद, अपने खाते में कैंपेन वापस पाने के लिए, GoogleAdsService.SearchStream तरीके का इस्तेमाल करके कैंपेन रिपोर्ट जनरेट करें:
def get_campaigns(customer_id)
# GoogleAdsClient will read a config file from
# ENV['HOME']/google_ads_config.rb when called without parameters
client = Google::Ads::GoogleAds::GoogleAdsClient.new
responses = client.service.google_ads.search_stream(
customer_id: customer_id,
query: 'SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id',
)
responses.each do |response|
response.results.each do |row|
puts "Campaign with ID #{row.campaign.id} and name '#{row.campaign.name}' was found."
end
end
end
Perl
Perl क्लाइंट लाइब्रेरी, CPAN पर उपलब्ध है. इसके लिए, Perl 5.28 या इसके बाद का वर्शन और cpan या cpanm पैकेज मैनेजर ज़रूरी है.
अपनी पसंद की डायरेक्ट्री में
google-ads-perlरिपॉज़िटरी को क्लोन करें:git clone https://github.com/googleads/google-ads-perl.gitgoogle-ads-perlडायरेक्ट्री में जाएं और ज़रूरी डिपेंडेंसी इंस्टॉल करने और लाइब्रेरी बनाने के लिए, यहां दी गई कमांड चलाएं:cd google-ads-perl cpan install Module::Build perl Build.PL perl Build installdeps perl Build perl Build install
अपने क्रेडेंशियल कॉन्फ़िगर करने के लिए:
GitHub रिपॉज़िटरी से, सैंपल
googleads.propertiesकॉन्फ़िगरेशन फ़ाइल को अपनी होम डायरेक्ट्री (~/googleads.properties) में कॉपी करें:cp googleads.properties ~/googleads.propertiesअपने क्रेडेंशियल शामिल करने के लिए,
~/googleads.propertiesमें बदलाव करें:jsonKeyFilePath=JSON_KEY_FILE_PATH loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HEREकॉन्फ़िगर की गई
googleads.propertiesफ़ाइल (जैसे कि~/googleads.properties) का पाथ पास करके,Clientइंस्टेंस बनाएं:
my $api_client = Google::Ads::GoogleAds::Client->new({
properties_file => "/path/to/googleads.properties"
});
इसके बाद, अपने खाते में कैंपेन वापस पाने के लिए, GoogleAdsService.SearchStream तरीके का इस्तेमाल करके कैंपेन रिपोर्ट जनरेट करें:
sub get_campaigns {
my ($api_client, $customer_id) = @_;
# Create a search Google Ads stream request that will retrieve all campaigns.
my $search_stream_request =
Google::Ads::GoogleAds::V25::Services::GoogleAdsService::SearchGoogleAdsStreamRequest
->new({
customerId => $customer_id,
query =>
"SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id"
});
# Get the GoogleAdsService.
my $google_ads_service = $api_client->GoogleAdsService();
my $search_stream_handler =
Google::Ads::GoogleAds::Utils::SearchStreamHandler->new({
service => $google_ads_service,
request => $search_stream_request
});
# Issue a search request and process the stream response to print the requested
# field values for the campaign in each row.
$search_stream_handler->process_contents(
sub {
my $google_ads_row = shift;
printf "Campaign with ID %d and name '%s' was found.\n",
$google_ads_row->{campaign}{id}, $google_ads_row->{campaign}{name};
});
return 1;
}
इस स्क्रिप्ट को चलाने पर, यह मैच करने वाली लाइनों को स्ट्रीम करती है. साथ ही, आपके खाते में मौजूद हर कैंपेन का आईडी और नाम प्रिंट करती है.
curl
सबसे पहले, सेवा खाते को gcloud CLI में चालू क्रेडेंशियल के तौर पर सेट करें.
gcloud auth login --cred-file=JSON_KEY_FILE_PATHइसके बाद, Google Ads API के लिए OAuth 2.0 का ऐक्सेस टोकन फ़ेच करें.
gcloud auth \
print-access-token \
--scopes='https://www.googleapis.com/auth/adwords'query.json नाम की एक फ़ाइल बनाएं. इसमें Google Ads क्वेरी लैंग्वेज (GAQL) का अनुरोध शामिल करें:
{
"query": "SELECT campaign.id, campaign.name, campaign.network_settings.target_content_network FROM campaign ORDER BY campaign.id"
}
अपने खाते में कैंपेन वापस पाने के लिए, GoogleAdsService.SearchStream तरीके का इस्तेमाल करके कैंपेन रिपोर्ट जनरेट करें:
curl -i -X POST \
https://googleads.googleapis.com/v25/customers/CUSTOMER_ID/googleAds:searchStream \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "login-customer-id: LOGIN_CUSTOMER_ID" \
--data-binary "@query.json"अगर आपको पहला कॉल करते समय गड़बड़ियों का सामना करना पड़ता है, तो गड़बड़ी ठीक करने के बारे में दिशा-निर्देश पाने के लिए, एपीआई से जुड़ी गड़बड़ियों को ठीक करना लेख पढ़ें.