Interfejs API kart w Portfelu Google umożliwia partnerom zapisywanie rotujących kodów kreskowych w Portfelu Google. Te kody kreskowe są ważne tylko przez krótki czas, co zapewnia dodatkową ochronę i zmniejsza ryzyko zrobienia zrzutu ekranu z kodem kreskowym. Bar kody są generowane na urządzeniu zgodnie z RFC 6238, a partner udostępnia klucz tajny. Jeśli jednak partner woli generować kody kreskowe samodzielnie, Google udostępnia interfejs API, za pomocą którego można przesyłać je do Google w partiach. Te kody kreskowe zostaną przekazane do telefonów użytkowników, gdzie będą działać tak samo jak kody kreskowe rotacyjne, wyświetlając się przez krótki czas. Nazywamy to rozwiązanie „Kod kreskowy generowany przez partnera”.
Interfejs API rotujących kodów kreskowych generowanych przez partnera
Kody kreskowe rotacyjne tworzone przez partnera są tworzone za pomocą tego samego obiektu RotatingBarcode. Wymagany jest tylko typ, ale zalecamy też utworzenie małego, początkowego zestawu kodów kreskowych (około 10 minut) i przesłanie ich w initialRotatingBarcodeValues
. Partner musi zadbać o to, aby użytkownik miał zawsze do dyspozycji prawidłowy kod kreskowy. initialRotatingBarcodeValues
pozwala na asynchroniczne wywołanie kolejnego przesyłania w grupie.
rotatingBarcode { initialRotatingBarcodeValues: object (RotatingBarcodeValues), type: enum (BarcodeType), }
Pole | Opis |
---|---|
initialRotatingBarcodeValues |
Wartości do zakodowania w kodzie kreskowym. Musisz wpisać co najmniej 1 wartość. Te początkowe kody kreskowe mają za zadanie wypełnić lukę między momentem, gdy użytkownik po raz pierwszy uzyskał kartę, a momentem, gdy zostanie wykonane kolejne wywołanie przesyłania zbiorczego. |
type |
Wymagane. Typ tego kodu kreskowego. Akceptowane wartości:
|
Pole | Opis |
---|---|
startDateTime |
Data i godzina, od których jest ważny pierwszy kod kreskowy. Kody kreskowe będą obracane za pomocą Są to data i godzina w rozszerzonym formacie ISO 8601 z przesunięciem. |
values[] |
Wartości do zakodowania w kodzie kreskowym. Musisz wpisać co najmniej 1 wartość. Nie ma maksymalnej liczby wartości, ale rozmiar treści żądania nie może przekraczać 5 MB. |
periodMillis |
Czas ważności każdego kodu kreskowego. |
Zbiorcze aktualizowanie wartości kodów kreskowych
Po utworzeniu obiektu RotatingBarcode zalecamy codzienne przesyłanie na niego nowych kodów kreskowych, aż do wygaśnięcia dokumentu. Można to zrobić za pomocą tego punktu końcowego interfejsu API REST.
Metoda: transitobject.uploadrotatingbarcodevalues
Przesyła rotujące wartości kodów kreskowych do obiektu biletu, do którego odwołuje się podany identyfikator obiektu.
Żądanie HTTP
POST
https://walletobjects.googleapis.com/upload/walletobjects/v1/transitObject/{resourc
eId}/uploadRotatingBarcodeValues
Parametry ścieżki
Parametr | Opis |
---|---|
resourceId |
Unikalny identyfikator obiektu. |
Treść żądania
Treść żądania (której rozmiar nie może przekraczać 5 MB) zawiera instancję RotatingBarcodeValues.
Metoda: transitobject.downloadrotatingbarcodevalues
Pobiera wartości kodów kreskowych rotacyjnych dla obiektu biletu, do którego odwołuje się podany identyfikator obiektu. Jest to przydatne, jeśli partnerzy chcą zweryfikować najnowszą partię.
Żądanie HTTP
GET
https://walletobjects.googleapis.com/walletobjects/v1/transitObject/{resourceId}/do
wnloadRotatingBarcodeValues?alt=media
Parametry ścieżki
Parametr | Opis |
---|---|
resourceId |
Unikalny identyfikator obiektu. |