Ce guide explique comment envoyer Flux Web et d'application via le protocole de mesure Google Analytics événements en serveur Google Analytics, afin que vous puissiez afficher les événements du protocole de mesure dans dans vos rapports Google Analytics.
Choisissez la plate-forme que vous souhaitez voir dans ce guide:
Mettre en forme la requête
Le protocole de mesure pour Google Analytics 4 n'est compatible qu'avec le POST
HTTP
requêtes.
Pour envoyer un événement, utilisez le format suivant:
POST /mp/collect HTTP/1.1
HOST: www.google-analytics.com
Content-Type: application/json
<payload_data>
Vous devez fournir les éléments suivants dans l'URL de la requête:
api_secret
: le SECRET de l'API généré dans l'interface utilisateur de Google Analytics.Pour créer un secret, accédez à Admin > Flux de données > choisir votre diffusion > Protocole de mesure > Créer :
measurement_id
: ID de mesure associé à un flux, situé dans le UI Google Analytics sous Admin > Flux de données > choisissez vos flux > ID de mesure.measurement_id
n'est pas votre ID de flux.
Pour en savoir plus, consultez la section Paramètres de requête.
Vous devez fournir les éléments suivants dans le corps de la requête:
client_id
: identifiant unique d'un client. Ceci diffère d'un Firebaseapp_instance_id
. Utilisez gtag.js('get').
user_id
: facultatif. Identifiant unique d'un utilisateur. Ne peut contenir que le format UTF-8 caractères. Pour en savoir plus, consultez User-ID pour l'analyse multiplate-forme. concernant cet identifiant.consent
: facultatif. Découvrez comment définir le consentement paramètres.timestamp_micros
: facultatif. Heure de l'epoch Unix en microsecondes pour la valeur et les propriétés utilisateur dans la requête. Si aucune valeur n'est spécifiée, la valeur par défaut est au moment de la demande.events
: tableau d'éléments d'événement. Vous pouvez inclure plusieurs événements dans un requête.Pour que l'activité des utilisateurs s'affiche dans des rapports tels que Temps réel,
engagement_time_msec
etsession_id
doivent être fournis dans le cadre deparams
pourevent
. Le paramètreengagement_time_msec
doit refléter la durée d'engagement de l'événement, en millisecondes.Exemple :
{
"client_id": "123456.7654321",
"events": [
{
"name": "campaign_details",
"params": {
"campaign_id": "google_1234",
"campaign": "Summer_fun",
"source": "google",
"medium": "cpc",
"term": "summer+travel",
"content": "logolink",
"session_id": "123",
"engagement_time_msec": "100"
}
}
]
}
Bien que session_start
soit un événement réservé
nom,
la création d'un session_id
crée une session sans avoir à envoyer
session_start
Découvrez à quoi servent les sessions
pris en compte.
Essayer
Voici un exemple permettant d'envoyer un événement tutorial_begin
à votre
Serveur Google Analytics:
const measurement_id = `G-XXXXXXXXXX`;
const api_secret = `<secret_value>`;
fetch(`https://www.google-analytics.com/mp/collect?measurement_id=${measurement_id}&api_secret=${api_secret}`, {
method: "POST",
body: JSON.stringify({
client_id: 'XXXXXXXXXX.YYYYYYYYYY',
events: [{
name: 'tutorial_begin',
params: {},
}]
})
});
Remplacer l'horodatage
Le protocole de mesure utilise le premier horodatage qu'il trouve dans pour chaque événement de la requête:
timestamp_micros
de l'événement.timestamp_micros
de la requête.- Heure à laquelle le protocole de mesure reçoit la requête.
L'exemple suivant envoie un code temporel au niveau de la requête qui s'applique à toutes les
les événements de la requête. Par conséquent, le protocole de mesure attribue à la fois
Les événements tutorial_begin
et join_group
sont horodatés
requestUnixEpochTimeInMicros
{
"timestamp_micros": requestUnixEpochTimeInMicros,
"events": [
{
"name": "tutorial_begin"
},
{
"name": "join_group",
"params": {
"group_id": "G_12345",
}
}
]
}
L'exemple suivant envoie à la fois un code temporel au niveau de la requête et un horodatage au niveau de l'événement
du code temporel. Par conséquent, le protocole de mesure attribue le tutorial_begin
pour le code temporel tutorialBeginUnixEpochTimeInMicros
, et le join_group
et que le code temporel est requestUnixEpochTimeInMicros
.
{
"timestamp_micros": requestUnixEpochTimeInMicros,
"events": [
{
"name": "tutorial_begin",
"timestamp_micros": tutorialBeginUnixEpochTimeInMicros
},
{
"name": "join_group",
"params": {
"group_id": "G_12345",
}
}
]
}
Limites
Les limites suivantes s'appliquent à l'envoi d'événements du protocole de mesure à Google Analyses:
- Les requêtes ne peuvent pas comporter plus de 25 événements.
- Les événements ne doivent pas inclure plus de 25 paramètres.
- Les événements ne doivent pas inclure plus de 25 propriétés utilisateur.
- Les noms de propriétés utilisateur ne doivent pas dépasser 24 caractères.
- Les valeurs des propriétés utilisateur ne doivent pas dépasser 36 caractères.
- Les noms d'événements ne doivent pas comporter plus de 40 caractères et ne peuvent contenir que des caractères alphanumériques et des traits de soulignement. Il doit commencer par une lettre.
- Les noms de paramètres, y compris les paramètres d'élément, ne doivent pas comporter plus de 40 caractères. ne peut contenir que des caractères alphanumériques et des traits de soulignement, et doit commencer avec un caractère alphabétique.
- Les valeurs de paramètre, y compris celles de l'élément, doivent comporter 100 caractères ou de moins pour une propriété Google Analytics 4 standard, et de 500 caractères ou de moins pour une propriété Google Analytics 360.
- Les paramètres d'élément ne peuvent pas comporter plus de 10 paramètres personnalisés.
- La taille du corps du post doit être inférieure à 130 Ko.
- Les événements du protocole de mesure des applications envoyés à Google Analytics 4 ne sont pas renseignés. Recherchez des audiences dans Google Ads pour les utilisateurs d'applications.
Pour connaître les exigences supplémentaires de chaque cas d'utilisation, consultez la section Cas d'utilisation courants.