Cas d'utilisation avancés

Ce document décrit les fonctionnalités avancées de la version 4 de l'API Google Analytics Reporting. Pour en savoir plus sur l'API, consultez le Guide de référence.

Introduction

Une fois que vous avez créé un rapport simple, utilisez les fonctionnalités suivantes pour créer des rapports avancés:

Tableaux croisés dynamiques

L'API Google Analytics Reporting v4 vous permet de générer des tableaux croisés dynamiques. Pour créer une demande avec un tableau croisé dynamique, définissez le champ Pivot dans ReportRequest. L'objet Pivot possède son propre ensemble de dimensions et de métriques, ainsi que des éléments startGroup et maxGroupCount facultatifs pour spécifier le nombre de dimensions à inclure dans le tableau croisé dynamique.

Requête

L'appel d'API suivant demande les sessions par pays et croise les résultats en fonction du navigateur:

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet
{
  "reportRequests":
  [
    {
      "viewId": "XXXX",
      "dateRanges":
      [
        {
          "startDate": "2014-11-01",
          "endDate": "2014-11-30"
        }
      ],
      "metrics":
      [
        {
          "expression": "ga:sessions"
        }
      ],
      "dimensions":
      [
        {
          "name": "ga:country"
        }
      ],
      "pivots":
      [
        {
          "dimensions":
          [
            {
              "name": "ga:browser"
            }
          ],
          "maxGroupCount": 3,
          "startGroup": 3,
          "metrics":
          [
            {
              "expression": "ga:sessions"
            }
          ]
        }
      ]
    }
  ]
}

En-tête de colonne de réponse

Dans l'objet rapport renvoyé pour une requête de tableau croisé dynamique, l'élément metricHeader comporte une liste d'objets pivotHeaders dont les champs pivotHeaderEntries définissent l'ordre des valeurs de dimension de tableau croisé dynamique et les valeurs des métriques correspondantes. Par exemple:

"columnHeader": {
    "dimensions": [
        "ga:country"
    ],
    "metricHeader": {
        "metricHeaderEntries": [
            {
                "name": "ga:sessions",
                "type": "INTEGER"
            }
        ],
        "pivotHeaders": [
            {
                "pivotHeaderEntries": [
                    {
                        "dimensionNames": [
                            "ga:browser"
                        ],
                        "dimensionValues": [
                            "Internet Explorer"
                        ],
                        "metric": {
                            "name": "ga:sessions",
                            "type": "INTEGER"
                        }
                    },
                    {
                        "dimensionNames": [
                            "ga:browser"
                        ],
                        "dimensionValues": [
                            "Firefox"
                        ],
                        "metric": {
                            "name": "ga:sessions",
                            "type": "INTEGER"
                        }
                    },
                    {
                        "dimensionNames": [
                            "ga:browser"
                        ],
                        "dimensionValues": [
                            "Android Browser"
                        ],
                        "metric": {
                            "name": "ga:sessions",
                            "type": "INTEGER"
                        }
                    }
                ],
                "totalPivotGroupsCount": 7
            }
        ]
    }
},

Lignes de réponse

Chaque ligne de l'objet reportData définit un tableau d'objets dateRangeValue, chacun contenant un ensemble d'objets pivotValue. L'ordre des valeurs correspond à l'ordre des métriques listées dans les en-têtes de tableau croisé dynamique dans l'en-tête de colonne de réponse.

"rows": [
    ...
    {
        "dimensions": [
            "United States"
        ],
        "metrics": [
            {
                "pivotValues": [
                    {
                        "values": [
                            "21",
                            "18",
                            "1"
                        ]
                    }
                ],
                "values": [
                    "192"
                ]
            }
        ]
    }
],

Notez que le rapport ne contient que trois valeurs de tableau croisé dynamique, car dans la demande initiale, maxGroupCount correspond à 3. En raison de "totalPivotGroupsCount": 7, il peut y avoir jusqu'à sept valeurs.

Exemple de ligne d'un tableau croisé dynamique

Dans l'exemple de réponse ci-dessus, la ligne associée au pays États-Unis est représentée dans le tableau croisé dynamique suivant:

Pays
sessions au total
Sessions Internet Explorer
Sessions FireFox
Sessions du navigateur Android
Inde 12 3 2 4
États-Unis 192 21 18 1
Royaume-Uni 35 12 2 0

Cohortes

Une cohorte est un groupe d'utilisateurs qui partagent une caractéristique commune. Par exemple, tous les utilisateurs avec la même date d'acquisition appartiennent à la même cohorte. Le rapport d'analyse vous permet d'identifier et d'analyser le comportement de ces cohortes. Pour obtenir la liste des dimensions et des métriques spécifiques aux cohortes, consultez Dimensions et métriques des cohortes et de la valeur vie (LTV).

Pour définir une demande de cohorte, vous devez définir un objet cohorte avec name, type et dateRange:

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet
{
  "reportRequests":
  [
    {
      "viewId": "XXXX",
      "dimensions":
      [
        {
          "name": "ga:cohort"
        },
        {
          "name": "ga:cohortNthDay"
        }
      ],
      "metrics":
      [
        {
          "expression": "ga:cohortActiveUsers"
        },
        {
          "expression": "ga:cohortTotalUsers"
        }
      ],
      "cohortGroup":
      {
        "cohorts":
        [
          {
            "name": "cohort 1",
            "type": "FIRST_VISIT_DATE",
            "dateRange":
            {
              "startDate": "2015-08-01",
              "endDate": "2015-08-01"
            }
          },
          {
            "name": "cohort 2",
            "type": "FIRST_VISIT_DATE",
            "dateRange":
            {
              "startDate": "2015-07-01",
              "endDate": "2015-07-01"
            }
          }
        ]
      }
    }
  ]
}

Consultez l'exemple ci-dessus dans APIs Explorer.

Restrictions des cohortes

Une demande de cohorte valide doit respecter les restrictions suivantes:

  • La dimension ga:cohort est incluse si et seulement si la requête comporte une ou plusieurs définitions de cohorte.
  • Le nom de la cohorte doit être unique.
  • Une requête peut comporter jusqu'à 12 cohortes.
  • Si ga:cohortNthWeek est défini, la date de début doit être le dimanche et la date de fin doit être le samedi. Si ga:cohortNthMonth est défini, la date de début doit être le premier jour du mois et la date de fin doit être le dernier jour du mois. Si ga:cohortNthDay est défini, la plage de dates doit correspondre exactement à un jour.
  • Les demandes de cohortes avec la date du jour ne sont pas autorisées.
  • Les demandes de cohortes et non de cohortes ne doivent pas figurer dans la même requête batchGet.
  • La plage de dates des cohortes doit être postérieure au 1er février 2015.

Valeur vie (LTV)

Le rapport sur la valeur vie indique l'augmentation de la valeur (revenu) et de l'engagement utilisateur (vues d'applications, objectifs réalisés, sessions et durée des sessions) au cours des 90 jours suivant l'acquisition d'un utilisateur. Consultez les dimensions et métriques spécifiques à la LTV.

Une requête LTV est définie comme une cohorte avec le champ lifetimeValue défini sur true, par exemple:

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet
{
  "reportRequests":
  [
    {
      "viewId": "XXXX",
      "dimensions":
      [
        {
          "name": "ga:cohort"
        },
        {
          "name": "ga:cohortNthWeek"
        }
      ],
      "metrics":
      [
        {
          "expression": "ga:cohortTotalUsersWithLifetimeCriteria"
        },
        {
          "expression": "ga:cohortRevenuePerUser"
        }
      ],
      "cohortGroup":
      {
        "cohorts":
        [
          {
            "name": "cohort 1",
            "type": "FIRST_VISIT_DATE",
            "dateRange":
            {
              "startDate": "2015-08-01",
              "endDate": "2015-09-01"
            }
          },
          {
            "name": "cohort 2",
            "type": "FIRST_VISIT_DATE",
            "dateRange":
            {
              "startDate": "2015-07-01",
              "endDate": "2015-08-01"
            }
          }
        ],
        "lifetimeValue": true
      }
    }
  ]
}

Consultez l'exemple ci-dessus dans APIs Explorer.

Dimensions et métriques de cohorte et de valeur vie (LTV)

Dimensions

Nom de la dimension Définition
ga:cohort Nom de la cohorte à laquelle appartient l'utilisateur. Selon la façon dont les cohortes sont définies, un utilisateur peut appartenir à plusieurs cohortes de la même manière qu'un utilisateur peut appartenir à plusieurs segments.
ga:cohortNthDay Décalage de jour basé sur 0 par rapport à la date de définition de la cohorte. Par exemple, si une cohorte est définie avec une date de première visite 2015-09-01, alors ga:cohortNthDay sera égal à 3 pour la date 2015-09-04.
ga:cohortNthMonth Décalage mensuel basé sur 0 par rapport à la date de définition de la cohorte.
ga:cohortNthWeek Décalage de semaine basé sur 0 par rapport à la date de définition de la cohorte.
ga:acquisitionTrafficChannel Canal de trafic via lequel l'utilisateur a été touché. Elle est extraite de la première session de l'utilisateur. Le canal de trafic est calculé en fonction des règles de regroupement de canaux par défaut (au niveau de la vue, le cas échéant) au moment de l'acquisition d'utilisateurs.
ga:acquisitionSource Source via laquelle l'utilisateur a été touché. Issu de la première session de l'utilisateur.
ga:acquisitionMedium Support via lequel l'utilisateur a été touché. Issu de la première session de l'utilisateur.
ga:acquisitionSourceMedium Valeur combinée de ga:userAcquisitionSource et ga:acquisitionMedium.
ga:acquisitionCampaign Campagne via laquelle l'utilisateur a été touché. Issu de la première session de l'utilisateur.

Métriques

Nom de la métrique Définition
ga:cohortActiveUsers Cette métrique est pertinente dans le contexte des dimensions de décalage basées sur 0 (ga:cohortNthDay, ga:cohortNthWeek ou ga:cohortNthMonth). Elle indique le nombre d'utilisateurs de la cohorte actifs au cours de la période correspondant à la cohorte nième jour/semaine/mois. Par exemple, pour ga:cohortNthWeek = 1, le nombre d'utilisateurs (dans la cohorte) actifs au cours de la deuxième semaine. Si une requête ne contient aucun des éléments ga:cohortNthDay, ga:cohortNthWeek ou ga:cohortNthMonth, cette métrique aura la même valeur que ga:cohortTotalUsers.
ga:cohortTotalUsers Nombre d'utilisateurs appartenant à la cohorte (également appelé "taille de la cohorte").
ga:cohortAppviewsPerUser Vues d'application par utilisateur pour une cohorte.
ga:cohortGoalCompletionsPerUser Objectifs réalisés par utilisateur pour une cohorte.
ga:cohortPageviewsPerUser Pages vues par utilisateur pour une cohorte.
ga:cohortRetentionRate Taux de fidélisation de la cohorte.
ga:cohortRevenuePerUser Revenus par utilisateur pour une cohorte.
ga:cohortVisitDurationPerUser Durée de session par utilisateur pour une cohorte.
ga:cohortSessionsPerUser Sessions par utilisateur pour une cohorte.

Métriques de valeur vie (LTV)

Nom de la métrique Définition
ga:cohortTotalUsersWithLifetimeCriteria Ceci est pertinent dans le contexte d'une requête comportant les dimensions ga:acquisitionTrafficChannel, ga:acquisitionSource, ga:acquisitionMedium ou ga:acquisitionCampaign. Il représente le nombre d'utilisateurs des cohortes acquis via le canal, la source, le support ou la campagne actuels. Par exemple, pour ga:acquisitionTrafficChannel=Direct, il s'agit du nombre d'utilisateurs de la cohorte qui ont été acquis directement. Si aucune des dimensions mentionnées n'est présente, sa valeur est égale à ga:cohortTotalUsers (vues d'application uniquement).
ga:cohortAppviewsPerUserWithLifetimeCriteria Vues d'application par utilisateur pour la dimension "Acquisition" d'une cohorte (vues d'application uniquement).
ga:cohortGoalCompletionsPerUserWithLifetimeCriteria Objectifs réalisés par utilisateur pour la dimension "Acquisition" d'une cohorte (vues de l'application uniquement).
ga:cohortPageviewsPerUserWithLifetimeCriteria Pages vues par utilisateur pour la dimension "Acquisition" d'une cohorte (vues d'application uniquement).
ga:cohortRevenuePerUserWithLifetimeCriteria Revenus par utilisateur pour la dimension "Acquisition" d'une cohorte (vues de l'application uniquement).
ga:cohortSessionsPerUserWithLifetimeCriteria Durée de session par utilisateur pour la dimension "Acquisition" d'une cohorte (vues d'application uniquement).