Rapor görevlerini kullanarak Google Analytics etkinlik verilerinizin Özel Raporunu oluşturmak için uzun süren bir asenkron istek başlatabilirsiniz.
Bu istekten oluşturulan rapor görevi kaynağı, Google Analytics mülkünüze okuma erişimi olan tüm kullanıcılar tarafından özel raporlara erişmek için kullanılabilir.
Özel rapor, hazır olduktan sonra 72 saat boyunca kullanılabilir. Bu sürenin ardından 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 istek göndermeniz 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 öğesi seçme
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 parametresini sağlar. Bu parametre, properties/GA_PROPERTY_ID biçiminde bir dize bekler.
İstemci kitaplıklarını kullanma örnekleri için Hızlı başlangıç kılavuzu'na bakın.
Rapor görevi 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:
- Özelleştirilmiş bir raporun tanımını açıklayan
reportDefinitionalanı. 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örevinin 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örevine hazırlık durumunu alma
reportTasks.create
görüşmesinden sonra raporun oluşturulması birkaç dakika sürebilir. reportTasks.get yöntemini çağırarak bir rapor görevinin hazırlık durumunu elde edebilirsiniz.
Rapor görevini belirtmek için reportTasks.create yanıtından aldığınız rapor görev adını (ör. properties/1234567/reportTasks/123) kullanın.
Örnek:
HTTP İsteği
GET https://analyticsdata.googleapis.com/v1alpha/properties/1234567/reportTasks/123
Bir rapor görevinin hazırlık durumu, yanıtın state alanında döndürülür. Rapor oluşturma işlemi tamamlandıktan sonra rapor görevinin durumu CREATING'dan ACTIVE'a 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şturulduğunda 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"
}
}