การใช้ฟังก์ชันงานรายงานช่วยให้คุณเริ่มคำขอแบบอะซิงโครนัสที่ใช้เวลานานเพื่อสร้างรายงานที่กำหนดเองของข้อมูลเหตุการณ์ Google Analytics ได้
ผู้ใช้ทุกคนที่มีสิทธิ์เข้าถึงแบบอ่านพร็อพเพอร์ตี้ Google Analytics สามารถใช้ทรัพยากรฟังก์ชันงานรายงานที่สร้างขึ้นจากคำขอนี้เพื่อเข้าถึงรายงานที่กำหนดเองได้
รายงานที่กำหนดเองจะพร้อมใช้งานเป็นเวลา 72 ชั่วโมงหลังจากที่สร้างเสร็จ หลังจากช่วงเวลานี้ ระบบจะลบทรัพยากรฟังก์ชันงานรายงานที่เกี่ยวข้องและเนื้อหาของทรัพยากรนั้นโดยอัตโนมัติ
สร้างฟังก์ชันงานรายงาน
Google Analytics Data API v1 ใช้แนวทางแบบอะซิงโครนัสเพื่อสร้างฟังก์ชันงานรายงาน ขั้นแรก คุณต้องส่งคำขอไปยังเมธอด
reportTasks.create
เพื่อสร้างฟังก์ชันงานรายงาน จากนั้นใช้เมธอด
reportTasks.query
เพื่อดึงข้อมูลรายงานที่กำหนดเองที่สร้างขึ้น
นอกจากนี้ คุณยังใช้
reportTasks.get
เพื่อดึงข้อมูลเมตาของการกำหนดค่าเกี่ยวกับฟังก์ชันงานรายงานที่เฉพาะเจาะจง และใช้
reportTasks.list
เพื่อแสดงฟังก์ชันงานรายงานทั้งหมดสำหรับพร็อพเพอร์ตี้ได้
เลือกเอนทิตีการรายงาน
เมธอดทั้งหมดของ Data API v1 กำหนดให้ระบุ
ตัวระบุพร็อพเพอร์ตี้ Google Analytics
ภายในเส้นทางคำขอ URL ในรูปแบบ
properties/GA_PROPERTY_ID เช่น
POST https://analyticsdata.googleapis.com/v1alpha/properties/GA_PROPERTY_ID/reportTasks
ระบบจะสร้างรายงานตามข้อมูลเหตุการณ์ Google Analytics ที่รวบรวมในพร็อพเพอร์ตี้ Google Analytics ที่ระบุ
หากคุณใช้ไลบรารีของไคลเอ็นต์ Data API
ไม่จำเป็นต้องจัดการเส้นทาง URL ของคำขอด้วยตนเอง
ไคลเอ็นต์ API ส่วนใหญ่มีพารามิเตอร์ property ที่คาดหวังสตริงในรูปแบบ properties/GA_PROPERTY_ID
ดูตัวอย่างการใช้ไลบรารีของไคลเอ็นต์ได้ในคู่มือเริ่มต้นใช้งานฉบับย่อสำหรับตัวอย่าง
ส่งคำขอสร้างฟังก์ชันงานรายงาน
หากต้องการสร้างฟังก์ชันงานรายงาน ให้เรียกใช้
reportTasks.create
เมธอดโดยใช้
ReportTask
ออบเจ็กต์ในคำขอ พารามิเตอร์ต่อไปนี้จำเป็นต้องระบุ
reportDefinitionฟิลด์ซึ่งอธิบายคำจำกัดความของรายงานที่กำหนดเอง โครงสร้างของพารามิเตอร์นี้ คล้ายกับคำจำกัดความของรายงานที่เมธอดการรายงานหลักใช้
ตัวอย่างคำขอสร้างฟังก์ชันงานรายงาน
คำขอ HTTP
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 จะมีชื่อฟังก์ชันงานรายงานในฟิลด์ name (เช่น properties/1234567/reportTasks/123) ซึ่งสามารถใช้ในคําค้นหาในภายหลังเพื่อดูสถานะของฟังก์ชันงานรายงานและดึงข้อมูลรายงานที่ได้
การตอบสนองของ HTTP
{
"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"
}
}
}
ดูสถานะความพร้อมของฟังก์ชันงานรายงาน
ระบบอาจใช้เวลาหลายนาทีในการสร้างรายงานหลังจากเรียกใช้
reportTasks.create
คุณดูสถานะความพร้อมของฟังก์ชันงานรายงานได้โดยเรียกใช้เมธอด
reportTasks.get
ใช้ชื่อฟังก์ชันงานรายงาน (เช่น properties/1234567/reportTasks/123) ที่ได้รับจากการตอบสนอง reportTasks.create เพื่อระบุฟังก์ชันงานรายงาน
ตัวอย่าง
คำขอ HTTP
GET https://analyticsdata.googleapis.com/v1alpha/properties/1234567/reportTasks/123
ระบบจะแสดงสถานะความพร้อมของฟังก์ชันงานรายงานใน
state
ฟิลด์ของการตอบสนอง เมื่อสร้างรายงานเสร็จแล้ว สถานะของฟังก์ชันงานรายงานจะเปลี่ยนจาก CREATING เป็น ACTIVE
ฟิลด์ reportMetadata
จะมีข้อมูลระดับสูงเกี่ยวกับรายงานที่สร้างขึ้น เช่น
จำนวนแถวและจำนวนโทเค็นโควต้าที่เรียกเ��็บ
การตอบสนองของ HTTP
{
"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
เมธอด
ดึงข้อมูลรายงานที่สร้างขึ้น
เมื่อสร้างฟังก์ชันงานรายงานโดยใช้เมธอด
reportTasks.create
แล้ว ให้เรียกใช้เมธอด
reportTasks.query
และระบุชื่อฟังก์ชันงานรายงาน
(เช่น properties/1234567/reportTasks/123)
คำขอ HTTP
POST https://analyticsdata.googleapis.com/v1alpha/properties/1234567/reportTasks/123:query
หากฟังก์ชันงานรายงานพร้อมแล้ว ระบบจะแสดงการตอบสนองที่มีรายงานที่สร้างขึ้น
การตอบสนองของ HTTP
{
"dimensionHeaders": [
{
"name": "country"
}
],
"metricHeaders": [
{
"name": "activeUsers",
"type": "TYPE_INTEGER"
}
],
"rows": [
...
],
"rowCount": 167,
"metadata": {
"currencyCode": "USD",
"timeZone": "America/Los_Angeles"
}
}