फ़ील्ड मैपिंग

टेबल में दी गई मैपिंग का इस्तेमाल करके, मेज़रमेंट प्रोटोकॉल के डेटा कलेक्शन के अनुरोध (/mp/collect) को Data Manager API में मौजूद उसके IngestEventsRequest के बराबर मैप करें.

पुष्टि करना

Data Manager API के लिए, api_secret के बजाय OAuth क्रेडेंशियल की ज़रूरत होती है. एपीआई ऐक्सेस सेट अप करें में दिया गया तरीका अपनाकर, नए क्रेडेंशियल जनरेट करें. इनमें Data Manager API का स्कोप शामिल होना चाहिए.

अनुरोध के फ़ील्ड

/mp/collect अनुरोध (मेज़रमेंट प्रोटोकॉल) IngestEventsRequest (Data Manager API) नोट
measurement_id (क्वेरी पैरामीटर) destinations वेब इवेंट के लिए, product_destination_id पर मैप करें. ज़्यादा जानकारी के लिए, डेस्टिनेशन फ़ील्ड देखें.
firebase_app_id (क्वेरी पैरामीटर) destinations ऐप्लिकेशन इवेंट के लिए, product_destination_id पर मैप करें. ज़्यादा जानकारी के लिए, डेस्टिनेशन फ़ील्ड देखें.
api_secret (क्वेरी पैरामीटर) कोई मिलती-जुलती रिपोर्ट नहीं Data Manager API में अनुरोधों की पुष्टि करने का तरीका जानने के लिए, एपीआई ऐक्सेस सेट अप करना लेख पढ़ें
consent consent इसे Consent ऑब्जेक्ट पर सेट किया जाता है.
events events Event संसाधनों की सूची पर सेट करें. ज़्यादा जानकारी के लिए, इवेंट फ़ील्ड सेक्शन देखें.
client_id events.client_id वेब इवेंट के लिए ज़रूरी है.
app_instance_id events.app_instance_id ऐप्लिकेशन इवेंट के लिए ज़रूरी है.
user_id events.user_id ज़रूरी नहीं. किसी उपयोगकर्ता के लिए यूनीक आइडेंटिफ़ायर.
timestamp_micros events.event_timestamp मेज़रमेंट प्रोटोकॉल में, इसे अनुरोध लेवल पर या किसी इवेंट के लिए दिया जा सकता है. Data Manager API में, अनुरोध के लेवल का टाइमस्टैंप नहीं होता. हर इवेंट के लिए, event_timestamp को उस समय पर सेट करें जब इवेंट हुआ था.
  • JSON फ़ॉर्मैट का इस्तेमाल करने पर, वैल्यू को आरएफ़सी 3339 फ़ॉर्मैट में सेट करें.
  • प्रोटोकॉल बफ़र का इस्तेमाल करने पर, Timestamp का इस्तेमाल करें. साथ ही, seconds और (ज़रूरी नहीं) nanoseconds फ़ील्ड सेट करें.

ज़्यादा जानकारी के लिए, टाइमस्टैंप का फ़ॉर्मैट देखें.
user_properties events.user_properties

इसे UserProperties ऑब्जेक्ट पर सेट किया जाता है. अगर आपको उपयोगकर्ता का टाइप या वैल्यू बकेट भेजना है, तो UserProperties एट्रिब्यूट के customer_type या customer_value_bucket फ़ील्ड का इस्तेमाल करें. अन्य उपयोगकर्ता प्रॉपर्टी के लिए, एक अलग UserProperty ऑब्जेक्ट बनाएं. इसके property_name और value फ़ील्ड सेट करें. इसके बाद, इसे additional_user_properties सूची में जोड़ें.

डेटा मैनेजर एपीआई में, अलग-अलग उपयोगकर्ता प्रॉपर्टी के लिए टाइमस्टैंप सेट करने की सुविधा नहीं है. उपयोगकर्ता प्रॉपर्टी में किए गए बदलावों से जुड़े टाइमस्टैंप का अनुमान, इवेंट (event_timestamp) के टाइमस्टैंप से लगाया जाता है.

user_data events.user_data इसे UserData ऑब्जेक्ट पर सेट करें. ज़्यादा जानकारी के लिए, यूज़र आइडेंटिफ़ायर फ़ील्ड देखें.
non_personalized_ads events.consent.ad_personalization अगर non_personalized_ads की वैल्यू true है, तो ad_personalization को CONSENT_DENIED पर सेट करें.
user_location events.event_location ज़्यादा जानकारी के लिए, उपयोगकर्ता की जगह की जानकारी वाले फ़ील्ड देखें.
ip_override events.event_device_info.ip_address
device events.event_device_info ज़्यादा जानकारी के लिए, डिवाइस फ़ील्ड देखें.
user_agent events.event_device_info.user_agent
validation_behavior कोई मिलती-जुलती रिपोर्ट नहीं Diagnostics का इस्तेमाल करके, अपने अपलोड की स्थिति के साथ-साथ डाउनस्ट्रीम प्रोसेसिंग के दौरान अलग-अलग इवेंट के लिए गड़बड़ियों और चेतावनियों को वापस पाएं. अगर IngestEventsRequest काम नहीं करता है (उदाहरण के लिए, ज़रूरी फ़ील्ड मौजूद न होने की वजह से), तो कोई भी इवेंट प्रोसेस नहीं किया जाता है. आपको गड़बड़ी ठीक करनी होगी और अनुरोध को फिर से भेजना होगा. ज़्यादा जानकारी के लिए, एपीआई की गड़बड़ियों के बारे में जानकारी लेख पढ़ें.
/debug/mp/collect validate_only validate_only को true पर सेट करें, ताकि बिना किसी डेटा को शामिल किए इवेंट की पुष्टि की जा सके. यह मेज़रमेंट प्रोटोकॉल की पुष्टि करने वाले सर्वर की तरह ही काम करता है.
कोई मिलती-जुलती रिपोर्ट नहीं encoding UserData अपलोड करने के लिए ज़रूरी है. UserIdentifier वैल्यू के लिए इस्तेमाल किए गए Encoding पर सेट करें.

डेस्टिनेशन फ़ील्ड

मेज़रमेंट प्रोटोकॉल, measurement_id या firebase_app_id क्वेरी पैरामीटर का इस्तेमाल करके, सीधे किसी डेटा स्ट्रीम में इवेंट भेजता है.

Data Manager API, Destination ऑब्जेक्ट का इस्तेमाल करके यह तय करता है कि डेटा कहां भेजना है. डेस्टिनेशन के बारे में ज़्यादा जानकारी के लिए, डेस्टिनेशन कॉन्फ़िगर करना लेख पढ़ें.

यहां मेज़रमेंट प्रोटोकॉल फ़ील्ड को Destination में मौजूद मिलते-जुलते फ़ील्ड से मैप करने का तरीका बताया गया है:

मेज़रमेंट प्रोटोकॉल Destination (Data Manager API) नोट
measurement_id (क्वेरी पैरामीटर) product_destination_id Google Analytics की वेबसाइट डेटा स्ट्रीम के मेज़रमेंट आईडी पर सेट किया गया हो
firebase_app_id (क्वेरी पैरामीटर) product_destination_id Google Analytics ऐप्लिकेशन की डेटा स्ट्रीम के Firebase ऐप्लिकेशन आईडी पर सेट करें
कोई मिलती-जुलती रिपोर्ट नहीं operating_account account_id को Google Analytics प्रॉपर्टी आईडी पर सेट करें. account_type को GOOGLE_ANALYTICS_PROPERTY पर सेट करें.
कोई मिलती-जुलती रिपोर्ट नहीं login_account account_id को Google Analytics प्रॉपर्टी आईडी पर सेट करें. account_type को GOOGLE_ANALYTICS_PROPERTY पर सेट करें.

इवेंट की जानकारी देने वाले फ़ील्ड

मेज़रमेंट प्रोटोकॉल events[] Event (Data Manager API) नोट
name event_name अगर event_name में रिज़र्व किए गए नाम का इस्तेमाल किया जाता है, तो एपीआई INVALID_EVENT_NAME गड़बड़ी के साथ इवेंट को अस्वीकार कर देता है.
कोई मिलती-जुलती रिपोर्ट नहीं event_source अगर इवेंट किसी वेब ब्राउज़र से जनरेट हुआ है, तो इसे WEB पर सेट करें. अगर इवेंट किसी ऐप्लिकेशन से जनरेट हुआ है, तो इसे APP पर सेट करें.
कोई मिलती-जुलती रिपोर्ट नहीं destination_references अगर अनुरोध-लेवल की destinations सूची में एक से ज़्यादा Google Analytics Destination शामिल हैं, तो यह ज़रूरी है. कोई एंट्री जोड़ें, ताकि यह तय किया जा सके कि इवेंट किस डेस्टिनेशन को मिलना चाहिए.
timestamp_micros event_timestamp
  • अगर JSON फ़ॉर्मैट का इस्तेमाल किया जा रहा है, तो इसे RFC 3339 फ़ॉर्मैट में सेट करें.
  • प्रोटोकॉल बफ़र का इस्तेमाल करने पर, Timestamp का इस्तेमाल करें. साथ ही, seconds और (ज़रूरी नहीं) nanoseconds फ़ील्ड सेट करें.

ज़्यादा जानकारी के लिए, टाइमस्टैंप का फ़ॉर्मैट देखें.
params.currency currency
params.value conversion_value
params.customer_type user_properties.customer_type मेज़रमेंट प्रोटोकॉल में, customer_type पैरामीटर को इवेंट पैरामीटर के तौर पर सेट किया जाता है. Data Manager API में, इसे इवेंट पर UserProperties ऑब्जेक्ट में customer_type फ़ील्ड में सेट करें.
params.transaction_id transaction_id कुछ इवेंट और इस्तेमाल के उदाहरणों के लिए ज़रूरी है. ज़्यादा जानकारी के लिए, डेटा को Event ऑब्जेक्ट में बदलना देखें.
params.items cart_data.items ज़्यादा जानकारी के लिए, कार्ट डेटा के लिए आइटम फ़ील्ड देखें.
params.coupon cart_data.coupon_codes coupon_codes फ़ील्ड का इस्तेमाल करके, कार्ट में लागू किए गए कूपन की जानकारी दें. Google Analytics के लिए सिर्फ़ एक कूपन दें. यह Item लेवल के कूपन से अलग होता है. इन्हें अलग-अलग आइटम के लिए, cart_data.items.additional_item_parameters का इस्तेमाल करके सेट किया जा सकता है.
params.session_id additional_event_parameters parameter_name को session_id पर सेट करके, किसी एंट्री पर मैप करें.
params.engagement_time_msec additional_event_parameters parameter_name को engagement_time_msec पर सेट करके, किसी एंट्री का मैप करें.
अन्य params additional_event_parameters

अन्य पैरामीटर को parameter_name और value के साथ ऑब्जेक्ट की सूची के तौर पर मैप करें.

ध्यान दें: यहां transaction_id, currency या value के लिए एंट्री न जोड़ें. इसके बजाय, Event पर टॉप-लेवल के फ़ील्ड का इस्तेमाल करें.

उपयोगकर्ता आइडेंटिफ़ायर फ़ील्ड

Measurement Protocol user_data UserIdentifier (Data Manager API) नोट
sha256_email_address[] email_address फ़ॉर्मैट और हैश किए गए ईमेल पते पर सेट करें. आपके पास हैश किए गए ईमेल पते को एन्क्रिप्ट (सुरक्षित) करने का विकल्प भी होता है.
sha256_phone_number[] phone_number फ़ॉर्मैट और हैश किए गए फ़ोन नंबर पर सेट करें. आपके पास हैश किए गए फ़ोन नंबर को एन्क्रिप्ट (सुरक्षित) करने का विकल्प भी होता है.
address[] address इसे AddressInfo ऑब्जेक्ट पर सेट करें. फ़ॉर्मैटिंग और हैशिंग से जुड़े दिशा-निर्देशों का पालन करें.
address[].sha256_first_name address.given_name यह फ़ॉर्मैट किए गए और हैश किए गए दिए गए नाम पर सेट होता है. आपके पास हैश किए गए दिए गए नाम को एन्क्रिप्ट (सुरक्षित) करने का विकल्प भी होता है.
address[].sha256_last_name address.family_name इसे फ़ॉर्मैट किए गए और हैश किए गए सरनेम पर सेट करें. आपके पास हैश किए गए परिवार के नाम को एन्क्रिप्ट (सुरक्षित) करने का विकल्प भी होता है.
address[].country address.region_code
address[].postal_code address.postal_code
address[].city address.city सामान्य शहर पर सेट करें. इस फ़ील्ड को हैश न करें.
address[].region address.administrative_area इसे सामान्य प्रशासनिक क्षेत्र (राज्य या प्रांत) पर सेट करें. इस फ़ील्ड को हैश न करें.
address[].sha256_street address.address_line इसे फ़ॉर्मैट किए गए और हैश किए गए मोहल्ले के पते पर सेट करें. हैश किए गए मोहल्ले के पते को एन्क्रिप्ट (सुरक्षित) भी किया जा सकता है.

कार्ट डेटा के लिए आइटम फ़ील्ड

मेज़रमेंट प्रोटोकॉल items[] Item (Data Manager API) नोट
item_id item_id ज़रूरी है.
item_name additional_item_parameters किसी एंट्री के लिए मैप करें. इसमें parameter_name को item_name पर सेट करें.
quantity quantity ज़रूरी है.
price unit_price ज़रूरी है.
अन्य आइटम फ़ील्ड additional_item_parameters

discount, affiliation, item_brand वगैरह जैसे अन्य आइटम पैरामीटर को parameter_name और value के साथ ऑब्जेक्ट की सूची के तौर पर मैप करें.

ध्यान दें: यहां quantity, price या item_id के लिए एंट्री न जोड़ें. इसके बजाय, Item पर मौजूद टॉप-लेवल फ़ील्ड का इस्तेमाल करें.

उपयोगकर्ता की जगह की जानकारी वाले फ़ील्ड

Measurement Protocol user_location EventLocation (Data Manager API) नोट
city city उस शहर का नाम जहां इवेंट हुआ.
country_id region_code इसे दो अक्षर वाले CLDR कोड पर सेट करें.
region_id subdivision_code इसे ISO 3166-2 सबडिवीज़न कोड पर सेट करें.
continent_id continent_code इसे UN M49 फ़ॉर्मैट में महाद्वीप के कोड पर सेट किया जाता है.
subcontinent_id subcontinent_code इसे UN M49 फ़ॉर्मैट में, उपमहाद्वीप के कोड पर सेट किया जाता है.

डिवाइस फ़ील्ड

Measurement Protocol device DeviceInfo (Data Manager API) नोट
category category
language language_code
screen_resolution screen_height और screen_width मेज़रमेंट प्रोटोकॉल में, screen_resolution को स्ट्रिंग ("1280x720") के तौर पर दिया जाता है. Data Manager API में, screen_height और screen_width को अलग-अलग पूर्णांक वैल्यू के तौर पर भेजें.
operating_system operating_system
operating_system_version operating_system_version
model model
brand brand
browser browser
browser_version browser_version