Utilisation de l’API Google Analytics (GA) en PHP

google_analytics

Dans cet article je vais vous présenter comment utiliser l'API Google Analytics en PHP. Il faut pour cela mettre en place la classe OAuth 2.0 avec Google, interroger l'API v3 de Google Analytics mais aussi utiliser Curl. La classe prend en charge l'obtention des jetons d'accès pour les applications web et les comptes de service enregistrés dans la console API Google.

  1.  Configuration de base

             1.1 - Créez un projet dans la console API Google : https://console.developers.google.com/project

Vous devrez fournir un nom descriptif, et l'ID unique.

1

              1.2 - Activez les API nécessaires

Pour activer l'API GA, dans la barre latérale gauche, allez aux:

APIs & auth > APIs et cliquez sur le bouton pour allumer "Analytics API".

              1.3 - Créez une application et téléchargez votre certificat d'authentification.

Ensuite, vous allez créer une application, sur la même barre latérale gauche, allez aux :

APIs & auth >  Credentials et cliquez sur "Create new Client ID".

Un Popup s’ouvre, dans lequel vous êtes en train de créer une application selon le choix de  votre type d’application (« Web application » ou « Service account » ou « Installed application »).

Mais pour la collecte des données, on utilise « Service account ». Après avoir choisi l’application, s’il y a d’autres champs obligatoires, remplissez-les et cliquez sur le bouton « Create Client ID ».

5

Après avoir cliqué sur le bouton « Create Client ID », le téléchargement automatique de certificat d’authentification ou la clé privée (fichier *.p12) surgi. Enregistrez-le dans le répertoire sécurisé de votre application PHP. Il est utile pour l’authentification de l’API.

6

Et cliquez sur le bouton « Okay, got it » pour terminer la création de votre application. Enfin vous aurez :

7

Une fois que vous avez téléchargé votre clé privée et que vous avez cliqué sur le bouton « Okay, got it » vous remarquerez que les deux champs sur l'écran précédent sont maintenant peuplés. Copiez l'adresse e-mail générée, vous en aurez besoin à l'étape suivante.

Pour notre exemple c’est :

« 893431409941-usgsmbnfeijj99andn4dnr812kc34k1t@developer.gserviceaccount.com »

 

          1.4 - Donnez votre demande d'accès d'adresse e-mail à votre vue (s) GA.

Remarque : Cette étape est très importante car si vous ne donnez pas l’accès à cette adresse email générée, alors vous risquez d’avoir le message d’erreur au moment de la connexion ou de l’interrogation de l’API comme : « Google PHP Client API: Insufficient Permission » ou « User does not have permission to perform this operation ».

Dans votre panneau d'administration GA vous pouvez donner aux utilisateurs la permission d'accéder aux vues de GA. Allez sur Google Analytics, sélectionnez un compte, puis cliquez sur le bouton « Admin » en haut à droite de votre écran. Dans le menu à gauche, sélectionnez «Gestion des utilisateurs», et ajoutez la permission de l'adresse e-mail que vous avez reçu à l'étape précédente.

Pendant que vous êtes ici, cliquez sur le bouton de retour dans le panneau d'administration et sur ​​le menu de droite sous Affichage, cliquez sur "Afficher les paramètres". Prenez la valeur "Voir ID", vous en aurez besoin pour interroger vos données.

8

 2. Utilisation de l’API

Selon le type d'application choisi, la configuration ou/et l’authentification peuvent être légèrement différentes. Cette section décrit les deux sens de façon indépendante :

Vous trouverez les détails d’utilisation et la source de l’API sur :

https://github.com/ticketscript/Google-Analytics-API-PHP

          2.1   Pour « Web applications »

10

Fournir un lien vers la Auth-Url. L'utilisateur doit se connecter avec son compte Google et accepter que l'application accède aux données Analytics. Après avoir terminé ces étapes, l'utilisateur sera redirigé vers la redirection-uri avec un code. Ce code est nécessaire pour obtenir les jetons.

11

Avec un accessToken vous pouvez interroger l'API pour le moment (en secondes) dans $tokenExpires. Si vous avez besoin d'interroger l'API au delà de ce délai, vous devez stocker le refreshToken avec horodatage dans la base de données / session. Si l'accessToken expire, vous pouvez en obtenir un nouveau avec le refreshToken.

12

        2.2   Pour « Service accounts »

N’oubliez pas de copier l'adresse email de la console API (xxxxxxxx@developer.gserviceaccount.com). Voir la démarche précédente.

13

Pour interroger l'API, vous devez obtenir un jeton d'accès. Ce jeton est valable une heure, passé ce délai, vous aurez besoin d'obtenir un nouveau jeton. Vous pouvez stocker le jeton dans la base de données / session.

14

   3.  Trouver le(s) compte(s)-ID

Avant de pouvoir interroger l'API, vous avez besoin de l'ID du compte où vous souhaitez interroger les données. L'ID peut être trouvé comme ceci:

15

Une fois que vous avez un accessToken valide et un compte-ID, vous pouvez interroger l'API Google Analytics. Vous pouvez configurer certains paramètres de la requête par défaut qui seront exécutés à chaque requête.

16

   4.  Metrics & Dimensions Reference:

https://developers.google.com/analytics/devguides/reporting/core/dimsmets

   5.  Google Analytics Explorateur de requêtes pour tester les requêtes:

http://ga-dev-tools.appspot.com/explorer/

 

2 commentaires

  1. Bonjour j’ai essayé votre exemple mais j’ai une erreur de type
    Fatal error: Class ‘GoogleAnalyticsAPI’ not found in « monfichier »
    Avez vous un exemple complet que l’on peux télécharger? Les captures d’écrans pour le code c’est un peu laborieux 🙂
    Merci d’avance pour votre aide, impossible jusqu’à maintenant de faire fonctionner l’API GA avec le service account .

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Captcha *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.