คู่มือนี้อธิบายความแตกต่างระหว่าง v1 กับ v2 ของ Postmaster Tools API และวิธีโอนแอปพลิเคชัน v1 ไปยัง v2
ภาพรวม
Postmaster Tools API เวอร์ชัน 2 มีฟีเจอร์ใหม่หลายอย่างและรวมฟังก์ชันการทำงานที่มีอยู่สำหรับการเรียกข้อมูลสถิติอีเมล โดย v2 ช่วยให้คุณทำสิ่งต่อไปนี้ได้
- เรียกข้อมูลสถิติในช่วงวันที่แทนที่จะเป็นรายวัน
- ค้นหาสถานะการปฏิบัติตามข้อกำหนดสำหรับ Sender Policy Framework (SPF), Domainkeys Identified Mail (DKIM) และ Domain-based Message Authentication, Reporting and Conformance (DMARC)
- เรียกข้อมูลสถิติสำหรับหลายโดเมนด้วยการเรียก API เพียงครั้งเดียว
การเปลี่ยนแปลงที่สำคัญมีดังนี้
- ทรัพยากร
trafficStatsถูกแทนที่ด้วยdomainStats - เมธอด
domains.trafficStats.getและdomains.trafficStats.listถูกแทนที่ด้วยเมธอดdomains.domainStats.queryเมธอดเดียว - มีเมธอด
domains.getComplianceStatusใหม่ให้ใช้เพื่อเรียกข้อมูลสถานะการปฏิบัติตามข้อกำหนดสำหรับ SPF, DKIM และ DMARC ของโดเมนที่ระบุ - มีเมธอด
domainStats.batchQueryใหม่ให้ใช้เพื่อเรียกข้อมูลสถิติสำหรับหลายโดเมนในการเรียกเพียงครั้งเดียว - คำว่า "เมตริก" ที่ใช้ใน v1 เปลี่ยนชื่อเป็น "สถิติ"
อัปเดตเป็น v2
หากต้องการย้ายข้อมูลจาก v1 ไปยัง v2 คุณต้องอัปเดตไลบรารีของไคลเอ็นต์เป็นเวอร์ชันล่าสุดและแก้ไขโค้ดเพื่อใช้ทรัพยากรและเมธอด v2
- อัปเดตไลบรารีของไคลเอ็นต์ Postmaster Tools API เป็นเวอร์ชัน 2 ขึ้นไป
- เปลี่ยนการเรียกทั้งหมดจากทรัพยากร
trafficStatsเป็นทรัพยากรdomainStats - แทนที่การเรียก
domains.trafficStats.getหรือdomains.trafficStats.listด้วยdomains.domainStats.queryโดยระบุพารามิเตอร์startDateและendDateเพื่อระบุช่วงวันที่สำหรับการค้นหา
เรียกข้อมูลสถิติอีเมล
ใน v1 ระบบจะเรียกข้อมูลเมตริกอีเมลโดยใช้ domains.trafficStats.get สำหรับวันเดียว หรือ domains.trafficStats.list สำหรับหลายวัน ส่วนใน v2 ระบบจะเรียกข้อมูลสถิติอีเมลโดยใช้ domains.domainStats.query
เมธอด domains.domainStats.query ช่วยให้คุณเรียกข้อมูลสถิติในช่วงวันที่ได้โดยการระบุ startDate และ endDate
v1: domains.trafficStats.get
Java
String query = String.format("domains/%s/trafficStats/%s", domainName, date);
TrafficStats trafficStats = service.domains().trafficStats().get(query).execute();
Python
query = 'domains/%s/trafficStats/%s' %(domain_name,date)
traffic_stats = service.domains().trafficStats().get(name=query).execute();
v2: domains.domainStats.query สำหรับวันเดียว
หากต้องการเรียกข้อมูลสถิติสำหรับวันเดียวใน v2 ให้เรียก domains.domainStats.query โดยใช้ startDate และ endDate เดียวกัน
Java
Date date = new Date().setYear(2024).setMonth(1).setDay(1);
QueryDomainStatsResponse statsResponse = service.domains().domainStats()
.query("domains/" + domainName)
.setStartDate(date)
.setEndDate(date)
.execute();
Python
date = {'year': 2024, 'month': 1, 'day': 1}
stats = service.domains().domainStats().query(
parent='domains/' + domain_name,
startDate=date,
endDate=date).execute()
v1: domains.trafficStats.list
Java
ListTrafficStatsResponse listTrafficStatsResponse = service.domains().trafficStats().list("domains/" + domainName)
.execute();
Python
query = 'domains/' + domain_name
list_traffic_stats_response = service.domains().trafficStats().list(parent=query).execute();
v2: domains.domainStats.query สำหรับช่วงวันที่
หากต้องการเรียกข้อมูลสถิติสำหรับช่วงวันที่ใน v2 ให้เรียก domains.domainStats.query โดยใช้ startDate และ endDate
Java
Date startDate = new Date().setYear(2024).setMonth(1).setDay(1);
Date endDate = new Date().setYear(2024).setMonth(1).setDay(7);
QueryDomainStatsResponse statsResponse = service.domains().domainStats()
.query("domains/" + domainName)
.setStartDate(startDate)
.setEndDate(endDate)
.execute();
Python
stats = service.domains().domainStats().query(
parent='domains/' + domain_name,
startDate={'year': 2024, 'month': 1, 'day': 1},
endDate={'year': 2024, 'month': 1, 'day': 7}).execute()
ฟีเจอร์ใหม่ของ v2
นอกจากการรวมข้อมูลสถิติการเข้าชม get และ list ไว้ใน query แล้ว v2 ยังมีฟีเจอร์ต่อไปนี้ด้วย
เรียกข้อมูลสถานะการปฏิบัติตามข้อกำหนด
คุณสามารถเรียกข้อมูลสถานะการปฏิบัติตามข้อกำหนดสำหรับ Sender Policy Framework (SPF), DomainKeys Identified Mail (DKIM) และ Domain-based Message Authentication, Reporting, and Conformance (DMARC) ของโดเมนได้โดยใช้ domains.getComplianceStatus
ดูโค้ดตัวอย่างได้ที่เรียกข้อมูลสถิติอีเมล
ค้นหาข้อมูลสถิติโดเมนเป็นกลุ่ม
คุณสามารถเรียกข้อมูลสถิติสำหรับหลายโดเมนด้วยการเรียกเพียงครั้งเดียวโดยใช้ domainStats.batchQuery