REST Resource: transitobject

Risorsa: TransitObject

Rappresentazione JSON
{
  "classReference": {
    object (TransitClass)
  },
  "ticketNumber": string,
  "passengerType": enum (PassengerType),
  "passengerNames": string,
  "tripId": string,
  "ticketStatus": enum (TicketStatus),
  "customTicketStatus": {
    object (LocalizedString)
  },
  "concessionCategory": enum (ConcessionCategory),
  "customConcessionCategory": {
    object (LocalizedString)
  },
  "ticketRestrictions": {
    object (TicketRestrictions)
  },
  "purchaseDetails": {
    object (PurchaseDetails)
  },
  "ticketLeg": {
    object (TicketLeg)
  },
  "ticketLegs": [
    {
      object (TicketLeg)
    }
  ],
  "hexBackgroundColor": string,
  "tripType": enum (TripType),
  "id": string,
  "classId": string,
  "version": string,
  "state": enum (State),
  "barcode": {
    object (Barcode)
  },
  "messages": [
    {
      object (Message)
    }
  ],
  "validTimeInterval": {
    object (TimeInterval)
  },
  "locations": [
    {
      object (LatLongPoint)
    }
  ],
  "hasUsers": boolean,
  "smartTapRedemptionValue": string,
  "hasLinkedDevice": boolean,
  "disableExpirationNotification": boolean,
  "infoModuleData": {
    object (InfoModuleData)
  },
  "imageModulesData": [
    {
      object (ImageModuleData)
    }
  ],
  "textModulesData": [
    {
      object (TextModuleData)
    }
  ],
  "linksModuleData": {
    object (LinksModuleData)
  },
  "appLinkData": {
    object (AppLinkData)
  },
  "activationStatus": {
    object (ActivationStatus)
  },
  "rotatingBarcode": {
    object (RotatingBarcode)
  },
  "deviceContext": {
    object (DeviceContext)
  },
  "heroImage": {
    object (Image)
  },
  "groupingInfo": {
    object (GroupingInfo)
  },
  "passConstraints": {
    object (PassConstraints)
  },
  "saveRestrictions": {
    object (SaveRestrictions)
  },
  "linkedObjectIds": [
    string
  ],
  "notifyPreference": enum (NotificationSettingsForUpdates),
  "valueAddedModuleData": [
    {
      object (ValueAddedModuleData)
    }
  ]
}
Campi
classReference

object (TransitClass)

Una copia dei campi ereditati della classe principale. Questi campi vengono recuperati durante una richiesta GET.

ticketNumber

string

Il numero del ticket. Si tratta di un identificatore univoco del biglietto nel sistema dell'operatore di trasporto pubblico.

passengerType

enum (PassengerType)

Il numero di passeggeri.

passengerNames

string

Il nome o i nomi dei passeggeri a cui è assegnato il biglietto. Il campo passengerType riportato sopra ha lo scopo di fornire a Google contesto su questo campo.

tripId

string

Questo ID viene utilizzato per raggruppare i biglietti se l'utente ha salvato più biglietti per la stessa corsa.

ticketStatus

enum (TicketStatus)

Lo stato del biglietto. Per gli stati che influiscono sulla visualizzazione, utilizza invece il campo state.

customTicketStatus

object (LocalizedString)

Uno stato personalizzato da utilizzare per il valore dello stato del ticket quando ticketStatus non offre l'opzione giusta. Impossibile impostare ticketStatus e customTicketStatus.

concessionCategory

enum (ConcessionCategory)

La categoria della concessione per il biglietto.

customConcessionCategory

object (LocalizedString)

Una categoria di concessione personalizzata da utilizzare quando concessionCategory non fornisce l'opzione corretta. Impossibile impostare concessionCategory e customConcessionCategory.

ticketRestrictions

object (TicketRestrictions)

Informazioni sul tipo di limitazioni relative all'utilizzo di questo biglietto. Ad esempio, i giorni della settimana in cui deve essere utilizzato o i percorsi che è consentito seguire.

purchaseDetails

object (PurchaseDetails)

Dettagli per l'acquisto di questo biglietto.

ticketLeg

object (TicketLeg)

Un singolo tratto del biglietto contiene informazioni su partenza e arrivo, nonché su imbarco e posti. Se è necessario specificare più di un tratto, utilizza invece il campo ticketLegs. Non è possibile impostare sia ticketLeg che ticketLegs.

ticketLegs[]

object (TicketLeg)

Ogni biglietto può contenere una o più tratte. Ogni tratta contiene le informazioni su partenza e arrivo, oltre a informazioni di imbarco e posti a sedere. Se devi specificare un solo tratto, utilizza il campo ticketLeg. Impossibile impostare ticketLeg e ticketLegs.

hexBackgroundColor

string

Il colore di sfondo della scheda. Se non viene impostato il colore dominante dell'immagine hero, se non viene impostata alcuna immagine hero, viene utilizzato il colore dominante del logo. Il formato è #rrggbb, dove rrggbb è una tripletta RGB esadecimale, ad esempio #ffcc00. Puoi anche utilizzare la versione abbreviata della tripletta RGB, ovvero #rgb, ad esempio #fc0.

tripType

enum (TripType)

Obbligatorio. Il tipo di corsa rappresentato da questo oggetto di trasporto pubblico. Utilizzato per determinare il titolo della tessera e/o il simbolo da utilizzare tra il luogo di partenza e la destinazione.

id

string

Obbligatorio. L'identificatore univoco di un oggetto. Questo ID deve essere univoco in tutti gli oggetti di un emittente. Questo valore deve essere nel formato issuer ID.identifier: il primo viene emesso da Google, mentre il secondo è scelto da te. L'identificatore univoco deve includere solo caratteri alfanumerici, ".", "_" o "-".

classId

string

Obbligatorio. La classe associata all'oggetto. La classe deve essere dello stesso tipo dell'oggetto, deve esistere già e deve essere approvata.

Gli ID classe devono seguire il formato issuer ID.identifier: il primo viene emesso da Google, mentre il secondo è scelto da te.

version
(deprecated)

string (int64 format)

Deprecato

state

enum (State)

Obbligatorio. Lo stato dell'oggetto. Questo campo viene utilizzato per determinare la modalità di visualizzazione di un oggetto nell'app. Ad esempio, un oggetto inactive viene spostato nella sezione "Tessere scadute".

barcode

object (Barcode)

Il tipo e il valore del codice a barre.

messages[]

object (Message)

Un array di messaggi visualizzati nell'app. Tutti gli utenti di questo oggetto riceveranno i messaggi associati. Il numero massimo di questi campi è 10.

validTimeInterval

object (TimeInterval)

Il periodo di tempo in cui questo oggetto sarà active e potrà essere utilizzato l'oggetto. Al termine di questo periodo di tempo, lo stato di un oggetto verrà modificato in expired.

locations[]
(deprecated)

object (LatLongPoint)

Nota: al momento questo campo non è supportato per attivare le notifiche geografiche.

hasUsers

boolean

Indica se l'oggetto ha utenti. Questo campo è impostato dalla piattaforma.

smartTapRedemptionValue

string

Il valore che verrà trasmesso a un terminale certificato Smart Tap tramite NFC per questo oggetto. Anche i campi a livello di classe enableSmartTap e redemptionIssuers devono essere configurati correttamente affinché la tessera supporti la funzionalità Smart Tap. Sono supportati solo i caratteri ASCII.

hasLinkedDevice

boolean

Indica se questo oggetto è attualmente collegato a un singolo dispositivo. Questo campo viene impostato dalla piattaforma quando un utente salva l'oggetto collegandolo al proprio dispositivo. Destinato all'utilizzo da parte di partner selezionati. Contatta l'assistenza per ulteriori informazioni.

disableExpirationNotification

boolean

Indica se le notifiche devono essere soppresse esplicitamente. Se questo campo è impostato su true, indipendentemente dal campo messages, le notifiche di scadenza all'utente verranno eliminate. Per impostazione predefinita, questo campo è impostato su false.

Al momento, questo valore può essere impostato solo per le offerte.

infoModuleData

object (InfoModuleData)

Deprecato. Usa invece textModulesData.

imageModulesData[]

object (ImageModuleData)

Dati del modulo immagine. Il numero massimo di questi campi visualizzati è 1 a livello di oggetto e 1 a livello di oggetto della classe.

textModulesData[]

object (TextModuleData)

Dati del modulo di testo. Se i dati dei moduli di testo sono definiti anche per il corso, verranno visualizzati entrambi. Il numero massimo di questi campi visualizzati è 10 dall'oggetto e 10 dalla classe.

activationStatus

object (ActivationStatus)

Lo stato di attivazione dell'oggetto. Obbligatorio se per il corso è impostato activationOptions.

rotatingBarcode

object (RotatingBarcode)

Il tipo e il valore del codice a barre in rotazione.

deviceContext

object (DeviceContext)

Contesto del dispositivo associato all'oggetto.

heroImage

object (Image)

Immagine del banner facoltativa visualizzata sulla parte anteriore della scheda. Se non è presente, verrà visualizzata l'immagine hero della classe, se presente. Se non è presente nemmeno l'immagine hero del corso, non verrà visualizzata alcuna immagine.

groupingInfo

object (GroupingInfo)

Informazioni che controllano il modo in cui le tessere vengono raggruppate.

passConstraints

object (PassConstraints)

Passa i vincoli per l'oggetto. Include la limitazione dei comportamenti dell'NFC e degli screenshot.

saveRestrictions

object (SaveRestrictions)

Restrizioni per l'oggetto che deve essere verificato prima che l'utente provi a salvare la tessera. Tieni presente che queste limitazioni verranno applicate solo durante il tempo di salvataggio. Se le limitazioni cambiano dopo che un utente salva la tessera, le nuove limitazioni non verranno applicate a una tessera già salvata.

linkedObjectIds[]

string

linkedObjectIds è un elenco di altri oggetti, come biglietti per eventi, fedeltà, offerte, generici, carte regalo, trasporto pubblico e carte d'imbarco, che devono essere collegati automaticamente a questo oggetto di trasporto pubblico. Se un utente avesse salvato questa carta del trasporto pubblico, questi ID oggetti collegati sarebbero stati inviati automaticamente al suo wallet (a meno che non avesse disattivato l'impostazione per ricevere i documenti collegati).

Assicurati che gli oggetti presenti in linkedObjectIds siano già inseriti. In caso contrario, le chiamate non andranno a buon fine. Una volta collegati, gli oggetti collegati non possono essere scollegati. Non puoi collegare oggetti appartenenti a un altro emittente. Esiste un limite al numero di oggetti che possono essere collegati a un singolo oggetto. Una volta raggiunto il limite, i nuovi oggetti collegati nella chiamata verranno ignorati automaticamente.

Gli ID oggetto devono seguire il formato issuer ID.identifier, dove il primo è emesso da Google e il secondo è scelto da te.

notifyPreference

enum (NotificationSettingsForUpdates)

Indica se gli aggiornamenti dei campi di questo oggetto devono attivare o meno le notifiche. Se impostato su NOTIFY, tenteremo di attivare una notifica di aggiornamento del campo per gli utenti. Queste notifiche verranno inviate agli utenti solo se il campo fa parte di una lista consentita. Se impostato su DO_NOT_NOTIFY o NOTIFICATION_SETTINGS_UNSPECIFIED, non verrà attivata alcuna notifica. Questa impostazione è temporanea e deve essere configurata con ogni richiesta PATCH o UPDATE, altrimenti non verrà attivata alcuna notifica.

valueAddedModuleData[]

object (ValueAddedModuleData)

Dati facoltativi del modulo a valore aggiunto. Massimo dieci per l'oggetto.

PassengerType

Enum
PASSENGER_TYPE_UNSPECIFIED
SINGLE_PASSENGER
singlePassenger

Alias precedente per SINGLE_PASSENGER. Deprecato.

MULTIPLE_PASSENGERS
multiplePassengers

Alias precedente per MULTIPLE_PASSENGERS. Deprecato.

TicketStatus

Enum
TICKET_STATUS_UNSPECIFIED
USED
used

Alias precedente per USED. Deprecato.

REFUNDED
refunded

Alias precedente per REFUNDED. Deprecato.

EXCHANGED
exchanged

Alias precedente per EXCHANGED. Deprecato.

ConcessionCategory

Enum
CONCESSION_CATEGORY_UNSPECIFIED
ADULT
adult

Alias precedente per ADULT. Deprecato.

CHILD
child

Alias precedente per CHILD. Deprecato.

SENIOR
senior

Alias precedente per SENIOR. Deprecato.

TicketRestrictions

Rappresentazione JSON
{
  "routeRestrictions": {
    object (LocalizedString)
  },
  "routeRestrictionsDetails": {
    object (LocalizedString)
  },
  "timeRestrictions": {
    object (LocalizedString)
  },
  "otherRestrictions": {
    object (LocalizedString)
  }
}
Campi
routeRestrictions

object (LocalizedString)

Restrizioni relative ai percorsi che possono essere seguiti. Ad esempio, potrebbe essere la stringa "Solo treni nazionali prenotati".

routeRestrictionsDetails

object (LocalizedString)

Maggiori dettagli su quanto sopra routeRestrictions.

timeRestrictions

object (LocalizedString)

Limitazioni relative agli orari in cui è possibile utilizzare il biglietto.

otherRestrictions

object (LocalizedString)

Limitazioni aggiuntive che non rientrano nelle categorie "percorso" o "orario".

PurchaseDetails

Rappresentazione JSON
{
  "purchaseReceiptNumber": string,
  "purchaseDateTime": string,
  "accountId": string,
  "confirmationCode": string,
  "ticketCost": {
    object (TicketCost)
  }
}
Campi
purchaseReceiptNumber

string

Numero/identificatore della ricevuta per monitorare l'acquisto del biglietto tramite l'ente che lo ha venduto.

purchaseDateTime

string

La data e l'ora di acquisto del biglietto.

Data/ora nel formato esteso ISO 8601, con o senza offset. Il tempo può essere specificato con una precisione fino a un nanosecondo. Gli offset possono essere specificati con una precisione di secondi (anche se i secondi di offset non fanno parte di ISO 8601).

Ad esempio:

1985-04-12T23:20:50.52Z corrisponde a 20 minuti e 50,52 secondi dopo la 23a ora del 12 aprile 1985 in UTC.

1985-04-12T19:20:50.52-04:00 corrisponde a 20 minuti e 50,52 secondi dopo la 19a ora del 12 aprile 1985, 4 ore prima del fuso orario UTC (stesso istante di tempo dell'esempio precedente). Se l'evento fosse a New York, sarebbe l'equivalente dell'ora legale orientale (EDT). Tieni presente che il valore dell'offset varia nelle regioni che osservano l'ora legale, a seconda del periodo dell'anno.

1985-04-12T19:20:50.52 sarebbe 20 minuti e 50, 52 secondi dopo la 19a ora del 12 aprile 1985 senza informazioni sull'offset.

Senza informazioni sull'offset, alcune funzionalità avanzate potrebbero non essere disponibili.

accountId

string

ID dell'account utilizzato per acquistare il biglietto.

confirmationCode

string

Il codice di conferma dell'acquisto. Può essere uguale per più richieste diverse e viene utilizzato per raggrupparle.

ticketCost

object (TicketCost)

Il costo del biglietto.

TicketCost

Rappresentazione JSON
{
  "faceValue": {
    object (Money)
  },
  "purchasePrice": {
    object (Money)
  },
  "discountMessage": {
    object (LocalizedString)
  }
}
Campi
faceValue

object (Money)

Il valore nominale del biglietto.

purchasePrice

object (Money)

Il prezzo effettivo di acquisto del biglietto, al netto delle imposte e/o degli sconti.

discountMessage

object (LocalizedString)

Un messaggio che descrive qualsiasi tipo di sconto applicato.

TicketLeg

Rappresentazione JSON
{
  "originStationCode": string,
  "originName": {
    object (LocalizedString)
  },
  "destinationStationCode": string,
  "destinationName": {
    object (LocalizedString)
  },
  "departureDateTime": string,
  "arrivalDateTime": string,
  "fareName": {
    object (LocalizedString)
  },
  "carriage": string,
  "platform": string,
  "zone": string,
  "ticketSeat": {
    object (TicketSeat)
  },
  "ticketSeats": [
    {
      object (TicketSeat)
    }
  ],
  "transitOperatorName": {
    object (LocalizedString)
  },
  "transitTerminusName": {
    object (LocalizedString)
  }
}
Campi
originStationCode

string

Il codice della stazione di partenza. Questo valore è obbligatorio se è presente destinationStationCode o se non è presente originName.

originName

object (LocalizedString)

Il nome della stazione di partenza. Questa operazione è necessaria se desinationName è presente o se originStationCode non è presente.

destinationStationCode

string

Il codice della stazione di destinazione.

destinationName

object (LocalizedString)

Il nome della destinazione.

departureDateTime

string

La data e l'ora di partenza. Questo valore è obbligatorio se non è impostato alcun intervallo di tempo di validità nell'oggetto di transito.

Data/ora nel formato esteso ISO 8601, con o senza offset. Il tempo può essere specificato con una precisione fino a nanosecondi. Gli offset possono essere specificati con la precisione in secondi (anche se i secondi di offset non fanno parte di ISO 8601).

Ad esempio:

1985-04-12T23:20:50.52Z corrisponde a 20 minuti e 50,52 secondi dopo la 23a ora del 12 aprile 1985 in UTC.

1985-04-12T19:20:50.52-04:00 corrisponde a 20 minuti e 50,52 secondi dopo la 19a ora del 12 aprile 1985, 4 ore prima del fuso orario UTC (stesso istante di tempo dell'esempio precedente). Se l'evento fosse a New York, sarebbe l'equivalente dell'ora legale orientale (EDT). Tieni presente che il valore dell'offset varia nelle regioni che osservano l'ora legale, a seconda del periodo dell'anno.

1985-04-12T19:20:50.52 corrisponderebbe a 20 minuti e 50,52 secondi dopo la 19a ora del 12 aprile 1985 senza informazioni sull'offset.

La parte della data/dell'ora senza l'offset è considerata "data/ora locale". Deve essere la data/ora locale della stazione di partenza. Ad esempio, se la partenza avviene alle ore 20:00 del 5 giugno 2018 nella stazione di partenza, la parte della data/dell'ora locale deve essere 2018-06-05T20:00:00. Se la data e l'ora locali nella stazione di origine sono quattro ore prima dell'UTC, potrebbe essere aggiunto un offset di -04:00.

Senza le informazioni sull'offset, alcune caratteristiche avanzate potrebbero non essere disponibili.

arrivalDateTime

string

La data e l'ora dell'arrivo.

Si tratta di una data/ora nel formato esteso ISO 8601, con o senza un offset. Il tempo può essere specificato con una precisione fino a un nanosecondo. Gli offset possono essere specificati con una precisione in secondi (anche se i secondi di offset non fanno parte di ISO 8601).

Ad esempio:

1985-04-12T23:20:50.52Z corrisponde a 20 minuti e 50,52 secondi dopo la 23a ora del 12 aprile 1985 in UTC.

1985-04-12T19:20:50.52-04:00 corrisponde a 20 minuti e 50,52 secondi dopo la 19a ora del 12 aprile 1985, 4 ore prima del fuso orario UTC (stesso istante di tempo dell'esempio precedente). Se l'evento fosse a New York, sarebbe l'equivalente dell'ora legale orientale (EDT). Tieni presente che il valore dell'offset varia nelle regioni che osservano l'ora legale, a seconda del periodo dell'anno.

1985-04-12T19:20:50.52 corrisponderebbe a 20 minuti e 50,52 secondi dopo la 19a ora del 12 aprile 1985 senza informazioni sull'offset.

La parte della data e dell'ora senza la differenza è considerata come "data e ora locali". Deve essere la data e l'ora locali presso la stazione di destinazione. Ad esempio, se l'evento si verifica alla 20a ora del 5 giugno 2018 presso la stazione di destinazione, la parte di data e ora locale deve essere 2018-06-05T20:00:00. Se la data e l'ora locali nella stazione di destinazione sono quattro ore prima dell'UTC, potrebbe essere aggiunto un offset di -04:00.

Senza le informazioni sull'offset, alcune caratteristiche avanzate potrebbero non essere disponibili.

fareName

object (LocalizedString)

Breve descrizione/nome della tariffa per questo tratto di viaggio. Ad esempio "Uso singolo in qualsiasi momento".

carriage

string

Il nome/numero del treno o della nave su cui il passeggero deve salire.

platform

string

La banchina o la porta su cui il passeggero può salire sulla carrozza.

zone

string

La zona di imbarco all'interno della piattaforma.

ticketSeat

object (TicketSeat)

Il posto riservato per il passeggero o i passeggeri. Se è necessario specificare più di un posto, utilizza il campo ticketSeats. Non è possibile impostare sia ticketSeat che ticketSeats.

ticketSeats[]

object (TicketSeat)

Il posto riservato per i passeggeri. Se deve essere specificato un solo posto, utilizza invece il campo ticketSeat. Non è possibile impostare sia ticketSeat che ticketSeats.

transitOperatorName

object (LocalizedString)

Il nome dell'operatore di trasporto pubblico che gestisce questa tratta di un viaggio.

transitTerminusName

object (LocalizedString)

Stazione capolinea o destinazione del treno/autobus/ecc.

TicketSeat

Rappresentazione JSON
{
  "fareClass": enum (FareClass),
  "customFareClass": {
    object (LocalizedString)
  },
  "coach": string,
  "seat": string,
  "seatAssignment": {
    object (LocalizedString)
  }
}
Campi
fareClass

enum (FareClass)

La classe tariffaria del posto acquistato.

customFareClass

object (LocalizedString)

Una classe tariffaria personalizzata da utilizzare in assenza di fareClass. Impossibile impostare fareClass e customFareClass.

coach

string

L'identificatore del vagone del treno in cui si trova il posto per cui è stato acquistato il biglietto. Ad es. "10"

seat

string

L'identificatore della posizione in cui si trova il biglietto. Ad es. "42". Se non esiste un identificatore specifico, usa seatAssigment.

seatAssignment

object (LocalizedString)

L'assegnazione del posto del passeggero. Ad es. "no specific seat". Da utilizzare quando non esistono identificatori specifici da usare in seat.

FareClass

Enum
FARE_CLASS_UNSPECIFIED
ECONOMY
economy

Alias precedente per ECONOMY. Deprecato.

FIRST
first

Alias precedente per FIRST. Deprecato.

BUSINESS
business

Alias precedente per BUSINESS. Deprecato.

TripType

Enum
TRIP_TYPE_UNSPECIFIED
ROUND_TRIP
roundTrip

Alias precedente per ROUND_TRIP. Deprecato.

ONE_WAY
oneWay

Alias precedente per ONE_WAY. Deprecato.

ActivationStatus

Lo stato di attivazione dell'oggetto. Questo campo include lo stato di attivazione se il valore supporta l'attivazione.

Rappresentazione JSON
{
  "state": enum (State)
}
Campi
state

enum (State)

Stato

Enum
UNKNOWN_STATE
NOT_ACTIVATED Non attivato. Questo è lo stato predefinito.
not_activated

Alias precedente per NOT_ACTIVATED. Deprecato.

ACTIVATED Attivata
activated

Alias precedente per ACTIVATED. Deprecato.

DeviceContext

Contesto del dispositivo associato all'oggetto.

Rappresentazione JSON
{
  "deviceToken": string
}
Campi
deviceToken

string

Se impostato, le informazioni sull'utilizzo verranno restituite al dispositivo specificato solo al momento dell'attivazione dell'oggetto. Non deve essere utilizzato come identificatore stabile per tracciare il dispositivo di un utente. Può variare da una tessera all'altra per lo stesso dispositivo o anche da un'attivazione all'altra per lo stesso dispositivo. Quando si imposta questa opzione, i chiamanti devono impostare anche hasLinkedDevice per l'oggetto che viene attivato.

Metodi

addmessage

Aggiunge un messaggio all'oggetto di trasporto a cui fa riferimento l'ID oggetto specificato.

get

Restituisce l'oggetto di transito con l'ID oggetto specificato.

insert

Inserisce un oggetto di trasporto pubblico con l'ID e le proprietà specificati.

list

Restituisce un elenco di tutti gli oggetti di trasporto pubblico per un determinato ID emittente.

patch

Aggiorna l'oggetto di transito a cui fa riferimento l'ID oggetto specificato.

update

Aggiorna l'oggetto di trasporto pubblico a cui fa riferimento l'ID oggetto specificato.