- 資源:TransitObject
- PassengerType
- TicketStatus
- ConcessionCategory
- TicketRestrictions
- PurchaseDetails
- TicketCost
- TicketLeg
- TicketSeat
- FareClass
- TripType
- ActivationStatus
- 狀態
- DeviceContext
- 方法
資源:TransitObject
JSON 表示法 |
---|
{ "classReference": { object ( |
欄位 | |
---|---|
classReference |
父項類別的沿用欄位副本。這類欄位是在 GET 執行期間擷取。 |
ticketNumber |
票券的編號。這是大眾運輸業者系統中票券的專屬 ID。 |
passengerType |
乘客人數。 |
passengerNames |
票券指派的乘客姓名。上述 |
tripId |
如果使用者儲存了同一趟行程的多張票券,系統會使用這個 ID 將票券分組。 |
ticketStatus |
票券的狀態。如果狀態會影響顯示,請改用 |
customTicketStatus |
當 |
concessionCategory |
票券的優待票類別。 |
customConcessionCategory |
當 |
ticketRestrictions |
使用這張票券的相關限制。舉例來說,這張票券會在星期幾使用,或是可使用哪些路線。 |
purchaseDetails |
這張票券的購買明細。 |
ticketLeg |
單趟票券行程含有出發和抵達的資訊,以及搭乘和座位資訊。如果要指定多段路段,請改用 |
ticketLegs[] |
每張票券可以包含一個以上的路段。每段行程都包含出發和抵達的資訊,以及搭乘和座位資訊。如果僅指定一段行程,請改用 |
hexBackgroundColor |
資訊卡的背景顏色。如果未設定,將會使用主頁橫幅的主要顏色;如果未設定主頁橫幅,則會使用標誌的主要顏色。格式為 #rrggbb,其中 rrggbb 是十六進位的 RGB 三元組,例如 |
tripType |
必要欄位。此大眾運輸物件代表的行程類型。用於判斷票證標題和/或起點與目的地之間要使用的符號。 |
id |
必要欄位。物件的專屬 ID。特定核發者的所有物件 ID 都不得重複。這個值應採用以下格式:issuer ID。identifier,其中前者是由 Google 核發,後者則您指定。專屬 ID 只能包含英數字元、「.」、「_」或「-」。 |
classId |
必要欄位。與這個物件相關聯的類別。必須是與這個物件相同的類型、已存在,而且必須經過核准的類別。 類別 ID 應採用以下格式:issuer ID。identifier,其中前者是由 Google 核發,後者則您指定。 |
version |
已淘汰 |
state |
必要欄位。物件狀態。這個欄位可用來判斷物件在應用程式中的顯示方式。舉例來說, |
barcode |
條碼類型和值。 |
messages[] |
應用程式中顯示的訊息陣列。這個物件的所有使用者都會收到與該物件相關聯的訊息。這類欄位的數量上限為 10 個。 |
validTimeInterval |
這個物件處於 |
locations[] |
注意:這個欄位目前不支援觸發地理通知。 |
hasUsers |
指出這個物件是否有使用者。這個欄位是由平台設定。 |
smartTapRedemptionValue |
系統會透過 NFC 為這個物件傳輸透過智慧感應功能認證的感應式刷卡機。此外,類別層級 |
hasLinkedDevice |
這個物件目前是否已連結至單一裝置。當使用者儲存物件,並將物件連結到裝置時,平台會設定這個欄位。適用於特定合作夥伴。詳情請洽詢支援團隊。 |
disableExpirationNotification |
指出是否應明確抑制通知。如果將這個欄位設為 true,無論 目前只能針對優惠進行設定。 |
infoModuleData |
已淘汰,請改用 textModulesData。 |
imageModulesData[] |
圖片模組資料。這類欄位的顯示數量上限為物件層級 1 個,以及類別物件層級 1 個。 |
textModulesData[] |
文字模組資料。如果類別中也定義了文字模組資料,則兩項資料都會顯示。這類欄位的顯示數量上限為物件中的 10 個,以及類別中的 10 個。 |
linksModuleData |
連結模組資料。如果類別中也定義了連結模組資料,則兩項資料都會顯示。 |
appLinkData |
選用的應用程式或網站連結,會顯示在票證正面的按鈕中。如果為對應的類別提供 AppLinkData,系統就會顯示 AppLinkData。 |
activationStatus |
物件的啟用狀態。如果類別已設定 |
rotatingBarcode |
旋轉的條碼類型和值。 |
deviceContext |
與物件相關聯的裝置內容。 |
heroImage |
顯示在資訊卡正面的選用橫幅圖片。如果沒有,則會顯示類別的主頁橫幅 (如有)。如果缺少類別的主頁橫幅,就不會顯示任何訊息。 |
groupingInfo |
控管票證分組方式的資訊。 |
passConstraints |
傳遞物件的限制條件。包括限制 NFC 和螢幕截圖的行為。 |
PassengerType
列舉 | |
---|---|
PASSENGER_TYPE_UNSPECIFIED |
|
SINGLE_PASSENGER |
|
singlePassenger |
|
MULTIPLE_PASSENGERS |
|
multiplePassengers |
|
TicketStatus
列舉 | |
---|---|
TICKET_STATUS_UNSPECIFIED |
|
USED |
|
used |
|
REFUNDED |
|
refunded |
|
EXCHANGED |
|
exchanged |
|
ConcessionCategory
列舉 | |
---|---|
CONCESSION_CATEGORY_UNSPECIFIED |
|
ADULT |
|
adult |
|
CHILD |
|
child |
|
SENIOR |
|
senior |
|
TicketRestrictions
JSON 表示法 |
---|
{ "routeRestrictions": { object ( |
欄位 | |
---|---|
routeRestrictions |
可能的路線限制。例如,這裡可能會是「僅限預訂的跨國家/地區火車」字串。 |
routeRestrictionsDetails |
進一步瞭解上述 |
timeRestrictions |
關於這張票券使用時間的相關限制。 |
otherRestrictions |
不屬於「路線」或「時間」類別的其他限制。 |
PurchaseDetails
JSON 表示法 |
---|
{
"purchaseReceiptNumber": string,
"purchaseDateTime": string,
"accountId": string,
"confirmationCode": string,
"ticketCost": {
object ( |
欄位 | |
---|---|
purchaseReceiptNumber |
透過售票機構追蹤購票資訊的收據編號/ID。 |
purchaseDateTime |
票券的購買日期/時間。 日期/時間採用 ISO 8601 擴充格式 (無論是否含有偏移量)。時間的精確度可以指定到奈秒。偏移量可以指定秒精確度 (雖然偏移秒數並非 ISO 8601 的一部分)。 例如:
在沒有偏移資訊的情況下,某些實用功能可能無法使用。 |
accountId |
用於購票的帳戶 ID。 |
confirmationCode |
購買交易的確認代碼。多張不同票券可能會有相同的確認碼,且可使用確認碼將票券分組。 |
ticketCost |
票券費用。 |
TicketCost
JSON 表示法 |
---|
{ "faceValue": { object ( |
欄位 | |
---|---|
faceValue |
票券面額。 |
purchasePrice |
票券的實際購買價格 (稅後和/或折扣後)。 |
discountMessage |
說明所套用任何折扣的訊息。 |
TicketLeg
JSON 表示法 |
---|
{ "originStationCode": string, "originName": { object ( |
欄位 | |
---|---|
originStationCode |
出發站台代碼。如果 |
originName |
出發站名稱。如果 |
destinationStationCode |
目的地站點代碼。 |
destinationName |
目的地名稱。 |
departureDateTime |
出發日期/時間。如果大眾運輸物件上並未設定有效時間間隔,則此為必填屬性。 日期/時間採用 ISO 8601 擴充格式 (無論是否含有偏移量)。時間的精確度可以指定到奈秒。偏移量可以指定秒精確度 (雖然偏移秒數並非 ISO 8601 的一部分)。 例如:
不含偏移量的日期/時間部分會視為「當地日期/時間」,且應是出發站的當地日期/時間。例如,如果在 2018 年 6 月 5 日 20 時從出發站點出發,則當地日期/時間的部分應為 在沒有偏移資訊的情況下,某些實用功能可能無法使用。 |
arrivalDateTime |
抵達日期/時間。 日期/時間採用 ISO 8601 擴充格式 (無論是否含有偏移量)。時間的精確度可以指定到奈秒。偏移量可以指定秒精確度 (雖然偏移秒數並非 ISO 8601 的一部分)。 例如:
不含偏移量的日期/時間部分會視為「當地日期/時間」,且應是目的地站點的當地日期/時間。例如,如果活動是在 2018 年 6 月 5 日 20 時於目的地站台發生,則當地日期/時間的部分應為 在沒有偏移資訊的情況下,某些實用功能可能無法使用。 |
fareName |
這個行程的票價簡短說明/名稱。例如「任何時間單次使用」。 |
carriage |
乘客需要登機的火車或船舶名稱/編號。 |
platform |
乘客乘車的月台或閘門。 |
zone |
月台內的乘車區域。 |
ticketSeat |
乘客的預留座位。如果要指定多個座位,請改用 |
ticketSeats[] |
乘客的預留座位。如果僅要指定一個座位,請改用 |
transitOperatorName |
負責營運這個行程路段的大眾運輸業者名稱。 |
transitTerminusName |
火車/公車等交通工具的終點站或目的地。 |
TicketSeat
JSON 表示法 |
---|
{ "fareClass": enum ( |
欄位 | |
---|---|
fareClass |
售票座位的票價級別。 |
customFareClass |
未套用 |
coach |
售票座位所在的火車車廂或教練的 ID。例如:「10」 |
seat |
售票座位所在位置的 ID,例如:「42」。如果沒有專屬 ID,請改用 |
seatAssignment |
乘客的座位安排。例如:「沒有特定座位」。使用時機為 |
FareClass
列舉 | |
---|---|
FARE_CLASS_UNSPECIFIED |
|
ECONOMY |
|
economy |
|
FIRST |
|
first |
|
BUSINESS |
|
business |
|
TripType
列舉 | |
---|---|
TRIP_TYPE_UNSPECIFIED |
|
ROUND_TRIP |
|
roundTrip |
|
ONE_WAY |
|
oneWay |
|
ActivationStatus
物件的啟用狀態。如果重要資料支援啟用作業,這個欄位會納入啟用狀態。
JSON 表示法 |
---|
{
"state": enum ( |
欄位 | |
---|---|
state |
|
狀態
列舉 | |
---|---|
UNKNOWN_STATE |
|
NOT_ACTIVATED |
未啟用 (此為預設狀態) |
not_activated |
|
ACTIVATED |
啟用時間 |
activated |
|
DeviceContext
與物件相關聯的裝置內容。
JSON 表示法 |
---|
{ "deviceToken": string } |
欄位 | |
---|---|
deviceToken |
設定後,系統只會在啟動物件時將兌換資訊傳回指定裝置。不應做為追蹤使用者裝置的穩定 ID。這項設定可能會變更,變更在同一部裝置上使用不同的票證,或是在同一部裝置使用不同的啟動程序。設定這項設定時,呼叫端也必須在啟用的物件中設定 hasLinkedDevice。 |
方法 |
|
---|---|
|
在指定物件 ID 參照的大眾運輸物件中新增訊息。 |
|
傳回具有指定物件 ID 的大眾運輸物件。 |
|
插入具有指定 ID 和屬性的大眾運輸物件。 |
|
傳回指定核發者 ID 的所有大眾運輸物件清單。 |
|
更新指定物件 ID 參照的大眾運輸物件。 |
|
更新指定物件 ID 參照的大眾運輸物件。 |