Rapor görevlerini kullanarak Google Analytics etkinlik verilerinizin özelleştirilmiş bir raporunu oluşturmak için uzun süren bir eşzamansız istek başlatabilirsiniz.
Bu istekten oluşturulan Report Task kaynağı, Google Analytics mülkünüze okuma erişimi olan tüm kullanıcılar tarafından özelleştirilmiş raporlara erişmek için kullanılabilir.
Özelleştirilmiş raporlar, hazır olduktan sonra 72 saat boyunca kullanılabilir. Bu sürenin sonunda, ilgili rapor görevi kaynağı ve içeriği otomatik olarak silinir.
Rapor Görevi Oluşturma
Google Analytics Data API v1, Rapor Görevleri oluşturmak için eşzamansız bir yaklaşım kullanır. Öncelikle bir rapor görevi oluşturmak için reportTasks.create yöntemine istekte bulunmak gerekir. Ardından, oluşturulan özelleştirilmiş raporu almak için
reportTasks.query
yöntemi kullanılır.
Ayrıca, belirli bir rapor göreviyle ilgili yapılandırma meta verilerini almak için
reportTasks.get
ve bir mülkle ilgili tüm rapor görevlerini listelemek için
reportTasks.list
kullanabilirsiniz.
Raporlama birimi seçin
Data API v1'in tüm yöntemlerinde, Google Analytics mülk tanımlayıcısının bir URL istek yolunda properties/GA_PROPERTY_ID biçiminde belirtilmesi gerekir. Örneğin:
POST https://analyticsdata.googleapis.com/v1alpha/properties/GA_PROPERTY_ID/reportTasks
Rapor, belirtilen Google Analytics mülkünde toplanan Google Analytics etkinlik verilerine göre oluşturulur.
Data API istemci kitaplıklarından birini kullanıyorsanız istek URL'si yolunu manuel olarak değiştirmeniz gerekmez.
Çoğu API istemcisi, property biçiminde bir dize bekleyen bir properties/GA_PROPERTY_ID parametresi sağlar.
İstemci kitaplıklarını kullanma örnekleri için Hızlı başlangıç kılavuzu'na bakın.
Rapor görevini oluşturma isteğinde bulunma
Rapor görevi oluşturmak için istekte ReportTask nesnesini kullanarak reportTasks.create yöntemini çağırın. Aşağıdaki parametreler gereklidir:
reportDefinitionÖzelleştirilmiş bir raporun tanımını açıklayan alan. Bu parametrenin yapısı, Temel Raporlama yöntemleri tarafından kullanılan rapor tanımına benzer.
Örnek rapor görevi oluşturma isteği:
HTTP İsteği
POST https://analyticsdata.googleapis.com/v1alpha/properties/1234567/reportTasks
{
"reportDefinition": {
"dateRanges": [{ "startDate": "2024-05-01"", "endDate": "2024-05-15" }],
"dimensions": [{ "name": "country" }],
"metrics": [{ "name": "activeUsers" }]
}
}
reportTasks.create yönteminin yanıtı, name alanında Rapor Görevi adını (ör. properties/1234567/reportTasks/123) içerir. Bu ad, Rapor Görevi'nin durumunu almak ve sonuç raporunu almak için sonraki sorgularda kullanılabilir.
HTTP Yanıtı
{
"response": {
"@type": "type.googleapis.com/google.analytics.data.v1alpha.ReportTask",
"name": "properties/1234567/reportTasks/123",
"reportDefinition": {
"dimensions": [
{
"name": "country"
}
],
"metrics": [
{
"name": "activeUsers"
}
],
"dateRanges": [
{
"startDate": "2024-05-01",
"endDate": "2024-05-15"
}
]
},
"reportMetadata": {
"state": "CREATING",
"beginCreatingTime": "2024-05-16T00:00:01.133612336Z"
}
}
}
Rapor Görevi hazırlık durumunu alma
reportTasks.create
çağrısından sonra raporun oluşturulması birkaç dakika sürebilir. reportTasks.get yöntemini çağırarak bir rapor görevinin hazır olma durumunu elde edebilirsiniz.
Rapor Görevi'ni belirtmek için reportTasks.create yanıtından aldığınız Rapor Görevi adını (ör. properties/1234567/reportTasks/123) kullanın.
Örnek:
HTTP İsteği
GET https://analyticsdata.googleapis.com/v1alpha/properties/1234567/reportTasks/123
Rapor Görevi'nin hazırlık durumu, yanıtın state alanında döndürülür. Rapor oluşturma işlemi tamamlandıktan sonra,
bir rapor görevinin durumu CREATING'dan ACTIVE'ye değişir.
reportMetadata alanı, oluşturulan raporla ilgili üst düzey bilgileri (ör. satır sayısı ve kullanılan kota jetonlarının miktarı) içerir.
HTTP Yanıtı
{
"reportDefinition": {
"dimensions": [
{
"name": "country"
}
],
"metrics": [
{
"name": "activeUsers"
}
],
"dateRanges": [
{
"startDate": "2024-05-01",
"endDate": "2024-05-15"
}
]
},
"reportMetadata": {
"state": "ACTIVE",
"beginCreatingTime": "2024-05-16T00:00:01.133612336Z",
"creationQuotaTokensCharged": 6,
"taskRowCount": 167,
"errorMessage": "",
"totalRowCount": 167
}
}
reportTasks.list yöntemini çağırarak tüm rapor görevlerinin durumunu alabilirsiniz.
Oluşturulan raporu alma
reportTasks.create yöntemi kullanılarak oluşturulan rapor görevi oluşturulduktan sonra reportTasks.query yöntemini çağırın ve rapor görevi adını (ör. properties/1234567/reportTasks/123) belirtin.
HTTP İsteği
POST https://analyticsdata.googleapis.com/v1alpha/properties/1234567/reportTasks/123:query
Rapor Görevi hazırsa oluşturulan raporu içeren bir yanıt döndürülür:
HTTP Yanıtı
{
"dimensionHeaders": [
{
"name": "country"
}
],
"metricHeaders": [
{
"name": "activeUsers",
"type": "TYPE_INTEGER"
}
],
"rows": [
...
],
"rowCount": 167,
"metadata": {
"currencyCode": "USD",
"timeZone": "America/Los_Angeles"
}
}