इवेंट डेटा भेजने के बारे में जानने के लिए, इस क्विकस्टार्ट गाइड को पढ़ें.
इनमें से किसी भी स्थिति में, Data Manager API का इस्तेमाल करें:
ऑनलाइन इवेंट: इवेंट डेटा को अपने टैग कन्वर्ज़न के लिए अतिरिक्त डेटा सोर्स के तौर पर भेजें. इससे विज्ञापन इंटरैक्शन सिग्नल को ज़्यादा से ज़्यादा किया जा सकेगा. साथ ही, आपके डेटा और परफ़ॉर्मेंस को बेहतर बनाया जा सकेगा.
ऑफ़लाइन इवेंट: ऑफ़लाइन कन्वर्ज़न या लीड के लिए बेहतर कन्वर्ज़न ट्रैकिंग के लिए, इवेंट का डेटा भेजें.
गाइड का वह वर्शन चुनें जिसे आपको देखना है:
इस क्विकस्टार्ट में, आपको ये काम करने हैं:
- इवेंट डेटा पाने के लिए,
Destination
तैयार करें. - भेजने के लिए इवेंट डेटा तैयार करें.
- इवेंट के लिए
IngestionService
अनुरोध बनाएं. - Google APIs Explorer की मदद से अनुरोध भेजें.
- सफल और असफल जवाबों को समझें.
डेस्टिनेशन तैयार करना
डेटा भेजने से पहले, आपको डेस्टिनेशन तैयार करना होगा, ताकि डेटा भेजा जा सके. यहां आपके इस्तेमाल के लिए, Destination
का एक सैंपल दिया गया है:
{
"operatingAccount": {
"product": "GOOGLE_ADS",
"accountId": "OPERATING_ACCOUNT_ID"
},
"productDestinationId": "CONVERSION_ACTION_1_ID"
}
accountId
केoperatingAccount
को उस Google Ads खाते के आईडी पर सेट करें जिसे इवेंट डेटा मिलेगा.operatingAccount
काproduct
,GOOGLE_ADS
होना चाहिए.productDestinationId
को इवेंट के लिए कन्वर्ज़न ऐक्शन के आईडी पर सेट करें. ऑनलाइन इवेंट के लिए, कन्वर्ज़न ऐक्शन, Google Ads कन्वर्ज़न ऐक्शन होना चाहिए. साथ ही,type
कोWEBPAGE
पर सेट किया जाना चाहिए. ऑफ़लाइन इवेंट के लिए, कन्वर्ज़न ऐक्शन ऐसा Google Ads कन्वर्ज़न ऐक्शन होना चाहिए जिसमेंtype
कोUPLOAD_CLICKS
पर सेट किया गया हो.इस गाइड में, ऐसा अनुरोध बनाने का तरीका बताया गया है जो हर इवेंट को एक ही कन्वर्ज़न ऐक्शन पर भेजता है. अगर आपको एक ही अनुरोध में, कई कन्वर्ज़न ऐक्शन के लिए इवेंट भेजने हैं, तो एक से ज़्यादा डेस्टिनेशन लेख पढ़ें.
इवेंट डेटा तैयार करना
यहां दिए गए इवेंट डेटा पर ध्यान दें. हर टेबल, एक कन्वर्ज़न इवेंट से जुड़ी होती है. हर कन्वर्ज़न इवेंट में, इवेंट का टाइमस्टैंप, उसका कन्वर्ज़न ऐक्शन, और कन्वर्ज़न वैल्यू होती है.
हर इवेंट में विज्ञापन आइडेंटिफ़ायर हो सकते हैं, जैसे कि gclid
. इसके अलावा, उपयोगकर्ता आइडेंटिफ़ायर भी हो सकते हैं, जैसे कि ईमेल पते, फ़ोन नंबर, और पते की जानकारी. किसी इवेंट में, इवेंट के समय उपयोगकर्ता के बारे में जानकारी भी हो सकती है. जैसे, ग्राहक की वैल्यू या वह नया, लौटा हुआ या फिर से जुड़ा हुआ ग्राहक है या नहीं.
यहां पहले इवेंट का डेटा दिया गया है:
इवेंट #1 | |
---|---|
conversion_time |
2025-06-10 15:07:01-05:00 |
conversion_action_id |
123456789 |
transaction_id |
ABC798654321 |
conversion_value |
1.99 |
currency |
USD |
gclid |
GCLID_1 |
emails |
|
given_name |
John |
family_name |
Smith-Jones |
region_code |
us |
postal_code |
94045 |
customer_type |
NEW |
customer_value_bucket |
HIGH |
यहां दूसरे इवेंट का डेटा दिया गया है:
इवेंट #2 | |
---|---|
conversion_time |
June 10, 2025 11:42:33PM America/New_York |
conversion_action_id |
123456789 |
transaction_id |
DEF999911111 |
conversion_value |
3.25 |
currency |
eur |
gclid |
GCLID_2 |
emails |
|
given_name |
zoë |
family_name |
pérez |
region_code |
PT |
postal_code |
1229-076 |
customer_type |
RETURNING |
डेटा को फ़ॉर्मैट करना
फ़ॉर्मैटिंग गाइड में दिए गए निर्देशों के मुताबिक, फ़ील्ड को फ़ॉर्मैट करें. फ़ॉर्मैट करने के बाद, पहले इवेंट का डेटा यहां दिया गया है:
इवेंट #1 | |
---|---|
conversion_time |
2025-06-10 15:07:01-05:00 |
conversion_action_id |
123456789 |
transaction_id |
ABC798654321 |
conversion_value |
1.99 |
currency |
USD |
gclid |
GCLID_1 |
emails |
|
given_name |
john |
family_name |
smith-jones |
region_code |
US |
postal_code |
94045 |
customer_type |
NEW |
customer_value_bucket |
HIGH |
यहां फ़ॉर्मैट करने के बाद, दूसरे इवेंट का डेटा दिया गया है:
इवेंट #2 | |
---|---|
conversion_time |
2025-06-10T23:42:33-05:00 |
conversion_action_id |
123456789 |
transaction_id |
DEF999911111 |
conversion_value |
3.25 |
currency |
EUR |
gclid |
GCLID_2 |
emails |
|
given_name |
zoë |
family_name |
pérez |
region_code |
PT |
postal_code |
1229-076 |
customer_type |
RETURNING |
डेटा को हैश और एन्कोड करना
इसके अलावा, फ़ॉर्मैट किए गए ईमेल पतों, नामों, और उपनामों को SHA-256 एल्गोरिदम का इस्तेमाल करके हैश किया जाना चाहिए. साथ ही, उन्हें हेक्स या Base64 एन्कोडिंग का इस्तेमाल करके कोड में बदला जाना चाहिए. यहां हेक्स कोडिंग का इस्तेमाल करके, फ़ॉर्मैट करने, हैश करने, और कोड में बदलने के बाद पहले इवेंट का डेटा दिया गया है:
इवेंट #1 | |
---|---|
conversion_time |
2025-06-10 15:07:01-05:00 |
conversion_action_id |
123456789 |
transaction_id |
ABC798654321 |
conversion_value |
1.99 |
currency |
USD |
gclid |
GCLID_1 |
emails |
|
given_name |
96D9632F363564CC3032521409CF22A852F2032EEC099ED5967C0D000CEC607A |
family_name |
DB98D2607EFFFA28AFF66975868BF54C075ECA7157E35064DCE08E20B85B1081 |
region_code |
US |
postal_code |
94045 |
customer_type |
NEW |
customer_value_bucket |
HIGH |
यहां हेक्स कोडिंग का इस्तेमाल करके, फ़ॉर्मैट करने, हैश करने, और कोड में बदलने के बाद दूसरे इवेंट का डेटा दिया गया है:
इवेंट #2 | |
---|---|
conversion_time |
2025-06-10T23:42:33-05:00 |
conversion_action_id |
123456789 |
transaction_id |
DEF999911111 |
conversion_value |
3.25 |
currency |
EUR |
gclid |
GCLID_2 |
emails |
|
given_name |
2752B88686847FA5C86F47B94CE652B7B3F22A91C37617D451A4DB9AFA431450 |
family_name |
6654977D57DDDD3C0329CA741B109EF6CD6430BEDD00008AAD213DF25683D77F |
region_code |
PT |
postal_code |
1229-076 |
customer_type |
RETURNING |
डेटा को Event
में बदलना
हर इवेंट के फ़ॉर्मैट किए गए और हैश किए गए डेटा को Event
में बदलें. इन ज़रूरी फ़ील्ड में जानकारी डालें:
event_timestamp
: इवेंट होने का समय.transaction_id
: इवेंट के लिए यूनीक आइडेंटिफ़ायर.event_source
: इवेंट का सोर्स. ऑफ़लाइन इवेंट के लिए ज़रूरी है. ऑनलाइन इवेंट के लिए ज़रूरी नहीं है. अगर इसे किसी ऑनलाइन इवेंट के लिए तय किया गया है, तो यहWEB
होना चाहिए.ad_identifiers
याuser_data
: इवेंट में विज्ञापन आइडेंटिफ़ायर या उपयोगकर्ता का डेटा होना चाहिए. अगर आपके पास इवेंट के लिए दोनों हैं, तो दोनों भेजें.
उपलब्ध फ़ील्ड की पूरी सूची देखने के लिए, Event
रेफ़रंस दस्तावेज़ देखें. जिस फ़ील्ड के लिए आपके पास इवेंट की वैल्यू है उसमें वैल्यू डालें.
यहां दूसरे इवेंट के फ़ॉर्मैट किए गए, हैश किए गए, और एन्कोड किए गए डेटा के लिए Event
का एक सैंपल दिया गया है:
{
"adIdentifiers": {
"gclid": "GCLID_2"
},
"conversionValue": 3.25,
"currency": "EUR",
"eventTimestamp": "2025-06-10T23:42:33-05:00",
"transactionId": "DEF999911111",
"eventSource": "WEB",
"userData": {
"userIdentifiers": [
{
"emailAddress": "3E693CF7E5B67880BFF33B2D2626DADB7BF1D4BC737192E47CF8BAA89ACF2250"
},
{
"emailAddress": "223EBDA6F6889B1494551BA902D9D381DAF2F642BAE055888E96343D53E9F9C4"
},
{
"address": {
"givenName": "2752B88686847FA5C86F47B94CE652B7B3F22A91C37617D451A4DB9AFA431450",
"familyName": "6654977D57DDDD3C0329CA741B109EF6CD6430BEDD00008AAD213DF25683D77F",
"regionCode": "PT",
"postalCode": "1229-076"
}
}
],
"userProperties": {
"customerType": "RETURNING"
}
}
}
अनुरोध का मुख्य हिस्सा बनाना
अनुरोध के मुख्य हिस्से के लिए, Destination
और Events
को एक साथ इस्तेमाल करें:
{
"destinations": [
{
"operatingAccount": {
"product": "GOOGLE_ADS",
"accountId": "OPERATING_ACCOUNT_ID"
},
"productDestinationId": "CONVERSION_ACTION_1_ID"
}
],
"encoding": "HEX",
"events": [
{
"adIdentifiers": {
"gclid": "GCLID_1"
},
"conversionValue": 1.99,
"currency": "USD",
"eventTimestamp": "2025-06-10T20:07:01Z",
"transactionId": "ABC798654321",
"eventSource": "WEB",
"userData": {
"userIdentifiers": [
{
"address": {
"givenName": "96D9632F363564CC3032521409CF22A852F2032EEC099ED5967C0D000CEC607A",
"familyName": "DB98D2607EFFFA28AFF66975868BF54C075ECA7157E35064DCE08E20B85B1081",
"regionCode": "US",
"postalCode": "94045"
}
}
]
},
"userProperties": {
"customerType": "NEW",
"customerValueBucket": "HIGH"
}
},
{
"adIdentifiers": {
"gclid": "GCLID_2"
},
"conversionValue": 3.25,
"currency": "EUR",
"eventTimestamp": "2025-06-11T04:42:33Z",
"transactionId": "DEF999911111",
"eventSource": "WEB",
"userData": {
"userIdentifiers": [
{
"emailAddress": "3E693CF7E5B67880BFF33B2D2626DADB7BF1D4BC737192E47CF8BAA89ACF2250"
},
{
"emailAddress": "223EBDA6F6889B1494551BA902D9D381DAF2F642BAE055888E96343D53E9F9C4"
},
{
"address": {
"givenName": "2752B88686847FA5C86F47B94CE652B7B3F22A91C37617D451A4DB9AFA431450",
"familyName": "6654977D57DDDD3C0329CA741B109EF6CD6430BEDD00008AAD213DF25683D77F",
"regionCode": "PT",
"postalCode": "1229-076"
}
}
]
},
"userProperties": {
"customerType": "RETURNING"
}
}
],
"validateOnly": true
}
- बॉडी में मौजूद प्लेसहोल्डर अपडेट करें. जैसे,
OPERATING_ACCOUNT_ID
औरCONVERSION_ACTION_1_ID
को अपने खाते और डेस्टिनेशन की वैल्यू के साथ अपडेट करें. - बदलावों को लागू किए बिना अनुरोध की पुष्टि करने के लिए,
validateOnly
कोtrue
पर सेट करें. जब आपको बदलाव लागू करने हों, तबvalidateOnly
कोfalse
पर सेट करें. - ध्यान दें कि इस उदाहरण में एन्क्रिप्शन का इस्तेमाल नहीं किया गया है.
अनुरोध भेजें
- सैंपल के सबसे ऊपर दाईं ओर मौजूद 'कॉपी करें' बटन का इस्तेमाल करके, अनुरोध के मुख्य हिस्से को कॉपी करें.
events.ingest
पेज पर जाएं.- दाईं ओर मौजूद API बटन पर क्लिक करें. इसके बाद, बड़े किए गए सेक्शन में मौजूद इसे आज़माएं! बटन पर क्लिक करें.
- कॉपी किए गए अनुरोध के मुख्य भाग को अनुरोध का मुख्य भाग बॉक्स में चिपकाएं.
- लागू करें बटन पर क्लिक करें. इसके बाद, पुष्टि करने के लिए दिए गए निर्देशों का पालन करें और जवाब की समीक्षा करें.
सक्सेस रिस्पॉन्स
अनुरोध पूरा होने पर, जवाब में एक ऐसा ऑब्जेक्ट मिलता है जिसमें requestId
शामिल होता है.
{
"requestId": "126365e1-16d0-4c81-9de9-f362711e250a"
}
जवाब नहीं मिलने पर मिलने वाले जवाब
अनुरोध पूरा न होने पर, गड़बड़ी के जवाब का स्टेटस कोड मिलता है. जैसे, 400 Bad
Request
. साथ ही, गड़बड़ी की जानकारी वाला जवाब मिलता है.
उदाहरण के लिए, अगर email_address
में हेक्स कोड में बदली गई वैल्यू के बजाय, सामान्य टेक्स्ट वाली स्ट्रिंग शामिल की जाती है, तो यह जवाब मिलता है:
{
"error": {
"code": 400,
"message": "There was a problem with the request.",
"status": "INVALID_ARGUMENT",
"details": [
{
"@type": "type.googleapis.com/google.rpc.ErrorInfo",
"reason": "INVALID_ARGUMENT",
"domain": "datamanager.googleapis.com"
},
{
"@type": "type.googleapis.com/google.rpc.BadRequest",
"fieldViolations": [
{
"field": "events.events[0].user_data.user_identifiers",
"description": "Email is not hex encoded.",
"reason": "INVALID_HEX_ENCODING"
}
]
}
]
}
}
हैश नहीं किए गए और सिर्फ़ हेक्स कोड में बदले गए email_address
से यह जवाब मिलता है:
{
"error": {
"code": 400,
"message": "There was a problem with the request.",
"status": "INVALID_ARGUMENT",
"details": [
{
"@type": "type.googleapis.com/google.rpc.ErrorInfo",
"reason": "INVALID_ARGUMENT",
"domain": "datamanager.googleapis.com"
},
{
"@type": "type.googleapis.com/google.rpc.BadRequest",
"fieldViolations": [
{
"field": "events.events[0]",
"reason": "INVALID_SHA256_FORMAT"
}
]
}
]
}
}
एक से ज़्यादा डेस्टिनेशन के लिए इवेंट भेजना
अगर आपके डेटा में अलग-अलग डेस्टिनेशन के लिए इवेंट शामिल हैं, तो डेस्टिनेशन रेफ़रंस का इस्तेमाल करके, उन्हें एक ही अनुरोध में भेजा जा सकता है.
उदाहरण के लिए, अगर आपके पास कन्वर्ज़न ऐक्शन आईडी 123456789
के लिए एक इवेंट है और कन्वर्ज़न ऐक्शन आईडी 777111122
के लिए दूसरा इवेंट है, तो हर Destination
का reference
सेट करके, दोनों इवेंट को एक ही अनुरोध में भेजें. reference
को उपयोगकर्ता तय करता है. इसकी सिर्फ़ एक शर्त है कि हर Destination
का reference
यूनीक होना चाहिए. अनुरोध के लिए, बदली गई destinations
सूची यहां दी गई है:
"destinations": [
{
"operatingAccount": {
"product": "GOOGLE_ADS",
"accountId": "OPERATING_ACCOUNT_ID"
},
"productDestinationId": "123456789"
"reference": "conversion_action_1"
},
{
"operatingAccount": {
"product": "GOOGLE_ADS",
"accountId": "OPERATING_ACCOUNT_ID"
},
"productDestinationId": "777111122"
"reference": "conversion_action_2"
}
]
हर Event
का destination_references
सेट करें, ताकि उसे एक या उससे ज़्यादा डेस्टिनेशन पर भेजा जा सके. उदाहरण के लिए, यहां एक Event
दिया गया है. यह सिर्फ़ पहले Destination
के लिए है. इसलिए, इसकी destination_references
सूची में सिर्फ़ पहले Destination
का reference
शामिल है:
{
"adIdentifiers": {
"gclid": "GCLID_1"
},
"conversionValue": 1.99,
"currency": "USD",
"eventTimestamp": "2025-06-10T20:07:01Z",
"transactionId": "ABC798654321",
"eventSource": "WEB",
"destinationReferences": [
"conversion_action_1"
]
}
destination_references
फ़ील्ड एक सूची है. इसलिए, किसी इवेंट के लिए एक से ज़्यादा डेस्टिनेशन तय किए जा सकते हैं. अगर आपने किसी destination_references
का destination_references
सेट नहीं किया है, तो Data Manager API, अनुरोध में शामिल सभी डेस्टिनेशन को इवेंट भेजता है.Event
अगले चरण
- क्लाइंट लाइब्रेरी की मदद से, पुष्टि करने की सुविधा कॉन्फ़िगर करें और अपना एनवायरमेंट सेट अप करें.
- हर तरह के डेटा के लिए, फ़ॉर्मैटिंग, हैशिंग, और एन्कोडिंग से जुड़ी ज़रूरी शर्तों के बारे में जानें.
- उपयोगकर्ता के डेटा को एन्क्रिप्ट (सुरक्षित) करने का तरीका जानें.
- सबसे सही तरीकों के बारे में जानें.
- सीमाओं और कोटा के बारे में जानें.