In diesem Dokument werden mehrere erweiterte Funktionen von Google Analytics beschrieben. Data API Version 1. Eine ausführliche Referenz zur API finden Sie in der API-Referenz.
Benutzerdefinierte Definitionen auflisten und Berichte erstellen
Mit der Data API können Berichte zu registrierten benutzerdefinierten Dimensionen und Benutzerdefiniert Messwerte: Das Metadata API Method, um die API aufzulisten. Namen der registrierten benutzerdefinierten Definitionen Ihrer Property. Diese API-Namen können die in Anfragen an den runReport-Methode ein.
In den folgenden Abschnitten finden Sie Beispiele für die einzelnen Arten von benutzerdefinierten Definitionen. In
Ersetzen Sie in diesen Beispielen GA_PROPERTY_ID
durch Ihre Property-ID.
Benutzerdefinierte Dimensionen auf Ereignisebene
Schritt 1: Methode Metadata API abfragen durch Ihre Property-ID.
GET https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID/metadata
Schritt 2:Gewünschte benutzerdefinierte Dimension auf Ereignisebene finden Erstellen von Berichten aus der Antwort. Wenn die Dimension nicht vorhanden ist, müssen Sie um die Dimension zu registrieren.
"dimensions": [
...
{
"apiName": "customEvent:achievement_id",
"uiName": "Achievement ID",
"description": "An event scoped custom dimension for your Analytics property."
},
...
],
Schritt 3: Fügen Sie die benutzerdefinierte Dimension in eine Berichtsanfrage ein. Die folgenden ist eine Beispielanfrage an die Methode runReport.
POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
"dateRanges": [{ "startDate": "2020-09-01", "endDate": "2020-09-15" }],
"dimensions": [{ "name": "customEvent:achievement_id" }],
"metrics": [{ "name": "eventCount" }]
}
Benutzerdefinierte Dimensionen auf Nutzerebene
Schritt 1: Methode Metadata API abfragen durch Ihre Property-ID.
GET https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID/metadata
Schritt 2:Gewünschte benutzerdefinierte Dimension auf Nutzerebene finden Erstellen von Berichten aus der Antwort. Wenn die Dimension nicht vorhanden ist, müssen Sie um die Dimension zu registrieren.
"dimensions": [
...
{
"apiName": "customUser:last_level",
"uiName": "Last level",
"description": "A user property for your Analytics property."
},
...
],
Schritt 3: Fügen Sie die benutzerdefinierte Dimension in eine Berichtsanfrage ein. Die folgenden ist eine Beispielanfrage an die Methode runReport.
POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
"entity": { "propertyId": "GA_PROPERTY_ID" },
"dateRanges": [{ "startDate": "7daysAgo", "endDate": "yesterday" }],
"dimensions": [{ "name": "customUser:last_level" }],
"metrics": [{ "name": "activeUsers" }]
}
Benutzerdefinierte Messwerte auf Ereignisebene
Schritt 1: Methode Metadata API abfragen durch Ihre Property-ID.
GET https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID/metadata
Schritt 2:Interessanten benutzerdefinierten Messwert auf Ereignisebene finden Erstellen von Berichten aus der Antwort. Ist der Messwert nicht vorhanden, müssen Sie Messwert registrieren
"metrics": [
...
{
"apiName": "customEvent:credits_spent",
"uiName": "Credits Spent",
"description": "An event scoped custom metric for your Analytics property.",
"type": "TYPE_STANDARD"
},
...
],
Schritt 3:Fügen Sie den benutzerdefinierten Messwert in eine Berichtsanfrage ein. Die folgenden ist eine Beispielanfrage an die Methode runReport.
POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
"dateRanges": [{ "startDate": "30daysAgo", "endDate": "yesterday" }],
"dimensions": [{ "name": "eventName" }],
"metrics": [{ "name": "customEvent:credits_spent" }]
}
Messwerte zur Schlüsselereignisrate für ein Schlüsselereignis
Schritt 1: Metadata API abfragen Method durch Ihre Property-ID.
GET https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID/metadata
Schritt 2:Messwert für die Schlüsselereignisrate für ein relevantes Schlüsselereignis ermitteln beim Erstellen von Berichten aus der Antwort. Ist kein Schlüsselereignis vorhanden, müssen Sie den Schlüssel fest.
"metrics": [
...
{
"apiName": "sessionKeyEventRate:add_to_cart",
"uiName": "Session key event rate for add_to_cart",
"description": "The percentage of sessions in which a specific key event was triggered",
},
...
],
Schritt 3:Fügen Sie den Messwert „Schlüsselereignisrate“ in eine Berichtsanfrage ein. Die folgenden ist eine Beispielanfrage an runReport. .
POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
"dateRanges": [{ "startDate": "30daysAgo", "endDate": "yesterday" }],
"dimensions": [{ "name": "eventName" }],
"metrics": [{ "name": "sessionKeyEventRate:add_to_cart" }]
}
Durchschnittswerte benutzerdefinierter Messwerte auf Ereignisebene
Schritt 1: Methode Metadata API abfragen durch Ihre Property-ID.
GET https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID/metadata
Schritt 2:Interessanten ereignisbezogenen benutzerdefinierten Messwert ermitteln Erstellen von Berichten aus der Antwort. Ist der Messwert nicht vorhanden, müssen Sie Messwert registrieren
"metrics": [
...
{
"apiName": "averageCustomEvent:credits_spent",
"uiName": "Average Credits Spent",
"description": "The average of an event scoped custom metric for your Analytics property.",
"type": "TYPE_STANDARD"
},
...
],
Schritt 3:Fügen Sie den Durchschnitt des benutzerdefinierten Messwerts in eine Berichtsanfrage ein. Die folgenden ist eine Beispielanfrage an die Methode runReport.
POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
"dateRanges": [{ "startDate": "2020-11-01", "endDate": "2020-11-10" }],
"dimensions": [{ "name": "eventName" }],
"metrics": [{ "name": "averageCustomEvent:credits_spent" }]
}
Beispiele für Kohortenberichte
In Kohortenberichten wird eine Zeitreihe zur Nutzerbindung für die Kohorte erstellt. Für Ausführliche Dokumentation zu den einzelnen API-Feldern finden Sie in der REST-Referenz für CohortSpec
Kohortenbericht erstellen
Hier sehen Sie ein Beispiel für einen Kohortenbericht:
- Die Kohorte umfasst Nutzer mit einem
firstSessionDate
von2020-12-01
. das ist vomcohorts
-Objekt konfiguriert. Dimensionen und Messwerte im Bericht nur auf den Nutzern der Kohorte. - Der Kohortenbericht enthält drei Spalten: wird dies vom
Dimensionen und Messwertobjekten.
- Die Dimension
cohort
ist der Name der Kohorte. - Die Dimension
cohortNthDay
ist die Anzahl der Tage seit2020-12-01
. - Der Messwert
cohortActiveUsers
ist die Anzahl der noch aktiven Nutzer.
- Die Dimension
- Das Objekt
cohortsRange
gibt an, dass der Bericht Ereignisdaten enthalten soll Diese Kohorte beginnt am2020-12-01
und endet am2020-12-06
.- Wenn der Detaillierungsgrad
DAILY
verwendet wird, ist die DimensioncohortNthDay
für Einheitlichkeit empfohlen.
- Wenn der Detaillierungsgrad
Die Berichtsanfrage für die Kohorte ist:
POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
"dimensions": [{ "name": "cohort" }, { "name": "cohortNthDay" }],
"metrics": [{ "name": "cohortActiveUsers" }],
"cohortSpec": {
"cohorts": [
{
"dimension": "firstSessionDate",
"dateRange": { "startDate": "2020-12-01", "endDate": "2020-12-01" }
}
],
"cohortsRange": {
"endOffset": 5,
"granularity": "DAILY"
}
},
}
Hier ein Beispiel für eine Berichtsantwort auf diese Anfrage:
{
"dimensionHeaders": [
{ "name": "cohort" }, { "name": "cohortNthDay" }
],
"metricHeaders": [
{ "name": "cohortActiveUsers", "type": "TYPE_INTEGER" }
],
"rows": [
{
"dimensionValues": [{ "value": "cohort_0" },{ "value": "0000" }],
"metricValues": [{ "value": "293" }]
},
{
"dimensionValues": [{ "value": "cohort_0" },{ "value": "0001" }],
"metricValues": [{ "value": "143" }]
},
{
"dimensionValues": [{ "value": "cohort_0" },{ "value": "0002" }],
"metricValues": [{ "value": "123" }]
},
{
"dimensionValues": [{ "value": "cohort_0" },{ "value": "0003" }],
"metricValues": [{ "value": "92" }]
},
{
"dimensionValues": [{ "value": "cohort_0" },{ "value": "0005" }],
"metricValues": [{ "value": "86" }]
},
{
"dimensionValues": [{ "value": "cohort_0" },{ "value": "0004" }],
"metricValues": [{ "value": "83" }]
}
],
"metadata": {},
"rowCount": 6
}
Aus dieser Berichtsantwort folgt ein Diagramm für diesen Kohortenbericht. Eine Erkenntnis aus diesem Bericht ist, dass der größte Rückgang der aktiven Nutzer für diese Kohorte zwischen dem ersten und dem zweiten Tag.
Mehrere Kohorten und Anteil an der Nutzerbindung
Nutzergewinnung und -bindung sind Möglichkeiten, Ihre Website oder App auszubauen. Kohorte liegt der Schwerpunkt auf der Nutzerbindung. In diesem Beispiel wird diese Property im Bericht angezeigt. seine 4-tägige Nutzerbindung innerhalb von zwei Wochen um 10% verbessert hat.
Für diesen Bericht geben wir drei Kohorten an: Die erste mit einem
firstSessionDate
: 2020-11-02
, die zweite mit firstSessionDate
:
2020-11-09
und die dritte mit einem firstSessionDate
von 2020-11-16
. Da die
für diese drei Tage unterschiedlich sein wird,
den Messwert für den Anteil der Nutzerbindung der Kohorte
cohortActiveUsers/cohortTotalUsers
statt der direkten
Messwert cohortActiveUsers
.
Die Berichtsanforderung für diese Kohorten ist:
POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
"dimensions": [{ "name": "cohort" },{ "name": "cohortNthDay" }],
"metrics": [
{
"name": "cohortRetentionFraction",
"expression": "cohortActiveUsers/cohortTotalUsers"
}
],
"cohortSpec": {
"cohorts": [
{
"dimension": "firstSessionDate",
"dateRange": { "startDate": "2020-11-02", "endDate": "2020-11-02" }
},
{
"dimension": "firstSessionDate",
"dateRange": { "startDate": "2020-11-09", "endDate": "2020-11-09" }
},
{
"dimension": "firstSessionDate",
"dateRange": { "startDate": "2020-11-16", "endDate": "2020-11-16" }
}
],
"cohortsRange": {
"endOffset": 4,
"granularity": "DAILY"
}
},
}
Hier ein Beispiel für eine Berichtsantwort auf diese Anfrage:
{
"dimensionHeaders": [{ "name": "cohort" },{ "name": "cohortNthDay" }],
"metricHeaders": [{
"name": "cohortRetentionFraction",
"type": "TYPE_FLOAT"
}
],
"rows": [
{
"dimensionValues": [{ "value": "cohort_0" },{ "value": "0000" }],
"metricValues": [{ "value": "1" }]
},
{
"dimensionValues": [{ "value": "cohort_1" },{ "value": "0000" }],
"metricValues": [{ "value": "1" }]
},
{
"dimensionValues": [{ "value": "cohort_2" },{ "value": "0000" }],
"metricValues": [{ "value": "1" }]
},
{
"dimensionValues": [{ "value": "cohort_2" },{ "value": "0001" }],
"metricValues": [{ "value": "0.308" }]
},
{
"dimensionValues": [{ "value": "cohort_1" },{ "value": "0001" }],
"metricValues": [{ "value": "0.272" }]
},
{
"dimensionValues": [{ "value": "cohort_2" },{ "value": "0002" }],
"metricValues": [{ "value": "0.257" }]
},
{
"dimensionValues": [{ "value": "cohort_0" },{ "value": "0001" }],
"metricValues": [{ "value": "0.248" }]
},
{
"dimensionValues": [{ "value": "cohort_2" },{ "value": "0003" }],
"metricValues": [{ "value": "0.235" }]
},
{
"dimensionValues": [{ "value": "cohort_2" },{ "value": "0004" }],
"metricValues": [{ "value": "0.211" }]
},
{
"dimensionValues": [{ "value": "cohort_1" },{ "value": "0002" }],
"metricValues": [{ "value": "0.198" }]
},
{
"dimensionValues": [{ "value": "cohort_0" },{ "value": "0002" }],
"metricValues": [{ "value": "0.172" }]
},
{
"dimensionValues": [{ "value": "cohort_1" },{ "value": "0003" }],
"metricValues": [{ "value": "0.167" }]
},
{
"dimensionValues": [{ "value": "cohort_1" },{ "value": "0004" }],
"metricValues": [{ "value": "0.155" }]
},
{
"dimensionValues": [{ "value": "cohort_0" },{ "value": "0003" }],
"metricValues": [{ "value": "0.141" }]
},
{
"dimensionValues": [{ "value": "cohort_0" },{ "value": "0004" }],
"metricValues": [{ "value": "0.118" }]
}
],
"metadata": {},
"rowCount": 15
}
Aus dieser Berichtsantwort folgt ein Diagramm für diesen Kohortenbericht. Eine Erkenntnis
aus diesem Bericht, dass die 4-tägige Nutzerbindung im Vergleich zur
zwei Wochen dauert. Die spätere Kohorte mit firstSessionDate
von 2020-11-16
überschreitet die Bindung bei der früheren Kohorte mit firstSessionDate
von 2020-11-02
.
Wöchentliche Kohorten und die Verwendung von Kohorten mit anderen API-Funktionen
Verwenden Sie wöchentliche Kohorten, um Abweichungen des Nutzerverhaltens von Tag zu Tag zu entfernen. In der Woche
Kohortenberichten wurden alle Nutzer mit firstSessionDate
in derselben Woche aus dem
Kohorte. Wochen beginnen am Sonntag und enden am Samstag. In diesem Bericht
durch Aufteilung der Kohorte, um die Aktivitäten der Nutzer in Russland mit denen der Nutzer
Aktivitäten in Mexiko. Für dieses Segmentierung werden die Dimension country
und ein
dimensionFilter
, um nur die beiden Länder zu berücksichtigen.
Die Berichtsanforderung für diese Kohorten ist:
POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
"dimensions": [
{ "name": "cohort" },
{ "name": "cohortNthWeek" },
{ "name": "country" }
],
"metrics": [{ "name": "cohortActiveUsers" }],
"dimensionFilter": {
"filter": {
"fieldName": "country",
"inListFilter": {
"values": [ "Russia", "Mexico" ]
}
}
},
"cohortSpec": {
"cohorts": [
{
"dimension": "firstSessionDate",
"dateRange": {
"startDate": "2020-10-04",
"endDate": "2020-10-10"
}
}
],
"cohortsRange": {
"endOffset": 5,
"granularity": "WEEKLY"
}
},
}
Hier ein Beispiel für eine Berichtsantwort auf diese Anfrage:
{
"dimensionHeaders": [
{ "name": "cohort" },
{ "name": "cohortNthWeek" },
{ "name": "country" }
],
"metricHeaders": [
{ "name": "cohortActiveUsers", "type": "TYPE_INTEGER" }
],
"rows": [
{
"dimensionValues": [
{ "value": "cohort_0" },{ "value": "0000" },{ "value": "Russia" }
],
"metricValues": [{ "value": "105" }]
},
{
"dimensionValues": [
{ "value": "cohort_0" },{ "value": "0000" },{ "value": "Mexico" }
],
"metricValues": [{ "value": "98" }]
},
{
"dimensionValues": [
{ "value": "cohort_0" },{ "value": "0001" },{ "value": "Mexico" }
],
"metricValues": [{ "value": "35" }]
},
{
"dimensionValues": [
{ "value": "cohort_0" },{ "value": "0002" },{ "value": "Mexico" }
],
"metricValues": [{ "value": "24" }]
},
{
"dimensionValues": [
{ "value": "cohort_0" },{ "value": "0001" },{ "value": "Russia" }
],
"metricValues": [{ "value": "23" }]
},
{
"dimensionValues": [
{ "value": "cohort_0" },{ "value": "0004" },{ "value": "Mexico" }
],
"metricValues": [{ "value": "17" }]
},
{
"dimensionValues": [
{ "value": "cohort_0" },{ "value": "0003" },{ "value": "Mexico" }
],
"metricValues": [{ "value": "15" }]
},
{
"dimensionValues": [
{ "value": "cohort_0" },{ "value": "0005" },{ "value": "Mexico" }
],
"metricValues": [{ "value": "15" }]
},
{
"dimensionValues": [
{ "value": "cohort_0" },{ "value": "0002" },{ "value": "Russia" }
],
"metricValues": [{ "value": "3" }]
},
{
"dimensionValues": [
{ "value": "cohort_0" },{ "value": "0003" },{ "value": "Russia" }
],
"metricValues": [{ "value": "1" }]
},
{
"dimensionValues": [
{ "value": "cohort_0" },{ "value": "0004" },{ "value": "Russia" }
],
"metricValues": [{ "value": "1" }]
}
],
"metadata": {},
"rowCount": 11
}
Aus dieser Berichtsantwort folgt ein Diagramm dieses Kohortenberichts. Basierend auf diesem Bericht zeigt diese Property, dass Nutzer*innen mit Aktivitäten in Mexiko besser an sich binden. als Nutzer mit Aktivität in Russland.
Vergleiche
Durch Vergleiche lassen sich Teilmengen von Daten gegenüberstellen. Sie können
definieren Sie Vergleiche, indem Sie comparisons
angeben.
in einer Berichtdefinition. Die Vergleichsfunktion der Data API ist ähnlich
unter Vergleiche im Google Analytics-Front-End.
Eine ausführliche Dokumentation der einzelnen API-Felder finden Sie in der REST-Referenz für Vergleich
Vergleich erstellen
Sie können für jedes Dataset, das Sie vergleichen möchten, einen separaten Vergleich erstellen. Um beispielsweise App- und Webdaten zu vergleichen, können Sie einen Vergleich für Android- und iOS-Daten und ein weiterer Vergleich für Webdaten.
Hier sehen Sie einen Beispielbericht, in dem zwei Vergleiche definiert und aktive Nutzer zurückgegeben werden nach Ländern aufgeschlüsselt.
Der erste Vergleich mit der Bezeichnung „App-Traffic“ verwendet inListFilter
, um
entspricht der Dimension „platform
“ mit den Werten „iOS“ und „Android“. Die zweite
Vergleich namens „Webzugriffe“ verwendet stringFilter
, um platform
abzugleichen
mit „Web“.
POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
"comparisons": [
{
"name": "App traffic",
"dimensionFilter": {
"filter": {
"fieldName": "platform",
"inListFilter": {
"values": [
"iOS",
"Android"
]
}
}
}
},
{
"name": "Web traffic",
"dimensionFilter": {
"filter": {
"fieldName": "platform",
"stringFilter": {
"matchType": "EXACT",
"value": "web"
}
}
}
}
],
"dateRanges": [
{
"startDate": "2024-05-01",
"endDate": "2024-05-15"
}
],
"dimensions": [
{
"name": "country"
}
],
"metrics": [
{
"name": "activeUsers"
}
]
}
Für alle Anfragen, bei denen die Vergleichsfunktion verwendet wird, ist das Feld comparison
automatisch zum generierten Bericht hinzugefügt. Dieses Feld enthält den Namen
des Vergleichs aus der Anfrage.
Hier ist ein Beispiel-Snippet einer Antwort, die Vergleiche enthält:
{
"dimensionHeaders": [
{
"name": "comparison"
},
{
"name": "country"
}
],
"metricHeaders": [
{
"name": "activeUsers",
"type": "TYPE_INTEGER"
}
],
"rows": [
{
"dimensionValues": [
{
"value": "Web traffic"
},
{
"value": "United States"
}
],
"metricValues": [
{
"value": "638572"
}
]
},
{
"dimensionValues": [
{
"value": "Web traffic"
},
{
"value": "Japan"
}
],
"metricValues": [
{
"value": "376578"
}
]
},
{
"dimensionValues": [
{
"value": "App traffic"
},
{
"value": "United States"
}
],
"metricValues": [
{
"value": "79527"
}
]
},
...
],
...
}