ต้องมีการให้สิทธิ์
ค้นหาข้อมูลการเข้าชมจากการค้นหาด้วยตัวกรองและพารามิเตอร์ที่คุณกำหนด เมธอดจะแสดงผลแถว 0 แถวขึ้นไปที่จัดกลุ่มตามคีย์แถว (มิติข้อมูล) ที่คุณกำหนด คุณต้องกำหนดช่วงวันที่อย่างน้อย 1 วัน
เมื่อวันที่เป็นหนึ่งในมิติข้อมูล ระบบจะละเว้นวันที่ไม่มีข้อมูลออกจากรายการผลลัพธ์ หากต้องการทราบว่าวันใดมีข้อมูล ให้ส่งการค้นหาที่ไม่มีตัวกรองซึ่งจัดกลุ่มตามวันที่สำหรับช่วงวันที่ที่สนใจ
ผลลัพธ์จะจัดเรียงตามจำนวนคลิกจากมากไปน้อย หาก 2 แถวมีจำนวนคลิกเท่ากัน ระบบจะจัดเรียงแถวเหล่านั้นด้วยวิธีที่กำหนดเอง
ดูตัวอย่าง Python สำหรับการเรียกใช้เมธอดนี้
API มีข้อจำกัดภายในของ Search Console และไม่รับประกันว่าจะแสดงแถวข้อมูลทั้งหมด แต่จะแสดงแถวข้อมูลด้านบนแทน
ดูขีดจำกัดของปริมาณข้อมูลที่พร้อมใช้งาน
POST https://www.googleapis.com/webmasters/v3/sites/https%3A%2F%2Fwww.example.com%2F/searchAnalytics/query?key={MY_API_KEY} { "startDate": "2015-04-01", "endDate": "2015-05-01", "dimensions": ["country","device"] }
ส่งคำขอ
คำขอ HTTP
POST https://www.googleapis.com/webmasters/v3/sites/siteUrl/searchAnalytics/query
พารามิเตอร์
ชื่อพารามิเตอร์ | ค่า | คำอธิบาย |
---|---|---|
พารามิเตอร์เส้นทาง | ||
siteUrl |
string |
URL ของพร็อพเพอร์ตี้ตามที่กําหนดไว้ใน Search Console ตัวอย่าง:
http://www.example.com/ (สำหรับพร็อพเพอร์ตี้ที่มีคำนำหน้าเป็น URL) หรือ
sc-domain:example.com (สำหรับพร็อพเพอร์ตี้โดเมน)
|
การให้สิทธิ์
คำขอนี้ต้องมีการให้สิทธิ์ที่มีขอบเขตอย่างน้อย 1 รายการต่อไปนี้ (ดูข้อมูลเพิ่มเติมเกี่ยวกับการตรวจสอบสิทธิ์และการให้สิทธิ์)
ขอบเขต |
---|
https://www.googleapis.com/auth/webmasters.readonly |
https://www.googleapis.com/auth/webmasters |
เนื้อความของคำขอ
ในเนื้อหาคำขอ ให้ระบุข้อมูลที่มีโครงสร้างดังต่อไปนี้
{ "startDate": string, "endDate": string, "dimensions": [ string ], "type": string, "dimensionFilterGroups": [ { "groupType": string, "filters": [ { "dimension": string, "operator": string, "expression": string } ] } ], "aggregationType": string, "rowLimit": integer, "startRow": integer }
ชื่อพร็อพเพอร์ตี้ | ค่า | คำอธิบาย | หมายเหตุ |
---|---|---|---|
startDate |
string |
[ต้องระบุ] วันที่เริ่มต้นของช่วงวันที่ที่ขอในรูปแบบ ปปปป-ดด-วว ในเวลา PT (UTC - 7:00/8:00) ต้องน้อยกว่าหรือเท่ากับวันที่สิ้นสุด ค่านี้จะรวมอยู่ในช่วง | |
endDate |
string |
[ต้องระบุ] วันที่สิ้นสุดของช่วงวันที่ที่ขอ ในรูปแบบ YYYY-MM-DD ในเวลา PT (UTC - 7:00/8:00) ต้องมากกว่าหรือเท่ากับวันที่เริ่มต้น ค่านี้จะรวมอยู่ในช่วง | |
dimensions[] |
list |
[ไม่บังคับ] มิติข้อมูลตั้งแต่ 0 รายการขึ้นไปเพื่อจัดกลุ่มผลลัพธ์ ระบบจะจัดกลุ่มผลลัพธ์ตามลำดับที่คุณระบุในมิติข้อมูลเหล่านี้ คุณสามารถใช้ชื่อมิติข้อมูลใดก็ได้ใน dimensionFilterGroups[].filters[].dimension รวมถึง "วันที่" และ "ชั่วโมง" ระบบจะรวมค่ามิติข้อมูลการจัดกลุ่มเพื่อสร้างคีย์ที่ไม่ซ้ำกันสำหรับแถวผลลัพธ์แต่ละแถว หากไม่ได้ระบุมิติข้อมูล ระบบจะรวมค่าทั้งหมดไว้ในแถวเดียว คุณจัดกลุ่มตามมิติข้อมูลได้ไม่จำกัดจำนวน แต่จะจัดกลุ่มตามมิติข้อมูลเดียวกัน 2 ครั้งไม่ได้ ตัวอย่าง: [ประเทศ, อุปกรณ์] | |
searchType |
string |
เลิกใช้งานแล้ว ให้ใช้ type แทน
|
|
type |
string |
[ไม่บังคับ] กรองผลลัพธ์เป็นประเภทต่อไปนี้
|
|
dimensionFilterGroups[] |
list |
[ไม่บังคับ] กลุ่มตัวกรองตั้งแต่ 0 กลุ่มขึ้นไปที่จะใช้กับค่าการจัดกลุ่มมิติข้อมูล กลุ่มตัวกรองทั้งหมดต้องตรงกันเพื่อให้ระบบแสดงแถวในคำตอบ ภายในกลุ่มตัวกรองเดียว คุณสามารถระบุได้ว่าตัวกรองทั้งหมดต้องตรงกัน หรืออย่างน้อย 1 รายการต้องตรงกัน | |
dimensionFilterGroups[].groupType |
string |
ไม่ว่าตัวกรองทั้งหมดในกลุ่มนี้จะต้องแสดงผลเป็นจริง ("และ") หรือตัวกรองอย่างน้อย 1 รายการจะต้องแสดงผลเป็นจริง (ยังไม่รองรับ)
ค่าที่ยอมรับมีดังนี้
|
|
dimensionFilterGroups[].filters[] |
list |
[ไม่บังคับ] ตัวกรองตั้งแต่ 0 รายการขึ้นไปที่จะทดสอบกับแถว ตัวกรองแต่ละรายการประกอบด้วย
ชื่อมิติข้อมูล โอเปอเรเตอร์ และค่า ความยาวสูงสุด 4,096 อักขระ ตัวอย่าง
country equals FRA query contains mobile use device notContains tablet |
|
dimensionFilterGroups[].filters[].dimension |
string |
มิติข้อมูลที่ตัวกรองนี้ใช้ คุณกรองตามมิติข้อมูลใดก็ได้ที่แสดงที่นี่ แม้ว่าจะไม่ได้จัดกลุ่มตามมิติข้อมูลนั้นก็ตาม
ค่าที่ยอมรับมีดังนี้
|
|
dimensionFilterGroups[].filters[].operator |
string |
[ไม่บังคับ] ค่าที่ระบุต้องตรง (หรือไม่ตรง) กับค่ามิติข้อมูลของแถวอย่างไร
ค่าที่ยอมรับมีดังนี้
|
|
dimensionFilterGroups[].filters[].expression |
string |
ค่าสำหรับตัวกรองที่จะจับคู่หรือยกเว้น ขึ้นอยู่กับโอเปอเรเตอร์ | |
aggregationType |
string |
[ไม่บังคับ] วิธีการรวบรวมข้อมูล หากรวบรวมตามพร็อพเพอร์ตี้ ระบบจะรวบรวมข้อมูลทั้งหมดสำหรับพร็อพเพอร์ตี้เดียวกัน หากรวบรวมตามหน้าเว็บ ระบบจะรวบรวมข้อมูลทั้งหมดตาม URI Canonical หากกรองหรือจัดกลุ่มตามหน้าเว็บ ให้เลือก "อัตโนมัติ" มิฉะนั้นคุณจะรวบรวมข้อมูลตามพร็อพเพอร์ตี้หรือตามหน้าเว็บก็ได้ ทั้งนี้ขึ้นอยู่กับวิธีที่คุณต้องการให้ระบบคำนวณข้อมูล โปรดดูเอกสารประกอบความช่วยเหลือ เพื่อดูวิธีที่ระบบคำนวณข้อมูลแตกต่างกันตามเว็บไซต์เทียบกับตามหน้าเว็บ หมายเหตุ: หากจัดกลุ่มหรือกรองตามหน้าเว็บ คุณจะรวมตามพร็อพเพอร์ตี้ไม่ได้ หากคุณระบุค่าอื่นที่ไม่ใช่ "อัตโนมัติ" ประเภทการรวบรวมในผลลัพธ์จะตรงกับประเภทที่ขอ หรือหากคุณขอประเภทที่ไม่ถูกต้อง คุณจะได้รับข้อผิดพลาด API จะไม่เปลี่ยนประเภทการรวบรวมหากประเภทที่ขอไม่ถูกต้อง ค่าที่ยอมรับมีดังนี้
|
|
rowLimit |
integer |
[ไม่บังคับ ช่วงที่ถูกต้องคือ 1–25,000 ค่าเริ่มต้นคือ 1,000] จำนวนแถวสูงสุดที่จะแสดงผล หากต้องการเลื่อนดูผลลัพธ์ ให้ใช้startRow ออฟเซ็ต |
|
startRow |
integer |
[ไม่บังคับ ค่าเริ่มต้นคือ 0] ดัชนีที่อิงตาม 0 ของแถวแรกในการตอบกลับ ต้องเป็นตัวเลขที่ไม่ใช่ค่าลบ หาก startRow เกินจำนวนผลลัพธ์สำหรับการค้นหา การตอบกลับจะเป็นการตอบกลับที่สำเร็จโดยไม่มีแถว |
|
dataState |
string |
[ไม่บังคับ] หากเป็น "all" (ไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่) ข้อมูลจะรวมข้อมูลล่าสุด หากเป็น "final" (ไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่) หรือหากละเว้นพารามิเตอร์นี้ ข้อมูลที่แสดงจะรวมเฉพาะข้อมูลที่สรุปแล้ว หากเป็น "hourly_all" (ไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่) ข้อมูลจะมีรายละเอียดรายชั่วโมง ซึ่งจะเป็นข้อบ่งชี้ว่าข้อมูลรายชั่วโมงมีข้อมูลบางส่วน และควรใช้เมื่อจัดกลุ่มตามมิติข้อมูล API ของชั่วโมง |
การตอบกลับ
ระบบจะจัดกลุ่มผลลัพธ์ตามมิติข้อมูลที่ระบุในคำขอ ระบบจะจัดกลุ่มค่าทั้งหมดที่มีชุดค่ามิติข้อมูลเดียวกันไว้ในแถวเดียว เช่น หากจัดกลุ่มตามมิติข้อมูลประเทศ ผลลัพธ์ทั้งหมดของ "usa" จะได้รับการจัดกลุ่มไว้ด้วยกัน ผลลัพธ์ทั้งหมดของ "mdv" จะได้รับการจัดกลุ่มไว้ด้วยกัน และอื่นๆ หากจัดกลุ่มตามประเทศและอุปกรณ์ ระบบจะจัดกลุ่มผลลัพธ์ทั้งหมดสำหรับ "สหรัฐอเมริกา, แท็บเล็ต" จัดกลุ่มผลลัพธ์ทั้งหมดสำหรับ "สหรัฐอเมริกา, อุปกรณ์เคลื่อนที่" และอื่นๆ ดูรายละเอียดวิธีคํานวณการคลิก การแสดงผล และอื่นๆ รวมถึงความหมายของข้อมูลดังกล่าวได้ในเอกสารประกอบรายงานการวิเคราะห์การค้นหา
ระบบจะจัดเรียงผลลัพธ์ตามจํานวนการคลิกจากมากไปน้อย เว้นแต่คุณจะจัดกลุ่มตามวันที่ ในกรณีนี้ระบบจะจัดเรียงผลลัพธ์ตามวันที่จากน้อยไปมาก (เก่าสุดก่อน ใหม่สุดทีหลัง) หาก 2 แถวมีค่าเท่ากัน ระบบจะกำหนดลำดับการจัดเรียงโดยพลการ
ดูพร็อพเพอร์ตี้ rowLimit ในคำขอเพื่อดูจำนวนค่าสูงสุดที่แสดงผลได้
{ "rows": [ { "keys": [ string ], "clicks": double, "impressions": double, "ctr": double, "position": double } ], "responseAggregationType": string }
ชื่อพร็อพเพอร์ตี้ | ค่า | คำอธิบาย | หมายเหตุ |
---|---|---|---|
rows[] |
list |
รายการแถวที่จัดกลุ่มตามค่าคีย์ตามลำดับที่ระบุในการค้นหา | |
rows[].keys[] |
list |
รายการค่ามิติข้อมูลสำหรับแถวนั้น ซึ่งจัดกลุ่มตามมิติข้อมูลในคำขอ ตามลำดับที่ระบุในคำขอ | |
rows[].clicks |
double |
คลิกจำนวนของแถว | |
rows[].impressions |
double |
จำนวนการแสดงผลของแถว | |
rows[].ctr |
double |
อัตราการคลิกผ่าน (CTR) ของแถว ค่าที่ใช้ได้คือตั้งแต่ 0 ถึง 1.0 | |
rows[].position |
double |
อันดับเฉลี่ยในผลการค้นหา | |
responseAggregationType |
string |
วิธีรวบรวมผลลัพธ์ ดูเอกสารประกอบความช่วยเหลือเพื่อดูวิธีคำนวณข้อมูลที่แตกต่างกันตามเว็บไซต์เทียบกับตามหน้าเว็บ
ค่าที่ยอมรับมีดังนี้
|
|
metadata |
object |
ออบเจ็กต์ที่อาจแสดงพร้อมกับผลการค้นหาของคุณ โดยให้บริบทเกี่ยวกับ สถานะของข้อมูล เมื่อคุณขอข้อมูลล่าสุด (โดยใช้ วันที่และเวลาทั้งหมดที่ระบุในออบเจ็กต์นี้อยู่ในเขตเวลา ฟิลด์ที่เฉพาะเจาะจงซึ่งแสดงผลภายในออบเจ็กต์นี้ขึ้นอยู่กับวิธีจัดกลุ่มข้อมูลในคำขอ ดังนี้
|
ลองใช้งาน
ใช้โปรแกรมสำรวจ API ด้านล่างเพื่อเรียกเมธอดนี้ในข้อมูลสดและดูการตอบกลับ