Envoyer des événements d'application à GA4 à l'aide du protocole de mesure

1. Introduction

Dernière mise à jour : 08/06/2021

Objectifs de l'atelier

Dans cet atelier de programmation, vous allez apprendre à envoyer des événements externes à GA4 à l'aide du protocole de mesure.

Cet atelier de programmation suppose que vous avez déjà implémenté une application avec Google Analytics pour Firebase. Si vous souhaitez savoir comment intégrer Google Analytics pour Firebase, veuillez d'abord consulter cet atelier de programmation. Pour savoir comment créer une application avec Firebase, veuillez consulter l'atelier de programmation Firebase pour Android : créer une application de chat convivial.

Points abordés

  • Étapes à suivre pour votre premier appel au protocole de mesure
  • Comprendre les paramètres requis pour l'appel
  • Envoyer et valider votre appel test
  • Créer un exemple de script en Python pour effectuer l'appel

Prérequis

  • Votre application Android ou iOS
  • Tout IDE pour apporter des modifications
  • Compte GA4
  • Facultatif : environnement de développement Python (ou Colab)

2. Collecter les champs obligatoires

Créer un code secret d'API dans GA4

Accédez à GA4 et créez votre nouveau code secret de l'API en accédant à Administration > Flux de données > choisissez votre flux > Protocole de mesure > Créer.

6e4afca63054d291.png

c9e9ccd2ffba98eb.png

e714cd969fca4a4d.png

Vous pouvez fournir n'importe quel pseudonyme. La valeur du secret s'affiche et vous pouvez l'utiliser dans votre appel.

Si vous ne savez pas comment accéder à GA4, vous pouvez accéder à votre projet Firebase, puis à Paramètres du projet > Intégrations > Google Analytics, et cliquer sur "Gérer". La connexion Google Analytics devrait être visible. Vous pouvez également y accéder directement.

73b4d77a57eddfba.png

Collecter app_instance_id

Vous pouvez utiliser l'une des méthodes ci-dessous pour collecter votre app_instance_id.

  1. Utiliser BigQuery Export
  2. Récupérer des données de manière native dans le code source de votre application

Ces deux éléments sont expliqués en détail ci-dessous.

  1. Utiliser BigQuery Export

Si vous avez activé BigQuery Export , vous pouvez suivre les étapes ci-dessous.

  • Se connecter à Firebase
  • Accédez à Paramètres du projet > Intégrations > BigQuery.
  • Cliquez sur "Afficher dans BigQuery" à côté de l'ensemble de données.

Remarque : L'ensemble de données ne sera disponible qu'une fois le bouton bascule activé pendant environ 24 à 48 heures.

63d061088b622961.png

  • Dans BigQuery, vous pouvez rechercher user_pseudo_id dans la table. Il s'agit de l'app_instance_id que vous pouvez utiliser dans votre appel.

4b1b80bdc2884581.png

  1. Récupérer des données de manière native dans le code source de votre application

Si votre application est conçue à l'aide de Java, vous pouvez utiliser un code semblable à celui-ci pour récupérer l'app_instance_id.

 FirebaseAnalytics.getInstance(this).getAppInstanceId().addOnCompleteListener(new OnCompleteListener<String>() {
        @Override
        public void onComplete(@NonNull Task<String> task) {
            if (task.isSuccessful()) {
                String user_pseudo_id = task.getResult();
            }
        }
    });

Pour Kotlin, vous pouvez essayer ce qui suit :

Thread {
   Firebase.analytics.appInstanceId.addOnSuccessListener { user_pseudo_id ->
       Log.d("Firebase", "user_pseudo_id using appInstanceId is $user_pseudo_id")
       /*
       Store the value to your server or do something with the retrieved id
        */
   }
}.start()

Si vous avez une application iOS, vous pouvez utiliser les éléments suivants dans Swift.

let user_pseudo_id = Analytics.appInstanceID()
print("user_pseudo_id = \(user_pseudo_id)")
/*
Store the value to your server or do something with the retrieved id
*/

Vous trouverez ci-dessous d'autres liens en fonction de votre infrastructure.

3. Construire l'appel

Vous pouvez créer un exemple d'appel à l'aide du générateur d'événements dans GA4. Pour ce faire, vous devez vous connecter et avoir activé les cookies. Assurez-vous que le bouton d'activation est défini sur "firebase".

fd78d961f3e48238.png

Vous devrez remplir les champs suivants :

  • api_secret : déjà créé dans GA4
  • firebase_app_id : pour obtenir cette valeur, accédez à Administration > Flux de données > choisissez votre flux . Il devrait s'afficher comme ci-dessous.

19801c8e5cb29222.png

  • app_instance_id : vous avez déjà récupéré cette valeur.
  • user_id n'est pas obligatoire. Vous pouvez le laisser vide pour le moment.
  • Catégorie : sélectionnez "Personnalisé" dans le menu déroulant, puis saisissez le nom de l'événement de votre choix (n'utilisez pas de nom d'événement collecté automatiquement). Ici, nous utilisons "test_from_codelab".

54cce53df64d697.png

Vous pouvez également choisir de fournir des paramètres d'événement et/ou des propriétés utilisateur en cliquant sur les boutons ci-dessous.

16a8f531a3894021.png

Une fois que vous avez tout rempli, vous devriez voir quelque chose comme ceci, avec un bouton "Valider l'événement"

475801f25c3caf26.png

Une fois que vous avez atteint cette étape, cliquez sur "VALIDER L'ÉVÉNEMENT" , le bouton orange. Le message ci-dessous devrait s'afficher, indiquant que l'événement est valide. Un bouton "ENVOYER À GA" devrait également apparaître. À ce stade, si l'événement est signalé comme non valide, l'outil vous indiquera le champ exact où se trouve le problème. Vous pourrez alors le corriger et réessayer.

23e4e6800705b4aa.png

Vous pouvez maintenant cliquer sur le bouton. Un événement de test devrait être envoyé à GA4.

4. Valider les événements dans GA4

Une fois l'événement envoyé, vous pouvez accéder à votre compte GA4 et consulter la section "Temps réel". L'événement devrait s'afficher.

994b51ca46bb1973.png

Il peut s'écouler environ 24 heures avant que les événements ne soient propagés de la vue en temps réel à l'onglet de reporting des événements. Ne vous inquiétez donc pas si vous ne les voyez pas immédiatement dans le reporting des événements habituel.

Si vous rencontrez des problèmes ou des écarts, il peut être utile de consulter les limites connues du protocole de mesure.

5. Créer un script Python

Maintenant que vous l'avez testée, vous pouvez examiner l'appel d'API et la charge utile de l'événement pour créer une architecture similaire en Python (ou dans le langage de votre choix) qui peut effectuer cet appel. Vous pouvez ensuite planifier cette tâche à la fréquence souhaitée et la mettre en œuvre. Pour cette partie, vous pouvez utiliser l'IDE de votre choix compatible avec Python ou simplement un notebook Google Colab, qui ne nécessite aucune installation sur votre appareil.

En revenant à l'outil de création d'événements GA4, vous verrez que le point de terminaison est le suivant :

POST /mp/collect?firebase_app_id=XXXX&api_secret=XXXX 
HTTP/1.1
Host: www.google-analytics.com

La charge utile de l'événement était la suivante :

{
  "app_instance_id": XXXX,
  "non_personalized_ads": false,
  "events": [
    {
      "name": "test_from_codelab",
      "params": {
        "test_param": "test_123"
      }
    }
  ]
}

Vous pouvez traduire cela en Python en utilisant quelque chose comme ceci :

import requests
import json
url = "https://www.google-analytics.com/mp/collect?firebase_app_id=XXXX&api_secret=XXXX"
payload = {
  "app_instance_id": XXXX,
  "non_personalized_ads": False,
  "events": [
    {
      "name": "test_from_codelab",
      "params": {
        "test_param": "test_123"
      }
    }
  ]
}
r = requests.post(url,data=json.dumps(payload),verify=True)
print(r.status_code)

Une fois que vous aurez exécuté cette commande avec les bonnes valeurs, l'événement devrait également s'afficher en temps réel dans GA4.

6. Félicitations

Félicitations, vous avez utilisé le protocole de mesure dans GA4. Vous pouvez désormais créer des architectures de solution puissantes pour envoyer des données plus pertinentes à Google Analytics et améliorer vos analyses marketing et métier. Pour en tirer le meilleur parti, nous vous suggérons également de l'associer à Google Ads et d'importer ces événements en tant que conversions. Pour obtenir des instructions détaillées, consultez l'étape 6 de cet atelier de programmation. Pour le suivi des conversions, Google Ads n'affichera que les données associées à l'IDFA ou aux ID d'appareil collectés à partir du SDK Firebase au cours des 60 derniers jours. N'oubliez pas qu'il s'agit toujours d'une API alpha. Assurez-vous de consulter les limites listées ici , qui devront être résolues avant le lancement complet.

Ce que vous avez appris

  • Collecter les bonnes variables pour effectuer des appels MP
  • Envoyer et valider des événements de test
  • Créer un script pour envoyer des appels MP