Panoramica

L'API Google Wallet Passes consente ai partner di salvare Rotazione codici a barre a Google Wallet. Questi codici a barre sono validi solo per un breve periodo di tempo, fornisce una sicurezza aggiuntiva per ridurre il rischio di screenshot dei codici a barre. La i codici a barre siano generati sul dispositivo in conformità RFC 6238, con il partner che fornisce i campi chiave privata. Tuttavia, se un partner preferisce generare i codici a barre da solo, Google fornisce un'API per il caricamento collettivo dei codici a barre su Google. Questi codici a barre i dati verranno trasmessi all'utente telefoni, che agiranno come i codici a barre rotanti, visualizzati per un breve periodo di tempo. Ci riferiamo a questa soluzione come generata dai partner Rotazione dei codici a barre.

API di rotating Barcode generato dai partner

I codici a barre rotanti generati dai partner vengono creati utilizzando lo stesso . È obbligatorio solo il tipo, anche se consigliamo di creare anche un piccolo comando iniziale di codici a barre (del valore di circa 10 minuti) e l'invio initialRotatingBarcodeValues. Il partner ha la responsabilità di garantire sempre un codice a barre valido pronto per l'utente e initialRotatingBarcodeValues consente la successiva chiamata al caricamento in batch.

  rotatingBarcode {
    initialRotatingBarcodeValues: object (RotatingBarcodeValues),
    type: enum (BarcodeType),
  }
Campo Descrizione
initialRotatingBarcodeValues

object (RotatingBarcodeValues)

I valori da codificare nel codice a barre. Almeno un valore è obbligatorio. Queste iniziali i codici a barre servono a colmare il divario tra il momento in cui l'utente ottiene la tessera per la prima volta quando viene effettuata la successiva chiamata di caricamento in batch.

type

enum (BarcodeType)

Obbligatorio. Il tipo di questo codice a barre.

I valori accettati sono:

  • QR_CODE
  • PDF_417

RotatingBarcodeValues
Campo Descrizione
startDateTime

string

La data e l'ora da cui è valido il primo codice a barre. I codici a barre verranno ruotati utilizzando periodMillis.

Data/ora nel formato esteso ISO 8601 con offset.

values[]

string

I valori da codificare nel codice a barre. Almeno un valore è obbligatorio.

Non esiste un numero massimo di valori, ma tieni presente che le dimensioni del corpo della richiesta non può superare i 5 MB.

periodMillis

number

La quantità di tempo di validità di ciascun codice a barre.

Aggiornamento collettivo dei valori dei codici a barre

Dopo la creazione dell'oggetto RotatingBarcode, consigliamo di caricare una di codici a barre, ogni giorno, fino alla scadenza della tessera dell'utente. Questa operazione può essere eseguita con seguendo l'endpoint API REST.

Metodo: transitobject.uploadrotatingbarcodevalues

Carica i valori del codice a barre in rotazione nell'oggetto di transito a cui fa riferimento l'ID oggetto specificato.

Richiesta HTTP

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

Parametri del percorso

Parametro Descrizione
resourceId

string

L'identificatore univoco di un oggetto.

Corpo della richiesta

Il corpo della richiesta (che non può superare i 5 MB) contiene un'istanza di RotatingBarcodeValues.

Metodo: transitobject.downloadrotatingbarcodevalues

Scarica i valori del codice a barre in rotazione per l'oggetto di transito a cui fa riferimento l'oggetto specificato ID. Ciò è utile se i partner vogliono verificare il batch più recente.

Richiesta HTTP

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

Parametri del percorso

Parametro Descrizione
resourceId

string

L'identificatore univoco di un oggetto.

Meccanismi di fallback

Tieni presente che se un RotatingBarcode valido non ha codici a barre validi da visualizzare, non sono stati ancora caricati o tutti i codici a barre correnti sono stati utilizzati), viene visualizzato un errore verrà mostrato all'utente.