ה-API של Google Wallet Passs מאפשר לשותפים לשמור ברקודים מסתובבים ב-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, מומלץ להעלות ברקודים למשך יום שלם בכל יום עד שפג התוקף של הכרטיס למשתמש. אפשר לעשות זאת באמצעות נקודת הקצה הבאה של REST API.
שיטה: transitobject.uploadrotatingbarcodevalues
העלאות עם סיבוב של ערכי ברקוד לאובייקט התחבורה הציבורית שאליו מפנה מזהה האובייקט הנתון.
בקשת HTTP
POST
https://walletobjects.googleapis.com/upload/walletobjects/v1/transitObject/{resourc
eId}/uploadRotatingBarcodeValues
פרמטרים של נתיב
פרמטר | תיאור |
---|---|
resourceId |
המזהה הייחודי של האובייקט. |
גוף הבקשה
גוף הבקשה (שאינו יכול לחרוג מ-5MB) מכיל מופע של RotatingBarcodeValues.
שיטה: transitobject.downloadrotatingbarcodevalues
הורדות של ערכי ברקוד מסתובבים באובייקט התחבורה הציבורית שאליו מתייחס מזהה האובייקט הנתון. האפשרות הזו שימושית אם השותפים רוצים לאמת את הגרסה האחרונה.
בקשת HTTP
GET
https://walletobjects.googleapis.com/walletobjects/v1/transitObject/{resourceId}/do
wnloadRotatingBarcodeValues?alt=media
פרמטרים של נתיב
פרמטר | תיאור |
---|---|
resourceId |
המזהה הייחודי של האובייקט. |