Data Portability API ประกอบด้วยวิธีการต่อไปนี้
portabilityArchive.initiate
archiveJobs.getPortabilityArchiveState
resetAuthorization
archiveJobs.retryPortabilityArchive
portabilityArchive.initiate
ซึ่งคุณจะเรียกใช้เมธอด portabilityArchive.initiate
เพื่อเริ่มงานการส่งออกข้อมูลใหม่
เมื่อเริ่มงานการส่งออกเพื่อสร้างที่เก็บถาวรข้อมูล คุณต้องส่งคำขอกลุ่มทรัพยากรที่เหมาะสมและระบุโทเค็น OAuth ที่มีขอบเขตที่จำเป็นสำหรับกลุ่มทรัพยากรนั้น โทเค็น OAuth จะใช้เพื่อให้สิทธิ์คำขอและระบุว่ากำลังส่งออกข้อมูลผู้ใช้ใด
ดูรายการกลุ่มทรัพยากรทั้งหมดที่บริการหนึ่งๆ รองรับได้ที่หน้าข้อมูลอ้างอิงสคีมาของบริการนั้น
เช่น หากกำลังส่งออกข้อมูลกิจกรรมการค้นหา คุณจะเรียกใช้ InitiatePortabilityArchive(resources = ["myactivity.search"])
คำขอต้องมีโทเค็น OAuth แนบกับขอบเขต OAuth ในการค้นหา: https://www.googleapis.com/auth/dataportability.myactivity.search
และเราไม่แนะนำให้รวมกลุ่มทรัพยากรหลายกลุ่มไว้ในการเรียก InitiatePortabilityArchive
ครั้งเดียว คุณจะประมวลผลได้เร็วขึ้นด้วยการส่งคำขอ InitiatePortabilityArchive
แยกกันสำหรับกลุ่มทรัพยากรแต่ละกลุ่ม โปรดทราบว่าเมื่อคุณขอกลุ่มทรัพยากรหลายกลุ่ม โทเค็น OAuth ที่แนบต้องแนบขอบเขตที่เหมาะสมทั้งหมดไว้แล้ว
ตัวอย่างเช่น แทนที่จะเรียกใช้
InitiatePortabilityArchive(resources = ["myactivity.search","myactivity.youtube"])
หากต้องการสร้างที่เก็บถาวรข้อมูลสำหรับทั้งการค้นหาและกิจกรรมใน YouTube ให้
โทรแยกกันดังนี้
InitiatePortabilityArchive(resources = ["myactivity.search"])
และ InitiatePortabilityArchive(resources = ["myactivity.youtube"])
คำขอ InitiatePortabilityArchive
แสดงผล job_id
รหัสงานนี้จะใช้เพื่อเรียกสถานะของที่เก็บข้อมูล
archiveJobs.getPortabilityArchiveState
ระบบจะเรียกใช้เมธอด archiveJobs.getPortabilityArchiveState
เพื่อเรียกstateปัจจุบันของงานส่งออกข้อมูลที่เก็บถาวร เมื่อโทรติดต่อ
getPortabilityArchiveState
โปรดระบุjob_id
ต่อไปนี้
GetPortabilityArchiveState(job_id)
นอกจากนี้ คุณต้องระบุโทเค็น OAuth ที่มีขอบเขตที่ตรงกับกลุ่มทรัพยากรที่ใช้ในคำขอ initiate
ด้วย
หากสถานะคือ COMPLETE
ระบบจะแสดงผล URL ของ Cloud Storage ที่ลงนามแล้วเพื่อให้คุณดาวน์โหลดข้อมูลได้ URL ที่ลงนามจะหมดอายุหลังจาก 6 ชั่วโมง และข้อมูลจะใช้ได้เป็นเวลา 14 วัน
คำขอที่เก็บถาวรอาจใช้เวลาหลายนาที หลายชั่วโมง หรือแม้กระทั่งหลายวัน ขึ้นอยู่กับปริมาณข้อมูล คุณสามารถตรวจสอบสถานะของที่เก็บถาวรได้ทุก 5-60 นาที
resetAuthorization
เมธอด resetAuthorization
จะทำสิ่งต่อไปนี้
- เพิกถอนขอบเขต OAuth ทั้งหมดที่ได้จากผู้ใช้
- อนุญาตให้แอปพลิเคชันเรียกใช้
InitiatePortabilityArchive
สำหรับกลุ่มทรัพยากรที่คุณใช้ก่อนหน้านี้ - ยกเลิกสิทธิ์เข้าถึงที่เก็บข้อมูลก่อนหน้า
เมื่อโทรหา resetAuthorization
คุณต้องระบุโทเค็น OAuth ที่แนบมาให้กับผู้ใช้ที่คุณกำลังจะรีเซ็ตการให้สิทธิ์
archiveJobs.retryPortabilityArchive
ระบบจะเรียกใช้เมธอด archiveJobs.retryPortabilityArchive
เพื่อลองทำงานที่ล้มเหลวอีกครั้ง เมื่อเมธอด archiveJobs.getPortabilityArchiveState
แสดงผลstateเป็น FAILED
แล้ว ซึ่งอาจเกิดจากข้อผิดพลาดชั่วคราว
ในแบ็กเอนด์ ในกรณีนี้ คุณจะลองส่งออกอีกครั้งได้โดยไม่ต้องขอโทเค็น OAuth ใหม่จากผู้ใช้ เมื่อเรียกใช้ retryPortabilityArchive
คุณจะต้องระบุ job_id
พร้อมกับโทเค็น OAuth ที่ถูกต้อง จากนั้นปลายทางจะพยายามสร้างการส่งออกสำหรับกลุ่มทรัพยากรเดียวกันกับที่ขอในคำขอ initiatePortabilityArchive
แรก หากสำเร็จ ปลายทางนี้จะแสดงผล job_id
ใหม่ที่คุณใช้ในการเรียก getPortabilityArchiveState
ได้ คุณลองทำงานที่ล้มเหลวอีกครั้งได้ไม่เกิน 3 ครั้ง
เช่น
คุณโทรหา
InitiatePortabilityArchive(resources = ["myactivity.search"])
และได้รับjob_id: 0
หลังจากโทรหา
GetPortabilityArchiveState(0)
คุณจะได้รับJobSate: FAILED
คุณสามารถโทรติดต่อ
RetryPortabilityArchive(0)
เพื่อรับjob_id: 1
ในราคาresources = ["myactivity.search"]
จากนั้นคุณจะต่อสายที่โทรหา
GetPortabilityArchiveState(1)
ได้