Documentation de référence du protocole de mesure

Présentation

L'envoi de données à Google Analytics à l'aide du protocole de mesure s'effectue en deux étapes:

  1. Le transport : où et comment vous envoyez des données
  2. Charge utile : données que vous envoyez

Ce document décrit le format du transport et de la charge utile.

Transport

Point de terminaison de l'URL

Pour envoyer des données à l'aide du protocole de mesure, envoyez des requêtes HTTP POST au point de terminaison suivant:

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

Pour envoyer un événement, exécutez la requête POST suivante:

POST /mp/collect HTTP/1.1
HOST: www.google-analytics.com
Content-Type: application/json
<payload_data>

Codes de réponse

Le protocole de mesure renvoie toujours un code d'état 2xx si la requête HTTP a été reçue. Le protocole de mesure ne renvoie pas de code d'erreur si les données de la charge utile sont incorrectes, si elles sont incorrectes ou si elles n'ont pas été traitées par Google Analytics.

Charge utile

Les données sont envoyées à Google Analytics à l'aide des données du protocole de mesure en deux parties:

  1. Paramètres de requête
  2. Un corps JSON POST

paramètres de requête

Nom du paramètre Description

api_secret

Obligatoire. Un API Secret généré via l'UI Google Analytics.

Pour créer un secret, accédez à l'interface utilisateur de Google Analytics et accédez à :
Administration > Flux de données > choisir votre flux > Protocole de mesure > Créer.

Nous vous recommandons de ne pas les autoriser à votre organisation. Si vous déployez le protocole de mesure côté client, vous devez effectuer une rotation régulière des api_secret pour éviter un nombre excessif de spams.

firebase_app_id

Obligatoire. ID de l'application Firebase. Identifiant d'une application Firebase. Il est disponible dans la console Firebase, sous :
Paramètres du projet > Général > Vos applications > ID de l'application.

measurement_id

ID de mesure. Identifiant d'un flux de données. Disponible dans l'UI Google Analytics, sous :
Admin > Flux de données > Choisir votre flux > ID de mesure

Corps du post JSON

Clé Type Description

app_instance_id

string

Obligatoire. Identifie de manière unique une installation spécifique d'une application Firebase. Cette valeur doit être récupérée via le SDK Firebase.

client_id

string

Obligatoire. Identifie de manière unique une instance d'utilisateur d'un client Web. Consultez la section Envoyer un événement au protocole de mesure.

user_id

string

Facultatif. Identifiant unique d'un utilisateur. Pour en savoir plus sur cet identifiant, consultez User-ID pour l'analyse multiplate-forme.

timestamp_micros

number

Facultatif. Horodatage Unix (en microsecondes) indiquant l'heure à associer à l'événement. Ce paramètre ne doit être configuré que pour enregistrer des événements passés. Cette valeur peut être remplacée via user_property ou l'horodatage d'événement. Les événements peuvent être antidatés jusqu'à trois jours calendaires en fonction du fuseau horaire de la propriété.

user_properties

object Facultatif. Propriétés utilisateur de la mesure. Pour en savoir plus, consultez Propriétés utilisateur.
object Facultatif. Définit les paramètres de consentement pour la requête. Pour en savoir plus, consultez la section Consentement.

non_personalized_ads

boolean Facultatif. Définissez la valeur sur true pour indiquer que les données de l'utilisateur ne doivent pas être utilisées pour les annonces personnalisées.

events[]

array Obligatoire. Tableau d'éléments d'événement. Jusqu'à 25 événements peuvent être envoyés par requête. Consultez la documentation de référence sur les événements pour connaître tous les événements valides.

events[].name

string Obligatoire. Nom de l'événement. Consultez la documentation de référence sur les événements pour connaître toutes les options.

events[].params

object Facultatif. Paramètres de l'événement. Consultez la section Événements afin de connaître les paramètres suggérés pour chaque événement.

L'attribut consent configure les types et les états de consentement. Si vous ne spécifiez pas consent, Google Analytics utilisera les paramètres de consentement des interactions en ligne correspondantes pour le client ou l'instance d'application.

Clé Type Description

ad_user_data

string

Facultatif. Définit le consentement pour l'envoi de données utilisateur à Google à des fins publicitaires à partir des événements et des propriétés utilisateur de la requête.

Doit prendre la valeur GRANTED ou DENIED.

ad_personalization

string

Facultatif. Définit le consentement pour la publicité personnalisée pour l'utilisateur.

Doit prendre la valeur GRANTED ou DENIED.

Paramètres personnalisés

En plus des paramètres prescrits, vous pouvez inclure des paramètres personnalisés de portée utilisateur, de portée événement et de portée article dans une charge utile du protocole de mesure.

  • Les paramètres personnalisés de portée utilisateur peuvent être inclus dans l'objet user_properties de la charge utile.
  • Les paramètres personnalisés de portée événement peuvent être inclus dans l'objet events[].params de la charge utile.
  • Les paramètres personnalisés de portée article peuvent être inclus dans le tableau items pour chaque événement.

Certains événements comportent des paramètres recommandés. Consultez la section Événements afin de connaître les paramètres recommandés pour tous les événements compatibles.

Noms réservés

Noms d'événements réservés

Les noms d'événements suivants sont réservés et ne peuvent pas être utilisés :

  • 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

Noms de paramètres réservés

Les noms de paramètres suivants sont réservés et ne peuvent pas être utilisés :

  • firebase_conversion

De plus, les noms de paramètres ne peuvent pas commencer par :

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

Noms de propriétés utilisateur réservés

Les noms de propriétés utilisateur suivants sont réservés et ne peuvent pas être utilisés :

  • first_open_time
  • first_visit_time
  • last_deep_link_referrer
  • user_id
  • first_open_after_install

De plus, les noms de propriétés utilisateur ne peuvent pas commencer par :

  • _ (underscore)
  • firebase_
  • ga_
  • google_