Questa guida spiega come inviare eventi di stream web e di app Measurement Protocol di Google Analytics a un server Google Analytics, in modo da poter visualizzare gli eventi Measurement Protocol nei report di Google Analytics.
Scegli la piattaforma che vuoi visualizzare in questa guida:
Formattazione della richiesta
Measurement Protocol per Google Analytics supporta solo le richieste HTTP POST
.
Per inviare un evento, utilizza il seguente formato:
POST /mp/collect HTTP/1.1
HOST: www.google-analytics.com
Content-Type: application/json
PAYLOAD_DATA
Nell'URL della richiesta devi fornire:
api_secret
: il valore di API SECRET generato nell'interfaccia utente di Google Analytics.Per creare un nuovo secret, vai ad Amministrazione > Raccolta e modifica dei dati > Stream di dati > scegli lo stream di tuo interesse > API secret di Measurement Protocol > Crea.
measurement_id
: l'ID misurazione associato a uno stream, che si trova nell'interfaccia utente di Google Analytics in Amministrazione > Stream di dati > scegli lo stream di tuo interesse > ID misurazione.measurement_id
non è il tuo ID stream.
Devi fornire un corpo della richiesta nel formato corpo POST JSON per il Measurement Protocol. Ecco un esempio:
{
"client_id": "CLIENT_ID",
"events": [
{
"name": "login",
"params": {
"method": "Google",
"session_id": "SESSION_ID",
"engagement_time_msec": 100
}
}
]
}
Anche se session_start
è un nome evento
riservato,
la creazione di un nuovo session_id
crea una nuova sessione senza la necessità di inviare
session_start
. Scopri come vengono conteggiate le sessioni.
Prova
Ecco un esempio che puoi utilizzare per inviare più eventi contemporaneamente. Questo esempio
invia un evento tutorial_begin
e un evento
join_group
al server Google Analytics, include informazioni
geografiche utilizzando il campo user_location
e include informazioni sul dispositivo
utilizzando il campo 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"
}
})
});
Override timestamp
Measurement Protocol utilizza il timestamp first che trova nel seguente elenco per ogni evento nella richiesta:
- Il
timestamp_micros
dell'evento. - Il
timestamp_micros
della richiesta. - L'ora in cui Measurement Protocol riceve la richiesta.
L'esempio seguente invia un timestamp a livello di richiesta che si applica a tutti gli
eventi nella richiesta. Di conseguenza, Measurement Protocol assegna agli eventi
tutorial_begin
e join_group
un timestamp di
requestUnixEpochTimeInMicros
.
{
"timestamp_micros": requestUnixEpochTimeInMicros,
"events": [
{
"name": "tutorial_begin"
},
{
"name": "join_group",
"params": {
"group_id": "G_12345",
}
}
]
}
L'esempio seguente invia sia un timestamp a livello di richiesta sia un timestamp a livello di evento. Di conseguenza, Measurement Protocol assegna all'evento tutorial_begin
un timestamp di tutorialBeginUnixEpochTimeInMicros
e all'evento join_group
un timestamp di requestUnixEpochTimeInMicros
.
{
"timestamp_micros": requestUnixEpochTimeInMicros,
"events": [
{
"name": "tutorial_begin",
"timestamp_micros": tutorialBeginUnixEpochTimeInMicros
},
{
"name": "join_group",
"params": {
"group_id": "G_12345",
}
}
]
}
Limitazioni
Le seguenti limitazioni si applicano all'invio di eventi Measurement Protocol a Google Analytics:
- Le richieste possono avere un massimo di 25 eventi.
- Gli eventi possono avere al massimo 25 parametri.
- Gli eventi possono avere al massimo 25 proprietà utente.
- I nomi delle proprietà utente non possono superare i 24 caratteri.
- I valori delle proprietà utente non possono superare i 36 caratteri.
- I nomi degli eventi devono avere una lunghezza massima di 40 caratteri, possono contenere solo caratteri alfanumerici e trattini bassi e devono iniziare con un carattere alfabetico.
- I nomi dei parametri, inclusi i parametri articolo, non devono superare i 40 caratteri, possono contenere solo caratteri alfanumerici e trattini bassi e devono iniziare con un carattere alfabetico.
- I valori dei parametri, inclusi i valori parametro articolo, non devono superare i 100 caratteri per una proprietà Google Analytics standard e i 500 caratteri per una proprietà Google Analytics 360.
- I parametri articolo possono avere un massimo di 10 parametri personalizzati.
- Il corpo del post deve avere dimensioni inferiori a 130 kB.
- Gli eventi di Measurement Protocol per app inviati a Google Analytics non vengono utilizzati per creare segmenti di pubblico della rete di ricerca in Google Ads per gli utenti di app.
Per i requisiti aggiuntivi di ogni caso d'uso, consulta Casi d'uso comuni.