REST Resource: transitobject

Zasób: TransitObject

Zapis 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)
  }
}
Pola
classReference

object (TransitClass)

Kopia dziedziczonych pól klasy nadrzędnej. Te pola są pobierane podczas żądania GET.

ticketNumber

string

Numer biletu. Jest to unikalny identyfikator biletu w systemie operatora transportu publicznego.

passengerType

enum (PassengerType)

Liczba pasażerów.

passengerNames

string

Nazwy pasażerów, którym przydzielono bilet. Opisane wyżej pole passengerType ma dać Google kontekst dla tego pola.

tripId

string

Ten identyfikator służy do grupowania biletów, jeśli użytkownik zapisał kilka biletów na tę samą podróż.

ticketStatus

enum (TicketStatus)

Stan biletu. W przypadku stanów, które mają wpływ na wyświetlanie, użyj pola state.

customTicketStatus

object (LocalizedString)

Własny stan używany w przypadku wartości stanu biletu, gdy ticketStatus nie udostępnia właściwej opcji. Nie można ustawić wartości ticketStatus i customTicketStatus.

concessionCategory

enum (ConcessionCategory)

Kategoria ulgi związanej z biletem.

customConcessionCategory

object (LocalizedString)

Własna kategoria ulgi, której należy użyć, gdy kategoria concessionCategory nie zawiera właściwej opcji. Nie można ustawić wartości concessionCategory i customConcessionCategory.

ticketRestrictions

object (TicketRestrictions)

Informacje o ograniczeniach dotyczących korzystania z tego biletu. Na przykład w które dni tygodnia należy go używać lub jakie trasy można pokonywać.

purchaseDetails

object (PurchaseDetails)

Szczegóły zakupu biletu.

ticketLeg

object (TicketLeg)

Pojedynczy etap biletu zawiera informacje na temat odjazdu i przyjazdu oraz informacje o wejściu na pokład i przydzielonym miejscu. Jeśli chcesz określić więcej niż jeden odcinek, użyj pola ticketLegs. Nie można ustawić wartości ticketLeg i ticketLegs.

ticketLegs[]

object (TicketLeg)

Każdy bilet może zawierać co najmniej 1 etap. Każdy odcinek biletu zawiera informacje na temat odjazdu i przyjazdu, wejścia na pokład i przydzielenia miejsca. Jeśli chcesz określić tylko jeden odcinek, użyj pola ticketLeg. Nie można ustawić wartości ticketLeg i ticketLegs.

hexBackgroundColor

string

Kolor tła karty. Jeśli nie jest ustawiony, używany jest dominujący kolor banera powitalnego, a jeśli nie jest ustawiony, używany jest kolor dominujący logo. Format to #rrggbb, gdzie rrggbb to szesnastkowy zapis RGB, taki jak #ffcc00. Możesz także używać skróconej wersji zapisu RGB w formacie #rgb, np. #fc0.

tripType

enum (TripType)

Wymagane. Typ podróży, którą reprezentuje ten obiekt transportu publicznego. Służy do określenia tytułu karty lub symbolu, który ma być używany między miejscem wylotu a miejscem docelowym.

id

string

Wymagane. Unikalny identyfikator obiektu. Ten identyfikator musi być unikalny wśród wszystkich obiektów wydawcy. Ta wartość powinna mieć format issuer ID.identifier, gdzie pierwszy identyfikator jest wystawiany przez Google, a drugi jest wybierany przez Ciebie. Unikalny identyfikator powinien zawierać tylko znaki alfanumeryczne oraz znaki „.”, „_” lub „-”.

classId

string

Wymagane. Klasa powiązana z tym obiektem. Klasa musi być tego samego typu co ten obiekt, musi już istnieć i musi być zatwierdzona.

Identyfikatory klas powinny mieć format issuer ID.identifier, gdzie pierwszy identyfikator jest wystawiany przez Google, a drugi jest wybierany przez Ciebie.

version
(deprecated)

string (int64 format)

Wycofano

state

enum (State)

Wymagane. Stan obiektu. To pole służy do określania sposobu wyświetlania obiektu w aplikacji. Na przykład obiekt inactive jest przeniesiony do sekcji „Karty, które straciły ważność”. .

barcode

object (Barcode)

Typ i wartość kodu kreskowego.

messages[]

object (Message)

Tablica komunikatów wyświetlanych w aplikacji. Wszyscy użytkownicy tego obiektu będą otrzymywać powiązane z nim komunikaty. Maksymalna liczba tych pól to 10.

validTimeInterval

object (TimeInterval)

Okres, przez jaki ten obiekt będzie active i będzie można go używać. Po upływie tego czasu stan obiektu zostanie zmieniony na expired.

locations[]

object (LatLongPoint)

Uwaga: to pole nie jest obecnie obsługiwane do aktywowania powiadomień geograficznych.

hasUsers

boolean

Wskazuje, czy obiekt ma użytkowników. To pole jest ustawiane przez platformę.

smartTapRedemptionValue

string

Wartość, która będzie przesyłana do terminala z certyfikatem smart tap przez NFC w przypadku tego obiektu. Aby karta obsługiwała smart tap, musisz też prawidłowo skonfigurować pola enableSmartTap i redemptionIssuers na poziomie klasy. Obsługiwane są tylko znaki ASCII.

hasLinkedDevice

boolean

Określa, czy ten obiekt jest obecnie połączony z jednym urządzeniem. To pole jest ustawiane przez platformę, gdy użytkownik zapisuje obiekt, łącząc go ze swoim urządzeniem. Przeznaczony do użytku przez wybranych partnerów. Aby uzyskać dodatkowe informacje, skontaktuj się z zespołem pomocy.

disableExpirationNotification

boolean

Wskazuje, czy powiadomienia mają być jawnie pomijane. Jeśli to pole ma wartość true, niezależnie od pola messages powiadomienia o utracie ważności kierowane do użytkownika będą pomijane. Domyślnie to pole ma wartość false (fałsz).

Obecnie można to ustawić tylko w przypadku ofert.

infoModuleData

object (InfoModuleData)

Rola wycofana. Zamiast tego użyj textModulesData.

imageModulesData[]

object (ImageModuleData)

Dane modułu obrazu. Maksymalna liczba wyświetlanych pól wynosi 1 z poziomu obiektu i 1 na poziomie obiektu klasy.

textModulesData[]

object (TextModuleData)

Dane modułu tekstowego. Jeśli dane modułu tekstowego są określone również w klasie, będą wyświetlane jedne i drugie. Maksymalna liczba wyświetlanych pól to 10 z obiektu i 10 z klasy.

activationStatus

object (ActivationStatus)

Stan aktywacji obiektu. Wymagany, jeśli zajęcia mają ustawione activationOptions.

rotatingBarcode

object (RotatingBarcode)

Typ i wartość zmieniającego się kodu kreskowego.

deviceContext

object (DeviceContext)

Kontekst urządzenia powiązany z obiektem.

heroImage

object (Image)

Opcjonalny obraz banera wyświetlany z przodu karty. Jeśli takiego nie ma, wyświetli się baner powitalny zajęć (jeśli są obecne). Jeśli nie ma też banera powitalnego zajęć, nic się nie wyświetli.

groupingInfo

object (GroupingInfo)

Informacje określające sposób grupowania kart.

passConstraints

object (PassConstraints)

Przekazuj ograniczenia dla obiektu. Obejmuje ograniczenie możliwości korzystania z NFC i zrzutów ekranu.

saveRestrictions

object (SaveRestrictions)

Ograniczenia dotyczące obiektu, które musi zostać zweryfikowane, zanim użytkownik spróbuje zapisać kartę. Te ograniczenia będą stosowane tylko podczas zapisywania. Jeśli ograniczenia zmienią się po zapisaniu karty przez użytkownika, nowe ograniczenia nie zostaną zastosowane do zapisanej karty.

PassengerType

Wartości w polu enum
PASSENGER_TYPE_UNSPECIFIED
SINGLE_PASSENGER
singlePassenger

Starsza wersja aliasu dla SINGLE_PASSENGER. Rola wycofana.

MULTIPLE_PASSENGERS
multiplePassengers

Starsza wersja aliasu dla MULTIPLE_PASSENGERS. Rola wycofana.

TicketStatus

Wartości w polu enum
TICKET_STATUS_UNSPECIFIED
USED
used

Starsza wersja aliasu dla USED. Rola wycofana.

REFUNDED
refunded

Starsza wersja aliasu dla REFUNDED. Rola wycofana.

EXCHANGED
exchanged

Starsza wersja aliasu dla EXCHANGED. Rola wycofana.

ConcessionCategory

Wartości w polu enum
CONCESSION_CATEGORY_UNSPECIFIED
ADULT
adult

Starsza wersja aliasu dla ADULT. Rola wycofana.

CHILD
child

Starsza wersja aliasu dla CHILD. Rola wycofana.

SENIOR
senior

Starsza wersja aliasu dla SENIOR. Rola wycofana.

TicketRestrictions

Zapis JSON
{
  "routeRestrictions": {
    object (LocalizedString)
  },
  "routeRestrictionsDetails": {
    object (LocalizedString)
  },
  "timeRestrictions": {
    object (LocalizedString)
  },
  "otherRestrictions": {
    object (LocalizedString)
  }
}
Pola
routeRestrictions

object (LocalizedString)

Ograniczenia dotyczące możliwych tras. Może to być na przykład ciąg „Tylko zarezerwowane pociągi przełajowe”.

routeRestrictionsDetails

object (LocalizedString)

Więcej informacji o powyższych routeRestrictions.

timeRestrictions

object (LocalizedString)

Ograniczenia dotyczące czasu wykorzystania tego biletu.

otherRestrictions

object (LocalizedString)

Dodatkowe ograniczenia, które nie należą do „trasy”. lub „time” kategorii reklam.

PurchaseDetails

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

string

Numer rachunku lub identyfikator do śledzenia zakupu biletu przez podmiot, który sprzedał bilet.

purchaseDateTime

string

Data i godzina zakupu biletu.

To jest data/godzina w rozszerzonym formacie ISO 8601 z przesunięciem lub bez niego. Czas można określić z dokładnością do nanosekundy. Przesunięcia można określić z dokładnością do sekund (mimo że przesunięcie w sekundach nie jest objęte normą ISO 8601).

Na przykład:

W UTC 1985-04-12T23:20:50.52Z to 20 minut i 50, 52 sekundy po godzinie 23 w dniu 12 kwietnia 1985 roku.

1985-04-12T19:20:50.52-04:00 to 20 minut i 50, 52 sekundy po godzinie 19 w dniu 12 kwietnia 1985 roku, 4 godziny przed UTC (ta sama chwila co w przykładzie powyżej). Gdyby wydarzenie odbyło się w Nowym Jorku, byłby to odpowiednik czasu wschodniego letniego (EDT). Pamiętaj, że przesunięcie jest różne w regionach, w których obowiązuje czas letni, w zależności od pory roku.

Bez informacji o przesunięciu 1985-04-12T19:20:50.52 to 20 minut i 50, 52 sekundy po godzinie 19 w dniu 12 kwietnia 1985 roku.

Bez informacji o przesunięciu niektóre zaawansowane funkcje mogą być niedostępne.

accountId

string

Identyfikator konta użytego do zakupu biletu.

confirmationCode

string

Kod potwierdzenia zakupu. Może być taki sam dla wielu różnych biletów i służy do grupowania biletów.

ticketCost

object (TicketCost)

Koszt biletu.

TicketCost

Zapis JSON
{
  "faceValue": {
    object (Money)
  },
  "purchasePrice": {
    object (Money)
  },
  "discountMessage": {
    object (LocalizedString)
  }
}
Pola
faceValue

object (Money)

Wartość nominalna biletu.

purchasePrice

object (Money)

Rzeczywista cena zakupu biletu, po opodatkowaniu lub rabatach.

discountMessage

object (LocalizedString)

Komunikat opisujący każdy zastosowany rabat.

TicketLeg

Zapis 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)
  }
}
Pola
originStationCode

string

Kod stacji początkowej. Jest wymagane, jeśli podano destinationStationCode lub nie ma originName.

originName

object (LocalizedString)

Nazwa stacji początkowej. Jest wymagane, jeśli podano desinationName lub nie ma originStationCode.

destinationStationCode

string

Kod stacji docelowej.

destinationName

object (LocalizedString)

Nazwa miejsca docelowego.

departureDateTime

string

Data i godzina wyjazdu. Jest wymagane, jeśli dla obiektu biletu nie ustawiono przedziału czasu ważności.

To jest data/godzina w rozszerzonym formacie ISO 8601 z przesunięciem lub bez niego. Czas można określić z dokładnością do nanosekundy. Przesunięcia można określić z dokładnością do sekund (mimo że przesunięcie w sekundach nie jest objęte normą ISO 8601).

Na przykład:

W UTC 1985-04-12T23:20:50.52Z to 20 minut i 50, 52 sekundy po godzinie 23 w dniu 12 kwietnia 1985 roku.

1985-04-12T19:20:50.52-04:00 to 20 minut i 50, 52 sekundy po godzinie 19 w dniu 12 kwietnia 1985 roku, 4 godziny przed UTC (ta sama chwila co w przykładzie powyżej). Gdyby wydarzenie odbyło się w Nowym Jorku, byłby to odpowiednik czasu wschodniego letniego (EDT). Pamiętaj, że przesunięcie jest różne w regionach, w których obowiązuje czas letni, w zależności od pory roku.

Bez informacji o przesunięciu 1985-04-12T19:20:50.52 to 20 minut i 50, 52 sekundy po godzinie 19 w dniu 12 kwietnia 1985 roku.

Część daty i godziny bez przesunięcia jest uważana za „lokalną datę i godzinę”. Powinny to być lokalna data i godzina na stacji początkowej. Jeśli na przykład wyjazd ze stacji początkowej ma nastąpić o godzinie 20 dnia 5 czerwca 2018 roku, lokalną datą i godziną powinno być 2018-06-05T20:00:00. Jeśli lokalna data i godzina na stacji początkowej przypadają 4 godziny przed UTC, można dołączyć przesunięcie o -04:00.

Bez informacji o przesunięciu niektóre zaawansowane funkcje mogą być niedostępne.

arrivalDateTime

string

Data i godzina przybycia.

To jest data/godzina w rozszerzonym formacie ISO 8601 z przesunięciem lub bez niego. Czas można określić z dokładnością do nanosekundy. Przesunięcia można określić z dokładnością do sekund (mimo że przesunięcie w sekundach nie jest objęte normą ISO 8601).

Na przykład:

W UTC 1985-04-12T23:20:50.52Z to 20 minut i 50, 52 sekundy po godzinie 23 w dniu 12 kwietnia 1985 roku.

1985-04-12T19:20:50.52-04:00 to 20 minut i 50, 52 sekundy po godzinie 19 w dniu 12 kwietnia 1985 roku, 4 godziny przed UTC (ta sama chwila co w przykładzie powyżej). Gdyby wydarzenie odbyło się w Nowym Jorku, byłby to odpowiednik czasu wschodniego letniego (EDT). Pamiętaj, że przesunięcie jest różne w regionach, w których obowiązuje czas letni, w zależności od pory roku.

Bez informacji o przesunięciu 1985-04-12T19:20:50.52 to 20 minut i 50, 52 sekundy po godzinie 19 w dniu 12 kwietnia 1985 roku.

Część daty i godziny bez przesunięcia jest uważana za „lokalną datę i godzinę”. Powinny to być lokalna data i godzina na stacji docelowej. Jeśli na przykład wydarzenie ma nastąpić na stacji docelowej o godzinie 20 dnia 5 czerwca 2018 roku, lokalną datą i godziną powinno być 2018-06-05T20:00:00. Jeśli lokalna data i godzina na stacji docelowej przypadają 4 godziny przed UTC, można dołączyć przesunięcie o -04:00.

Bez informacji o przesunięciu niektóre zaawansowane funkcje mogą być niedostępne.

fareName

object (LocalizedString)

Krótki opis lub nazwa opłaty za ten etap podróży. Na przykład „Jednorazowe użycie w dowolnym czasie”.

carriage

string

Nazwa lub numer pociągu lub statku, na który pasażer musi wejść.

platform

string

Peron lub bramka, na której pasażer może wsiąść na pokład.

zone

string

Strefa wsiadania do pociągu w obrębie peronu.

ticketSeat

object (TicketSeat)

Miejsce zarezerwowane dla pasażerów. Jeśli chcesz określić więcej niż jedno miejsce, użyj pola ticketSeats. Nie można ustawić wartości ticketSeat i ticketSeats.

ticketSeats[]

object (TicketSeat)

Miejsce zarezerwowane dla pasażerów. Jeśli chcesz określić tylko jedno miejsce, użyj pola ticketSeat. Nie można ustawić wartości ticketSeat i ticketSeats.

transitOperatorName

object (LocalizedString)

Nazwa operatora transportu publicznego obsługującego ten etap podróży.

transitTerminusName

object (LocalizedString)

Stacja końcowa lub miejsce docelowe pociągu, autobusu itp.

TicketSeat

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

enum (FareClass)

Klasa taryfy biletowanego miejsca.

customFareClass

object (LocalizedString)

Niestandardowa klasa taryfy, którą należy zastosować, jeśli nie ma zastosowania żadna fareClass. Nie można ustawić wartości fareClass i customFareClass.

coach

string

Identyfikator wagonu lub wagonu, w którym znajduje się biletowane miejsce. np. „10”

seat

string

Identyfikator miejsca, w którym znajduje się biletowane miejsce. np. „42”. Jeśli nie ma określonego identyfikatora, zamiast tego użyj seatAssigment.

seatAssignment

object (LocalizedString)

Przypisanie miejsca pasażera. np. „brak konkretnego miejsca”. Należy używać, gdy w seat nie ma konkretnego identyfikatora.

FareClass

Wartości w polu enum
FARE_CLASS_UNSPECIFIED
ECONOMY
economy

Starsza wersja aliasu dla ECONOMY. Rola wycofana.

FIRST
first

Starsza wersja aliasu dla FIRST. Rola wycofana.

BUSINESS
business

Starsza wersja aliasu dla BUSINESS. Rola wycofana.

TripType

Wartości w polu enum
TRIP_TYPE_UNSPECIFIED
ROUND_TRIP
roundTrip

Starsza wersja aliasu dla ROUND_TRIP. Rola wycofana.

ONE_WAY
oneWay

Starsza wersja aliasu dla ONE_WAY. Rola wycofana.

ActivationStatus

Stan aktywacji obiektu. To pole zawiera stan aktywacji, jeśli wartość obsługuje aktywację.

Zapis JSON
{
  "state": enum (State)
}
Pola
state

enum (State)

Stan

Wartości w polu enum
UNKNOWN_STATE
NOT_ACTIVATED Nie aktywowano, to jest stan domyślny
not_activated

Starsza wersja aliasu dla NOT_ACTIVATED. Rola wycofana.

ACTIVATED Aktywowano
activated

Starsza wersja aliasu dla ACTIVATED. Rola wycofana.

DeviceContext

Kontekst urządzenia powiązany z obiektem.

Zapis JSON
{
  "deviceToken": string
}
Pola
deviceToken

string

Jeśli jest ustawiona, informacje o skorzystaniu z promocji będą zwracane na dane urządzenie dopiero po aktywacji obiektu. Nie należy go używać jako stałego identyfikatora do śledzenia urządzenia użytkownika. Może się zmieniać w przypadku różnych kart na tym samym urządzeniu, a nawet przy różnych aktywacji na tym samym urządzeniu. Gdy to ustawienie jest włączone, osoby wywołujące muszą też ustawić parametr hasLinkedDevice na aktywowanym obiekcie.

Metody

addmessage

Dodaje wiadomość do obiektu biletu, do którego odwołuje się podany identyfikator obiektu.

get

Zwraca obiekt biletu z podanym identyfikatorem obiektu.

insert

Wstawia obiekt biletu z podanym identyfikatorem i właściwościami.

list

Zwraca listę wszystkich obiektów biletu dla podanego identyfikatora wydawcy.

patch

Aktualizuje obiekt biletu, do którego odwołuje się podany identyfikator obiektu.

update

Aktualizuje obiekt biletu, do którego odwołuje się podany identyfikator obiektu.