Google Wallet Passes API מאפשר לשותפים לשמור ברקודים מסתובבים ב-Google Wallet. הברקודים האלה תקפים רק לפרק זמן קצר, ומספקים אבטחה נוספת שמפחיתה את הסיכון לצילום מסך של ברקוד. הברקודים נוצרים במכשיר בהתאם ל-RFC 6238, והשותף מספק את המפתח הסודי. עם זאת, אם שותף מעדיף ליצור את הברקודים בעצמו, Google תספק API כך שניתן יהיה להעלות ברקודים באצווה ל-Google. הברקודים האלו יועברו לטלפונים של המשתמשים, ושם הם יפעלו בדיוק כמו ברקודים מסתובבים, והם מוצגים למשך זמן קצר. אנחנו מתייחסים לפתרון הזה בתור ברקודים מסתובבים שנוצרו על ידי שותפים.
ממשק API של ברקוד מסתובב שנוצר על ידי שותף
ברקודים מסתובבים שנוצרו על ידי השותף נוצרים באמצעות אותו אובייקט RotatingBarcode. רק הסוג הוא חובה, אבל מומלץ גם ליצור קבוצת ברקודים קטנה לתחילת פעולה (בשווי של כ-10 דקות) ולשלוח אותם ב-initialRotatingBarcodeValues
. השותף אחראי לוודא שתמיד יש למשתמש ברקוד תקין, וש-initialRotatingBarcodeValues
מאפשר לקריאה הבאה להעלאת כמות גדולה של פריטים להיות אסינכרונית.
rotatingBarcode { initialRotatingBarcodeValues: object (RotatingBarcodeValues), type: enum (BarcodeType), }
שדה | תיאור |
---|---|
initialRotatingBarcodeValues |
הערכים שצריך לקודד בברקוד. נדרש לפחות ערך אחד. הברקודים הראשוניים האלה נועדו לגשר על הפער בין המועד שבו המשתמש מקבל את הכרטיס בפעם הראשונה, לבין המועד שבו תתבצע הקריאה הבאה להעלאת פריטים מרובים. |
type |
חובה. הסוג של הברקוד הזה. הערכים הקבילים הם:
|
שדה | תיאור |
---|---|
startDateTime |
התאריך/השעה שמהם הברקוד הראשון תקף. הברקודים יסתובבו באמצעות
זהו תאריך/שעה בפורמט מורחב לפי תקן ISO 8601, עם קיזוז. |
values[] |
הערכים שצריך לקודד בברקוד. נדרש לפחות ערך אחד. אין מספר מקסימלי של ערכים, אבל כדאי לשים לב שהגודל של גוף הבקשה לא יכול לחרוג מ-5MB. |
periodMillis |
משך הזמן שבו כל ברקוד תקף. |
עדכון בכמות גדולה של ערכי ברקוד
לאחר יצירת האובייקט RotatingBarcode, מומלץ להעלות ברקודים באורך יום של יום, כל יום, עד שתוקף הכרטיס של המשתמש יפוג. אפשר לעשות את זה באמצעות נקודת הקצה הבאה של API ל-REST.
שיטה: transitobject.uploadrotatingbarcodevalues
מעלה ערכי ברקוד מסתובבים לאובייקט ההעברה שאליו מפנה מזהה האובייקט הנתון.
בקשת HTTP
POST
https://walletobjects.googleapis.com/upload/walletobjects/v1/transitObject/{resourc
eId}/uploadRotatingBarcodeValues
פרמטרים של נתיב
פרמטר | תיאור |
---|---|
resourceId |
המזהה הייחודי של אובייקט. |
גוף הבקשה
גוף הבקשה (לא יכול לחרוג מ-5MB) מכיל מופע של RotatingBarcodeValues.
שיטה: trafficobject.downloadrotatingbarcodevalues
הורדה של ערכי ברקוד מסתובבים לאובייקט ההעברה שאליו מפנה מזהה האובייקט הנתון. האפשרות הזו שימושית אם שותפים רוצים לאמת את האצווה האחרונה.
בקשת HTTP
GET
https://walletobjects.googleapis.com/walletobjects/v1/transitObject/{resourceId}/do
wnloadRotatingBarcodeValues?alt=media
פרמטרים של נתיב
פרמטר | תיאור |
---|---|
resourceId |
המזהה הייחודי של אובייקט. |