Riferimento Measurement Protocol

Panoramica

L'invio di dati a Google Analytics tramite Measurement Protocol si compone di due parti:

  1. Il trasporto: dove e come invii i dati
  2. Il payload: i dati che invii

Questo documento descrive la formattazione del trasporto e del payload.

Trasporto

URL endpoint

Puoi inviare i dati utilizzando Measurement Protocol effettuando richieste POST HTTP al seguente endpoint:

https://www.google-analytics.com/mp/collect

Per inviare un evento, invia la seguente richiesta di POST:

POST /mp/collect HTTP/1.1
HOST: www.google-analytics.com
Content-Type: application/json
<payload_data>
  • Il BODY della richiesta. Consulta Payload.

Codici di risposta

Measurement Protocol restituisce sempre un codice di stato 2xx se la richiesta HTTP è stata ricevuta. Measurement Protocol non restituisce un codice di errore se i dati del payload non sono formattati correttamente o se i dati nel payload sono errati o non sono stati elaborati da Google Analytics.

Payload

I dati vengono inviati a Google Analytics utilizzando i dati di Measurement Protocol in due parti:

  1. Parametri di query
  2. Un corpo JSON POST

parametri di query

Nome parametro Descrizione

api_secret

Obbligatorio. Un API Secret generato tramite l'interfaccia utente di Google Analytics.

Per creare un nuovo secret, vai all'interfaccia utente di Google Analytics e segui questi passaggi:
Amministrazione > Stream di dati > scegli il tuo stream > Measurement Protocol > Crea

Ti consigliamo di mantenere questi dati privati per la tua organizzazione. Se implementi il protocollo di misurazione lato client, devi ruotare regolarmente i api_secret per evitare un volume eccessivo di spam.

Corpo del post JSON

Chiave Tipo Descrizione

user_id

string

(Facoltativo) Un identificatore univoco per un utente. Per ulteriori informazioni su questo identificatore, consulta User-ID per l'analisi multipiattaforma.

timestamp_micros

number

(Facoltativo) Un timestamp Unix (in microsecondi) per l'ora da associare all'evento. Deve essere impostato solo per registrare gli eventi che si sono verificati nel passato. Questo valore può essere sostituito tramite user_property o timestamp degli eventi. Gli eventi possono essere retrodatati fino a 3 giorni di calendario in base al fuso orario della proprietà.

user_properties

object (Facoltativo) Le proprietà utente per la misurazione. Per ulteriori informazioni, consulta Proprietà utente.

user_data

object (Facoltativo) Dati forniti dall'utente. Per ulteriori informazioni, consulta la guida ai dati forniti dall'utente.
object (Facoltativo) Imposta le impostazioni di consenso per la richiesta. Per ulteriori informazioni, consulta la sezione sul consenso.

non_personalized_ads

boolean (Facoltativo) Impostato su true per indicare che i dati dell'utente non devono essere utilizzati per gli annunci personalizzati.

events[]

array Obbligatorio. Un array di elementi evento. È possibile inviare fino a 25 eventi per richiesta. Consulta la documentazione di riferimento sugli eventi per tutti gli eventi validi.

events[].name

string Obbligatorio. Il nome dell'evento. Consulta la documentazione di riferimento relativa agli eventi per tutte le opzioni.

events[].params

object (Facoltativo) I parametri dell'evento. Consulta events per i parametri suggeriti per ogni evento.

L'attributo consent configura i tipi e gli stati del consenso. Se non specifichi consent, Google Analytics utilizzerà le impostazioni del consenso dalle interazioni online corrispondenti per il client o l'istanza dell'app.

Chiave Tipo Descrizione

ad_user_data

string

Facoltativo. Imposta il consenso per l'invio a Google dei dati utente provenienti dagli eventi e dalle proprietà utente della richiesta per scopi pubblicitari.

Deve essere GRANTED o DENIED.

ad_personalization

string

Facoltativo. Imposta il consenso per la pubblicità personalizzata dell'utente.

Deve essere GRANTED o DENIED.

Parametri personalizzati

Oltre ai parametri obbligatori, puoi includere parametri personalizzati basati sugli utenti, sugli eventi e sugli articoli in un payload Measurement Protocol.

  • I parametri personalizzati basati sugli utenti possono essere inclusi nell'oggetto user_properties del payload.
  • I parametri personalizzati basati sugli eventi possono essere inclusi nell'events[].params oggetto del payload.
  • I parametri personalizzati basati sugli articoli possono essere inclusi nell'array items per ogni evento.

Alcuni eventi hanno parametri consigliati. Consulta events per i parametri consigliati per tutti gli eventi supportati.

Nomi riservati

Nomi di eventi riservati

I seguenti nomi di eventi sono riservati e non possono essere utilizzati:

  • ad_activeview
  • ad_click
  • ad_exposure
  • ad_query
  • ad_reward
  • adunit_exposure
  • app_clear_data
  • app_exception
  • app_install
  • app_remove
  • app_store_refund
  • app_update
  • app_upgrade
  • dynamic_link_app_open
  • dynamic_link_app_update
  • dynamic_link_first_open
  • error
  • firebase_campaign
  • firebase_in_app_message_action
  • firebase_in_app_message_dismiss
  • firebase_in_app_message_impression
  • first_open
  • first_visit
  • in_app_purchase
  • notification_dismiss
  • notification_foreground
  • notification_open
  • notification_receive
  • notification_send
  • os_update
  • session_start
  • user_engagement

Nomi riservati dei parametri

I seguenti nomi di parametri sono riservati e non possono essere utilizzati:

  • firebase_conversion

Inoltre, i nomi dei parametri non possono iniziare con:

  • _ (underscore)
  • firebase_
  • ga_
  • google_
  • gtag.

Nomi di proprietà utente riservati

I seguenti nomi di proprietà utente sono riservati e non possono essere utilizzati:

  • first_open_time
  • first_visit_time
  • last_deep_link_referrer
  • user_id
  • first_open_after_install

Inoltre, i nomi delle proprietà utente non possono iniziare con:

  • _ (underscore)
  • firebase_
  • ga_
  • google_