ภาพรวม

Google Wallet Passes API ช่วยให้พาร์ทเนอร์บันทึกบาร์โค้ดแบบหมุนลงใน Google Wallet ได้ บาร์โค้ดเหล่านี้จะใช้งานได้ในระยะเวลาสั้นๆ เท่านั้น ทำให้มีความปลอดภัยเพิ่มขึ้นเพื่อลดความเสี่ยงในการถ่ายภาพหน้าจอของบาร์โค้ด บาร์โค้ดจะสร้างขึ้นในอุปกรณ์ตาม RFC 6238 กับพาร์ทเนอร์ระบุคีย์ลับ อย่างไรก็ตาม หากพาร์ทเนอร์ต้องการสร้างบาร์โค้ดด้วยตนเอง Google จะมี API ให้อัปโหลดบาร์โค้ดเป็นกลุ่มไปยัง Google ได้ บาร์โค้ดเหล่านี้จะส่งผ่านไปยังโทรศัพท์ของผู้ใช้ โดยจะทำหน้าที่เช่นเดียวกับการหมุนเวียนบาร์โค้ดที่แสดงเพียงช่วงเวลาสั้นๆ เราเรียกโซลูชันนี้ว่าบาร์โค้ดแบบหมุนที่พาร์ทเนอร์สร้างขึ้น

API แบบหมุนเวียนที่พาร์ทเนอร์สร้างขึ้น

บาร์โค้ดแบบหมุนที่พาร์ทเนอร์สร้างขึ้นโดยใช้ออบเจ็กต์ RotatingBarcode เดียวกัน ต้องระบุประเภทเท่านั้น แต่เราแนะนำให้สร้างชุดบาร์โค้ดขนาดเล็กเริ่มต้น (ชื่อประมาณ 10 นาที) และส่งใน initialRotatingBarcodeValues พาร์ทเนอร์มีหน้าที่ตรวจสอบว่ามีบาร์โค้ดที่ถูกต้องพร้อมให้ผู้ใช้เสมอ และ initialRotatingBarcodeValues จะอนุญาตให้การเรียกการอัปโหลดเป็นกลุ่มครั้งถัดไปไม่พร้อมกัน

  rotatingBarcode {
    initialRotatingBarcodeValues: object (RotatingBarcodeValues),
    type: enum (BarcodeType),
  }
ฟิลด์ คำอธิบาย
initialRotatingBarcodeValues

object (RotatingBarcodeValues)

ค่าที่จะเข้ารหัสในบาร์โค้ด ต้องระบุอย่างน้อย 1 ค่า บาร์โค้ดเริ่มต้นเหล่านี้มีไว้เพื่อปิดช่องว่างระหว่างเวลาที่ผู้ใช้ซื้อบัตรเป็นครั้งแรกกับเวลาที่มีการเรียกใช้การอัปโหลดเป็นกลุ่มครั้งถัดๆ ไป

type

enum (BarcodeType)

ต้องระบุ ประเภทของบาร์โค้ดนี้

ค่าที่ยอมรับได้มีดังนี้

  • QR_CODE
  • PDF_417

RotatingBarcodeValues
ฟิลด์ คำอธิบาย
startDateTime

string

วันที่/เวลาที่บาร์โค้ดแรกถูกต้อง ระบบจะหมุนเวียนบาร์โค้ดโดยใช้ periodMillis

วันที่/เวลาสำหรับรูปแบบแบบขยายของ ISO 8601 พร้อมออฟเซ็ต

values[]

string

ค่าที่จะเข้ารหัสในบาร์โค้ด ต้องระบุอย่างน้อย 1 ค่า

ไม่มีค่าสูงสุด แต่โปรดทราบว่าขนาดของเนื้อหาคำขอต้องไม่เกิน 5 MB

periodMillis

number

ระยะเวลาที่ใช้ได้สำหรับบาร์โค้ดแต่ละรายการ

การอัปเดตค่าบาร์โค้ดเป็นกลุ่ม

หลังจากสร้างออบเจ็กต์ RotatingBarcode แล้ว เราขอแนะนำให้อัปโหลดบาร์โค้ดที่มีมูลค่าต่อวัน 1 วันทุกวันจนกว่าบัตรของผู้ใช้จะหมดอายุ ซึ่งทำได้ด้วยปลายทาง REST API ต่อไปนี้

เมธอด: transitobject.uploadrotatingbarcodevalues

อัปโหลดค่าบาร์โค้ดที่หมุนเวียนไปยังออบเจ็กต์การขนส่งสาธารณะที่อ้างอิงโดยใช้รหัสออบเจ็กต์ที่ระบุ

คำขอ HTTP

POST https://walletobjects.googleapis.com/upload/walletobjects/v1/transitObject/{resourc eId}/uploadRotatingBarcodeValues

พารามิเตอร์เส้นทาง

พารามิเตอร์ คำอธิบาย
resourceId

string

ตัวระบุที่ไม่ซ้ำกันสำหรับออบเจ็กต์

เนื้อหาของคำขอ

เนื้อหาของคำขอ (ซึ่งต้องไม่เกิน 5 MB) มีอินสแตนซ์ RotatingBarcodeValues

เมธอด: transitobject.downloadrotatingbarcodevalues

ดาวน์โหลดค่าบาร์โค้ดแบบหมุนเวียนสำหรับออบเจ็กต์การขนส่งที่อ้างอิงตามรหัสออบเจ็กต์ที่ระบุ ซึ่งจะเป็นประโยชน์หากพาร์ทเนอร์ต้องการยืนยันกลุ่มล่าสุด

คำขอ HTTP

GET https://walletobjects.googleapis.com/walletobjects/v1/transitObject/{resourceId}/do wnloadRotatingBarcodeValues?alt=media

พารามิเตอร์เส้นทาง

พารามิเตอร์ คำอธิบาย
resourceId

string

ตัวระบุที่ไม่ซ้ำกันสำหรับออบเจ็กต์

กลไกสำรอง

โปรดทราบว่าหาก RotatingBarcode ที่ถูกต้องเป็นอย่างอื่นไม่มีบาร์โค้ดที่ถูกต้องที่จะแสดง (ยังไม่ได้อัปโหลดหรือมีการใช้บาร์โค้ดปัจจุบันทั้งหมดแล้ว) ข้อความแสดงข้อผิดพลาดจะแสดงให้ผู้ใช้เห็น