Entwicklerleitfaden für Gesamtdatenberichte

Mit der Google Analytics Management API können Sie programmatisch Gesamtdatenberichte erstellen.

Einführung

Gesamtdatenberichte sind Google Analytics-Berichte, die auf der Grundlage von Gesamtdatenberichten erstellt wurden. Gesamtdatenberichte stehen derzeit nur Google Analytics 360-Nutzern zur Verfügung.

Mit dieser API können Sie:

  • Konfigurationsinformationen über alle vorhandenen Gesamtdatenberichte abrufen und einmalige Gesamtdatenberichte erstellen
  • Verarbeitungsstatus von Gesamtdatenberichten überprüfen
  • Rufen Sie nach Abschluss der Verarbeitung einen Link zur Datendatei für einen Gesamtdatenbericht ab.
  • Gesamtdatenberichte löschen

Daten für Gesamtdatenberichte abrufen

Wenn Sie einen Gesamtdatenbericht erstellen, kann es einige Zeit dauern, bis er heruntergeladen werden kann. Im Feld status eines Gesamtdatenberichts wird angegeben, ob die Verarbeitung für diesen Bericht abgeschlossen ist. Sobald der Status als COMPLETED gekennzeichnet ist, können Sie die Datei mit den Berichtsdaten mithilfe von downloadType und dem entsprechenden Feld mit den Downloaddetails abrufen. Beispiel:

Verwenden Sie keine kontinuierliche Abfrage mit hoher Rate, um den Status dieser Berichte zu überprüfen, da Sie Ihr tägliches Kontingent wahrscheinlich schnell erschöpfen werden. Zwischen den Anfragen sollte eine gewisse Zeit zwischen den Anfragen liegen, wenn Sie den Status von Gesamtdatenberichten prüfen.

Google Drive / Google Cloud Storage API verwenden

Je nachdem, wohin Ihre Dateien übermittelt werden (Google Drive oder Google Cloud Storage), erhalten Sie einen entsprechenden Link für diese Datei. Sie können die Drive API oder die Cloud Storage API verwenden, um die Datei über diesen Link herunterzuladen. Weitere Informationen zum Abrufen der Datei finden Sie in der Dokumentation zur Google Drive API oder zur Google Cloud Storage API.

Ist Ihr Gesamtdatenbericht beispielsweise in Google Drive gespeichert, können Sie eine autorisierte HTTP-GET-Anfrage an die Ressourcen-URL der Datei senden und den Abfrageparameter alt=media verwenden.

GET /drive/v2/files/XXXXXX?alt=media
Host: www.googleapis.com
Content-length: 0
Authorization: Bearer ya29.AHESVbXTUv5mHMo3RYfmS1YJonjzzdTOFZwvyOAUVhrs

Dabei steht XXXXXX für den Gesamtdatenbericht driveDownloadDetails.documentId.

Authentifizierung

Wenn Sie den Gesamtdatenbericht in Verbindung mit Drive oder Cloud Storage APIs für Dateidownloads verwenden möchten, müssen Sie beim Anfordern eines OAuth 2.0-Tokens den entsprechenden Authentifizierungsbereich für diese API angeben (zusätzlich zum Authentifizierungsbereich der Analytics API). Dadurch können Sie für beide APIs dasselbe Authentifizierungstoken verwenden.

Gesamtdatenberichte löschen

Sie können geplante oder abgeschlossene Gesamtdatenberichte löschen. Wenn Sie delete jedoch kurz während der Erstellung des Berichts aufrufen, wird ein Fehler ausgegeben. Wenn Sie Gesamtdatenberichte löschen, wird die Ressource nur aus Ihrer GA-Datenansicht (Profil) entfernt. Die exportierten Daten in Google Drive oder Google Cloud Storage bleiben erhalten.

Einschränkungen

Für Gesamtdatenberichte gelten folgende Einschränkungen:

  • Sie können maximal vier Dimensionen angeben.
  • Einige Berichtsdaten werden nicht unterstützt, z. B. Google Ads-Daten.
  • Abfragen, die als zu teuer eingestuft werden, werden nicht unterstützt.
  • Wenn Sie zu viele Gesamtdatenberichte erstellt haben und das Limit erreicht haben, können Sie die Gesamtdatenberichtsressourcen bedenkenlos löschen. Die generierten Berichtsdaten in Google Drive oder Google Cloud bleiben unverändert.

Wenn festgestellt wird, dass Ihre Anfrage zu teuer ist, gibt der Erstellungsvorgang einen Fehler mit einer entsprechenden Meldung zurück. In diesem Fall haben Sie folgende Möglichkeiten:

  • Fordern Sie weniger Dimensionen an.
  • Die Abfrage in mehrere Abfragen mit kürzeren Zeiträumen aufteilen und die daraus resultierenden Berichte zusammenfügen

Anwendungsbereiche

Gesamtdatenberichte und die Core Reporting API

Wenn Sie die Core Reporting API zum Abrufen von Berichtsdaten verwenden und diese Beispieldaten enthält, können Sie einen Gesamtdatenbericht für die gleiche Abfrage wie folgt erstellen:

  1. Stellen Sie eine Core Reporting API-Anfrage.
  2. Prüfen Sie in der Antwort das Attribut „containsSampledData“, um festzustellen, ob für die Daten eine Stichprobe erhoben wurde.
  3. Wenn diese Property auf „true“ gesetzt ist, können Sie Anfrage- und ProfileInfo-Felder aus derselben Antwort verwenden, um eine Anfrage für einen Gesamtdatenbericht zu erstellen.

Beispiel für ein Abfragefeld aus der Antwort der Core Reporting API:

"query": {
  "start-date": "2011-01-01",
  "end-date": "2011-01-31",
  "ids": "ga:1234",
  "dimensions": "ga:browser",
  "metrics": [
  "ga:visits"
  ],
  "filters": "ga:country==US",
  "start-index": 1,
  "max-results": 1000
}

Beispiel für ein profileInfo-Feld aus der Antwort der Core Reporting API:

"profileInfo": {
  "profileId": "1234",
  "accountId": "12345",
  "webPropertyId": "UA-12345-1",
  "internalWebPropertyId": "11254",
  "profileName": "Name of the profile",
  "tableId": "ga:1234"
}

Das folgende Beispiel zeigt, wie Sie einen Gesamtdatenbericht aus einer Core Reporting API-Antwort erstellen:

Java

// Make a Core Reporting API call.
GaData reportingApiData = v3.data().ga().get(...).execute();

// Check if the response is sampled.
if (reportingApiData.getContainsSampledData()) {

  // Use the “query” object to construct an unsampled report object.
  Query query = reportingApiData.getQuery();
  UnsampledReport report = new UnsampledReport()
      .setDimensions(query.getDimensions())
      .setMetrics(Joiner.on(',').join(query.getMetrics()))
      .setStartDate(startDate)
      .setEndDate(endDate)
      .setSegment(query.getSegment())
      .setFilters(query.getFilters())
      .setTitle(“My unsampled report”);

  // Use “profileInfo” to create an InsertRequest for creating an
  // unsampled report.
  ProfileInfo profileInfo = reportingApiData.getProfileInfo();
  Insert insertRequest = analytics.management().unsampledReports()
  .insert(profileInfo.getAccountId(),
          profileInfo.getWebPropertyId(),
          profileInfo.getProfileId(),
          report);
  UnsampledReport createdReport = insertRequest.execute();
}

Zusammenfügen von Gesamtdaten für mehrere Tage

Sie können Berichte für mehrere Tage kombinieren oder zusammenfügen, um Daten ohne Stichproben für einen bestimmten Zeitraum zu erhalten. Dies ist nützlich, wenn eine Gesamtdatenanfrage zu groß ist. In solchen Fällen können Sie die Anfrage in mehrere Anfragen mit einem kürzeren Zeitraum aufteilen und dann die Ergebnisse kombinieren.

Kontingentrichtlinie

Unter Limits und Kontingente für die Configuration and Reporting API finden Sie eine vollständige Liste der Limits und Kontingente, die beim Erstellen von Gesamtdatenberichten gelten.