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.

Dans cet atelier de programmation, nous partons du principe que vous avez déjà implémenté une application dans laquelle Google Analytics pour Firebase est implémenté. Pour savoir comment intégrer Google Analytics pour Firebase, consultez d'abord cet atelier de programmation. Si vous souhaitez apprendre à créer une application avec Firebase, consultez Chat adapté à la création de l'atelier de programmation Firebase pour Android.

Points abordés

  • Étapes à suivre pour effectuer votre premier appel à un député
  • 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
  • N'importe quel IDE pour effectuer des modifications
  • Compte GA4
  • Facultatif : Environnement de développement Python (ou Colab)

2. Rassemblez les champs obligatoires

Créer un code secret d'API dans GA4

Accédez à GA4 et créez votre code secret d'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 pseudo. La valeur secrète s'affichera et vous pourrez l'utiliser dans votre appel.

Si vous ne savez pas comment accéder à GA4, vous pouvez consulter votre projet Firebase : Paramètres du projet > Intégrations > Google Analytics, puis cliquez 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. Extraire le code source de votre application de manière native

Ces deux méthodes sont expliquées en détail ci-dessous.

  1. Utiliser BigQuery Export

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

  • Se connecter à Firebase
  • Accédez à Project Settings > Intégrations > BigQuery
  • Cliquez sur "Afficher dans BigQuery". près de l'ensemble de données

Remarque : L'ensemble de données ne sera disponible qu'après environ 24 à 48 heures d'activation du bouton.

63d061088b622961.png

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

4b1b80bdc2884581.png

  1. Extraction native dans le code source de votre application

Si votre application est compilée à l'aide de Java, vous pouvez utiliser quelque chose comme ceci 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 ce qui suit en 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. Construction de l'appel

Vous pouvez créer un exemple d'appel à l'aide de l'outil de création d'événements dans GA4. (Pour ce faire, vous devez être connecté et avoir activé les cookies). Assurez-vous que le bouton d'activation est défini sur "firebase".

fd78d961f3e48238.png

Vous devez remplir les champs suivants :

  • api_secret : déjà créé précédemment dans GA4
  • firebase_app_id : pour obtenir cette valeur, accédez à Administration > Flux de données > choisissez votre flux. Elle doit 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 : remplacez cette catégorie par "Personnalisée". dans le menu déroulant, puis saisissez le nom d'événement de votre choix (n'utilisez pas 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 rempli tous les champs, vous devriez obtenir un résultat semblable à celui-ci, avec un bouton "Valider l'événement".

475801f25c3caf26.png

Cliquez ensuite sur "VALIDER L'ÉVÉNEMENT". , le bouton mis en évidence en orange. Le message ci-dessous devrait s'afficher, indiquant que l'événement est valide. Un bouton "ENVOYER À GA" devrait également s'afficher. À ce stade, si l'événement s'affiche comme non valide, l'outil vous indique le champ exact où le problème se trouve. Vous pouvez le corriger, puis réessayer.

23e4e6800705b4aa.png

Vous pouvez maintenant cliquer sur le bouton. Cela devrait envoyer un événement de test à GA4.

4. Valider des événements dans GA4

Une fois l'événement envoyé, vous pouvez accéder à votre compte GA4 et consulter la section "Temps réel". Vous devriez voir l'événement passer

994b51ca46bb1973.png

La propagation des événements de la vue en temps réel vers l'onglet des rapports sur les événements peut prendre environ 24 heures. Ne vous inquiétez pas si vous ne les voyez pas immédiatement dans les rapports sur les événements habituels.

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

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 n'importe quel langage de votre choix) pouvant effectuer cet appel. Vous pouvez ensuite planifier l'opération à la fréquence souhaitée et l'opérationnaliser. Pour cette partie, vous pouvez utiliser n'importe quel IDE compatible avec Python ou simplement utiliser 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 constaterez 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 l'aurez exécuté avec les valeurs appropriées, l'événement devrait 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 solutions performantes pour envoyer des données plus pertinentes à Google Analytics, et améliorer vos analyses commerciales et marketing. Pour en profiter pleinement, nous vous suggérons également d'associer ces événements à Google Ads et d'importer ces événements en tant que conversions. Vous pouvez vous reporter à l'étape 6 de cet atelier de programmation pour obtenir des instructions détaillées à ce sujet. À des fins de suivi des conversions, Google Ads n'affiche que les données associées aux 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 encore d'une API alpha et assurez-vous de respecter les limites listées ici , qui doivent être corrigées 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