इस गाइड में बताया गया है कि Google Analytics मेज़रमेंट प्रोटोकॉल के वेब और ऐप्लिकेशन स्ट्रीम के इवेंट, Google Analytics सर्वर पर कैसे भेजे जा सकते हैं. इससे आपको Google Analytics की रिपोर्ट में मेज़रमेंट प्रोटोकॉल के इवेंट दिखेंगे.
वह प्लैटफ़ॉर्म चुनें जिसके लिए आपको यह गाइड देखनी है:
अनुरोध को फ़ॉर्मैट करना
Google Analytics मेज़रमेंट प्रोटोकॉल, सिर्फ़ एचटीटीपी POST
अनुरोधों के साथ काम करता है.
इवेंट भेजने के लिए, इस फ़ॉर्मैट का इस्तेमाल करें:
POST /mp/collect HTTP/1.1
HOST: www.google-analytics.com
Content-Type: application/json
PAYLOAD_DATA
आपको अनुरोध यूआरएल में यह जानकारी देनी होगी:
api_secret
: यह एपीआई सीक्रेट, Google Analytics के यूज़र इंटरफ़ेस (यूआई) में जनरेट होता है.नया सीक्रेट बनाने के लिए, एडमिन > डेटा कलेक्शन और डेटा में बदलाव > डेटा स्ट्रीम > अपनी स्ट्रीम चुनें > मेज़रमेंट प्रोटोकॉल एपीआई सीक्रेट > बनाएं पर जाएं.
measurement_id
: यह स्ट्रीम से जुड़ा मेज़रमेंट आईडी होता है. यह Google Analytics के यूज़र इंटरफ़ेस (यूआई) में, एडमिन > डेटा स्ट्रीम > अपनी स्ट्रीम चुनें > मेज़रमेंट आईडी में जाकर देखा जा सकता है.measurement_id
आपका स्ट्रीम आईडी नहीं है.
मेज़रमेंट प्रोटोकॉल के लिए, आपको JSON POST body फ़ॉर्मैट में अनुरोध का मुख्य हिस्सा देना होगा. यहां एक उदाहरण दिया गया है:
{
"client_id": "CLIENT_ID",
"events": [
{
"name": "login",
"params": {
"method": "Google",
"session_id": "SESSION_ID",
"engagement_time_msec": 100
}
}
]
}
session_start
एक आरक्षित इवेंट का नाम है. वहीं, नया session_id
बनाने से एक नया सेशन शुरू होता है. इसके लिए, session_start
भेजने की ज़रूरत नहीं होती. जानें कि सेशन की गिनती कैसे की जाती है.
इसे आज़माएं
यहां एक उदाहरण दिया गया है. इसका इस्तेमाल करके, एक साथ कई इवेंट भेजे जा सकते हैं. इस उदाहरण में, आपके Google Analytics सर्वर को tutorial_begin
इवेंट और join_group
इवेंट भेजा जाता है. इसमें user_location
फ़ील्ड का इस्तेमाल करके, भौगोलिक जानकारी शामिल की जाती है. साथ ही, device
फ़ील्ड का इस्तेमाल करके, डिवाइस की जानकारी शामिल की जाती है.
const measurementId = "MEASUREMENT_ID";
const apiSecret = "API_SECRET";
fetch(`https://www.google-analytics.com/mp/collect?measurement_id=${measurementId}&api_secret=${apiSecret}`, {
method: "POST",
body: JSON.stringify({
client_id: "CLIENT_ID",
events: [
{
name: "tutorial_begin",
params: {
"session_id": "SESSION_ID",
"engagement_time_msec": 100
}
},
{
name: "join_group",
params: {
"group_id": "G_12345",
"session_id": "SESSION_ID",
"engagement_time_msec": 150
}
}
],
user_location: {
city: "Mountain View",
region_id: "US-CA",
country_id: "US",
subcontinent_id: "021",
continent_id: "019"
},
device: {
category: "mobile",
language: "en",
screen_resolution: "1280x2856",
operating_system: "Android",
operating_system_version: "14",
model: "Pixel 9 Pro",
brand: "Google",
browser: "Chrome",
browser_version: "136.0.7103.60"
}
})
});
टाइमस्टैंप में बदलाव
मेज़रमेंट प्रोटोकॉल, अनुरोध में शामिल हर इवेंट के लिए, इस सूची में मौजूद पहले टाइमस्टैंप का इस्तेमाल करता है:
- इवेंट का
timestamp_micros
. - अनुरोध का
timestamp_micros
. - मेज़रमेंट प्रोटोकॉल को अनुरोध मिलने का समय.
यहां दिए गए उदाहरण में, अनुरोध के लेवल का टाइमस्टैंप भेजा गया है. यह अनुरोध में शामिल सभी इवेंट पर लागू होता है. इस वजह से, मेज़रमेंट प्रोटोकॉल, tutorial_begin
और join_group
, दोनों इवेंट को requestUnixEpochTimeInMicros
का टाइमस्टैंप असाइन करता है.
{
"timestamp_micros": requestUnixEpochTimeInMicros,
"events": [
{
"name": "tutorial_begin"
},
{
"name": "join_group",
"params": {
"group_id": "G_12345",
}
}
]
}
यहां दिए गए उदाहरण में, अनुरोध-लेवल और इवेंट-लेवल, दोनों टाइमस्टैंप भेजे गए हैं. इस वजह से, मेज़रमेंट प्रोटोकॉल tutorial_begin
इवेंट को tutorialBeginUnixEpochTimeInMicros
का टाइमस्टैंप और join_group
इवेंट को requestUnixEpochTimeInMicros
का टाइमस्टैंप असाइन करता है.
{
"timestamp_micros": requestUnixEpochTimeInMicros,
"events": [
{
"name": "tutorial_begin",
"timestamp_micros": tutorialBeginUnixEpochTimeInMicros
},
{
"name": "join_group",
"params": {
"group_id": "G_12345",
}
}
]
}
सीमाएं
मेज़रमेंट प्रोटोकॉल इवेंट को Google Analytics पर भेजने से जुड़ी ये सीमाएं लागू होती हैं:
- अनुरोधों में ज़्यादा से ज़्यादा 25 इवेंट हो सकते हैं.
- इवेंट में ज़्यादा से ज़्यादा 25 पैरामीटर हो सकते हैं.
- इवेंट में ज़्यादा से ज़्यादा 25 उपयोगकर्ता प्रॉपर्टी हो सकती हैं.
- उपयोगकर्ता प्रॉपर्टी के नामों में 24 या इससे कम वर्ण होने चाहिए.
- उपयोगकर्ता प्रॉपर्टी की वैल्यू में 36 या इससे कम वर्ण होने चाहिए.
- इवेंट के नामों में 40 या इससे कम वर्ण होने चाहिए. इनमें सिर्फ़ ऐल्फ़ान्यूमेरिक (अक्षर और अंक) वर्ण और अंडरस्कोर हो सकते हैं. साथ ही, इनकी शुरुआत अक्षर से होनी चाहिए.
- पैरामीटर के नामों के साथ-साथ आइटम पैरामीटर में 40 या इससे कम वर्ण होने चाहिए. इनमें सिर्फ़ ऐल्फ़ान्यूमेरिक वर्ण और अंडरस्कोर हो सकते हैं. साथ ही, इनकी शुरुआत अक्षर से होनी चाहिए.
- पैरामीटर वैल्यू में 100 या इससे कम वर्ण होने चाहिए. यह सीमा, आइटम की पैरामीटर वैल्यू के लिए भी है. हालांकि, Google Analytics 360 प्रॉपर्टी के लिए, पैरामीटर वैल्यू में 500 या इससे कम वर्ण होने चाहिए.
- आइटम पैरामीटर में ज़्यादा से ज़्यादा 10 कस्टम पैरामीटर हो सकते हैं.
- पोस्ट का साइज़ 130 केबी से कम होना चाहिए.
- ऐप्लिकेशन के लिए मेज़रमेंट प्रोटोकॉल के ज़रिए Google Analytics को भेजे गए इवेंट, ऐप्लिकेशन इस्तेमाल करने वाले लोगों के लिए Google Ads में Search Network ऑडियंस की जानकारी नहीं भरते.
इस्तेमाल के हर उदाहरण से जुड़ी अन्य ज़रूरी शर्तों के लिए, इस्तेमाल के सामान्य उदाहरण देखें.