REST Resource: transitobject

Recurso: TransitObject

Representação 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)
    }
  ]
}
Campos
classReference

object (TransitClass)

Uma cópia dos campos herdados da classe pai. Estes campos são recuperados durante um GET.

ticketNumber

string

O número da passagem. É um identificador exclusivo da passagem no sistema do operador de transporte público.

passengerType

enum (PassengerType)

O número de passageiros.

passengerNames

string

Os nomes dos passageiros a quem a passagem está atribuída. O campo passengerType acima destina-se a contextualizar o Google neste campo.

tripId

string

Este ID é usado para agrupar passagens, caso o usuário tenha salvo várias passagens para a mesma viagem.

ticketStatus

enum (TicketStatus)

O status da passagem. Para estados que afetam a exibição, use o campo state.

customTicketStatus

object (LocalizedString)

Um status personalizado para usar como valor do status da passagem quando ticketStatus não fornece a opção correta. Não é possível definir os dois (ticketStatus e customTicketStatus), apenas um deles.

concessionCategory

enum (ConcessionCategory)

A categoria de concessão da passagem.

customConcessionCategory

object (LocalizedString)

Uma categoria de concessão personalizada a ser usada quando concessionCategory não fornece a opção correta. Não é possível definir os dois (concessionCategory e customConcessionCategory), apenas um deles.

ticketRestrictions

object (TicketRestrictions)

Informações sobre o tipo de restrições ao uso desta passagem. Por exemplo, quais dias da semana ele precisa ser usado ou quais rotas podem ser seguidas.

purchaseDetails

object (PurchaseDetails)

Detalhes da compra deste ingresso.

ticketLeg

object (TicketLeg)

Uma passagem única contém informações sobre partida e chegada, além de informações sobre embarque e assento. Se mais de um trecho for especificado, use o campo ticketLegs. Não é possível definir os dois (ticketLeg e ticketLegs), apenas um deles.

ticketLegs[]

object (TicketLeg)

Cada passagem pode conter um ou mais trechos. Cada trecho contém informações de partida e chegada, além de informações sobre embarque e assento. Se apenas um trecho for especificado, use o campo ticketLeg. Não é possível definir os dois (ticketLeg e ticketLegs), apenas um deles.

hexBackgroundColor

string

A cor de fundo do cartão. Se não estiver definida, a cor predominante da imagem principal será usada. Se não houver nenhuma imagem principal definida, a cor predominante do logotipo será usada. O formato é #rrggbb, em que rrggbb é um trio hexadecimal RGB, como #ffcc00. Você também pode usar a versão abreviada do trio RGB, que é o número rgb, como #fc0.

tripType

enum (TripType)

Obrigatório. O tipo de viagem representado por este objeto de transporte público. Usado para determinar o título do cartão e/ou qual símbolo usar entre a origem e o destino.

id

string

Obrigatório. O identificador exclusivo de um objeto. Esse ID precisa ser exclusivo entre todos os objetos de um emissor. Esse valor precisa seguir o formato issuer ID.identifier, em que o primeiro é emitido pelo Google e o segundo é escolhido por você. O identificador exclusivo deve incluir apenas caracteres alfanuméricos, ".", "_" ou "-".

classId

string

Obrigatório. A classe associada a este objeto. A classe precisa ser do mesmo tipo que este objeto, já existir e ser aprovada.

Os IDs de classe precisam seguir o formato issuer ID.identifier, em que o primeiro é emitido pelo Google e o segundo é escolhido por você.

version
(deprecated)

string (int64 format)

Suspenso

state

enum (State)

Obrigatório. O estado do objeto. Este campo é usado para determinar como um objeto é exibido no app. Por exemplo, um objeto inactive é movido para a seção "Cartões expirados".

barcode

object (Barcode)

O tipo e o valor do código de barras.

messages[]

object (Message)

Um conjunto de mensagens exibidas no app. Todos os usuários deste objeto receberão as mensagens associadas. O número máximo destes campos é 10.

validTimeInterval

object (TimeInterval)

O período em que esse objeto fica active e pode ser usado. O estado de um objeto será alterado para expired quando esse período se esgotar.

locations[]
(deprecated)

object (LatLongPoint)

Observação: no momento, esse campo não é compatível com o acionamento de notificações geográficas.

hasUsers

boolean

Indica se o objeto tem usuários. Este campo é definido pela plataforma.

smartTapRedemptionValue

string

O valor que será transmitido para um terminal certificado pelo Toque inteligente por NFC para esse objeto. Os campos de nível de classe enableSmartTap e redemptionIssuers também precisam ser configurados corretamente para que o cartão ofereça suporte ao Toque inteligente. Somente caracteres ASCII são aceitos.

hasLinkedDevice

boolean

Se este objeto está atualmente vinculado a um único dispositivo. Este campo é definido pela plataforma quando um usuário salva o objeto, vinculando-o ao dispositivo. Destinado ao uso por parceiros selecionados. Entre em contato com o suporte para mais informações.

disableExpirationNotification

boolean

Indica se as notificações devem ser explicitamente suprimidas. Se esse campo estiver definido como verdadeiro, independentemente do campo messages, as notificações de expiração enviadas para o usuário serão suprimidas. Por padrão, esse campo é definido como falso.

No momento, isso só pode ser definido para ofertas.

infoModuleData

object (InfoModuleData)

Obsoleto. Use textModulesData.

imageModulesData[]

object (ImageModuleData)

Dados do módulo de imagem. O número máximo de campos exibidos é 1 no nível do objeto e 1 no nível do objeto da classe.

textModulesData[]

object (TextModuleData)

Dados do módulo de texto. Se os dados do módulo de texto também estiverem definidos na classe, ambos serão exibidos. O número máximo de campos exibidos é 10 para o objeto e 10 para a classe.

activationStatus

object (ActivationStatus)

O status de ativação do objeto. Obrigatório se a classe tiver activationOptions definido.

rotatingBarcode

object (RotatingBarcode)

O tipo e o valor do código de barras rotativo.

deviceContext

object (DeviceContext)

Contexto do dispositivo associado ao objeto.

heroImage

object (Image)

Imagem do banner opcional exibida na parte frontal do cartão. Se não houver nenhuma, a imagem principal da classe, se houver, será exibida. Se a imagem principal da classe também não estiver presente, nada será exibido.

groupingInfo

object (GroupingInfo)

Informações que controlam como os cartões são agrupados.

passConstraints

object (PassConstraints)

Transmitir restrições para o objeto. Inclui limitar os comportamentos de NFC e captura de tela.

saveRestrictions

object (SaveRestrictions)

Restrições ao objeto que precisam ser verificadas antes que o usuário tente salvar o cartão. Essas restrições só serão aplicadas durante o tempo de gravação. Se as restrições mudarem depois que o usuário salvar o cartão, as novas restrições não serão aplicadas a um cartão já salvo.

linkedObjectIds[]

string

Os linkedObjectIds são uma lista de outros objetos, como ingresso de evento, fidelidade, oferta, genérico, vale-presente, transporte público e cartão de embarque, que precisam ser anexados automaticamente a esse objeto de transporte público. Se um usuário tivesse salvo esse cartão de transporte público, esses linkedObjectIds seriam enviados automaticamente para a carteira do usuário, a menos que ele desativasse a configuração para receber esses cartões vinculados.

Verifique se os objetos presentes em linkedObjectIds já foram inseridos. Caso contrário, as chamadas vão falhar. Depois de vincular, não é possível desvincular os objetos. Não é possível vincular objetos que pertencem a outro emissor. Há um limite para o número de objetos que podem ser vinculados a um único objeto. Depois que o limite for alcançado, os novos objetos vinculados na chamada serão ignorados silenciosamente.

Os IDs de objeto precisam seguir o formato issuer ID.identifier, em que o primeiro é emitido pelo Google e o segundo é escolhido por você.

notifyPreference

enum (NotificationSettingsForUpdates)

Se as atualizações de campo para esse objeto devem ou não acionar notificações. Quando definido como NOTIFY, tentamos acionar uma notificação de atualização de campo para os usuários. Essas notificações só serão enviadas aos usuários se o campo fizer parte de uma lista de permissões. Se for definida como DO_NOT_NOTIFY ou NOTE_CONFIG_UNSPECIFIED, nenhuma notificação será acionada. Essa configuração é temporária e precisa ser definida com cada solicitação PATCH ou UPDATE. Caso contrário, uma notificação não será acionada.

valueAddedModuleData[]

object (ValueAddedModuleData)

Dados opcionais do módulo de valor agregado. Máximo de 10 no objeto.

PassengerType

Enums
PASSENGER_TYPE_UNSPECIFIED
SINGLE_PASSENGER
singlePassenger

Alias legado de SINGLE_PASSENGER. Obsoleto.

MULTIPLE_PASSENGERS
multiplePassengers

Alias legado de MULTIPLE_PASSENGERS. Obsoleto.

TicketStatus

Enums
TICKET_STATUS_UNSPECIFIED
USED
used

Alias legado de USED. Obsoleto.

REFUNDED
refunded

Alias legado de REFUNDED. Obsoleto.

EXCHANGED
exchanged

Alias legado de EXCHANGED. Obsoleto.

ConcessionCategory

Enums
CONCESSION_CATEGORY_UNSPECIFIED
ADULT
adult

Alias legado de ADULT. Obsoleto.

CHILD
child

Alias legado de CHILD. Obsoleto.

SENIOR
senior

Alias legado de SENIOR. Obsoleto.

TicketRestrictions

Representação JSON
{
  "routeRestrictions": {
    object (LocalizedString)
  },
  "routeRestrictionsDetails": {
    object (LocalizedString)
  },
  "timeRestrictions": {
    object (LocalizedString)
  },
  "otherRestrictions": {
    object (LocalizedString)
  }
}
Campos
routeRestrictions

object (LocalizedString)

Restrições sobre rotas que podem ser tomadas. Por exemplo, pode ser a string "Somente trens reservados entre países".

routeRestrictionsDetails

object (LocalizedString)

Mais detalhes sobre as routeRestrictions acima.

timeRestrictions

object (LocalizedString)

Restrições sobre os horários em que esta passagem pode ser usada.

otherRestrictions

object (LocalizedString)

Restrições extras que não se enquadram nas categorias "rota" ou "horário".

PurchaseDetails

Representação JSON
{
  "purchaseReceiptNumber": string,
  "purchaseDateTime": string,
  "accountId": string,
  "confirmationCode": string,
  "ticketCost": {
    object (TicketCost)
  }
}
Campos
purchaseReceiptNumber

string

Número/identificador de recibo para rastrear a compra da passagem por meio da entidade que a vendeu.

purchaseDateTime

string

A data/hora da compra da passagem.

É uma data/hora em formato estendido ISO 8601, com ou sem deslocamento. O horário pode ser especificado com precisão de nanossegundos. As compensações podem ser especificadas com precisão de segundos, mesmo que os segundos de compensação não façam parte do padrão ISO 8601.

Exemplo:

1985-04-12T23:20:50.52Z seria 20 minutos e 50,52 segundos após as 23h de 12 de abril de 1985 no UTC.

1985-04-12T19:20:50.52-04:00 seria 20 minutos e 50,52 segundos após a 19ª hora de 12 de abril de 1985, 4 horas antes do UTC (no mesmo instante que o do exemplo acima). Se o evento fosse em Nova York, seria o equivalente ao Horário de verão do Leste (EDT). Lembre-se de que a compensação varia em regiões que observam o horário de verão, dependendo da época do ano.

1985-04-12T19:20:50.52 seria 20 minutos e 50,52 segundos após a 19a hora de 12 de abril de 1985, sem informações de compensação.

Sem informações de compensação, talvez alguns recursos avançados não fiquem disponíveis.

accountId

string

ID da conta usada para comprar a passagem.

confirmationCode

string

O código de confirmação da compra. Pode ser igual para várias passagens diferentes e é usado para agrupar passagens.

ticketCost

object (TicketCost)

O custo da passagem.

TicketCost

Representação JSON
{
  "faceValue": {
    object (Money)
  },
  "purchasePrice": {
    object (Money)
  },
  "discountMessage": {
    object (LocalizedString)
  }
}
Campos
faceValue

object (Money)

O valor nominal do ingresso.

purchasePrice

object (Money)

O preço de compra real da passagem, após impostos e/ou descontos.

discountMessage

object (LocalizedString)

Uma mensagem que descreve qualquer tipo de desconto aplicado.

TicketLeg

Representação 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)
  }
}
Campos
originStationCode

string

O código da estação de origem. Isso é necessário se destinationStationCode estiver presente ou se originName não estiver presente.

originName

object (LocalizedString)

O nome da estação de origem. Isso é necessário se desinationName estiver presente ou se originStationCode não estiver presente.

destinationStationCode

string

O código da estação de destino.

destinationName

object (LocalizedString)

O nome do destino.

departureDateTime

string

A data/hora da partida. Obrigatório se não houver um intervalo de tempo de validade definido no objeto de transporte público.

É uma data/hora em formato estendido ISO 8601, com ou sem compensação. O horário pode ser especificado com precisão de nanossegundos. Os deslocamentos podem ser especificados com precisão de segundos, mesmo que os segundos de deslocamento não façam parte da norma ISO 8601.

Exemplo:

1985-04-12T23:20:50.52Z seria 20 minutos e 50,52 segundos após as 23h de 12 de abril de 1985 no UTC.

1985-04-12T19:20:50.52-04:00 seria 20 minutos e 50,52 segundos após a 19ª hora de 12 de abril de 1985, 4 horas antes do UTC (no mesmo instante que o do exemplo acima). Se o evento fosse em Nova York, seria o equivalente ao Horário de verão do Leste (EDT). Lembre-se de que a compensação varia em regiões que observam o horário de verão, dependendo da época do ano.

1985-04-12T19:20:50.52 seria 20 minutos e 50,52 segundos após a 19a hora de 12 de abril de 1985, sem informações de compensação.

A parte da data/hora sem a compensação é considerada "data/hora local". É a data/hora local na estação de origem. Por exemplo, se a partida ocorrer na 20ª hora do dia 5 de junho de 2018 na estação de origem, a parte de data e hora local deverá ser 2018-06-05T20:00:00. Se a data/hora local na estação de origem for 4 horas antes do UTC, poderá ser anexada uma compensação de -04:00.

Sem informações de compensação, talvez alguns recursos avançados não fiquem disponíveis.

arrivalDateTime

string

A data/hora de chegada.

É uma data/hora em formato estendido ISO 8601, com ou sem deslocamento. O horário pode ser especificado com precisão de nanossegundos. As compensações podem ser especificadas com precisão de segundos, mesmo que os segundos de compensação não façam parte do padrão ISO 8601.

Exemplo:

1985-04-12T23:20:50.52Z seria 20 minutos e 50,52 segundos após as 23h de 12 de abril de 1985 no UTC.

1985-04-12T19:20:50.52-04:00 seria 20 minutos e 50,52 segundos após a 19ª hora de 12 de abril de 1985, 4 horas antes do UTC (no mesmo instante que o do exemplo acima). Se o evento fosse em Nova York, seria o equivalente ao Horário de verão do Leste (EDT). Lembre-se de que a compensação varia em regiões que observam o horário de verão, dependendo da época do ano.

1985-04-12T19:20:50.52 seria 20 minutos e 50,52 segundos após a 19a hora de 12 de abril de 1985, sem informações de compensação.

A parte da data/hora sem a compensação é considerada "data/hora local". É a data/hora local na estação de destino. Por exemplo, se o evento ocorrer na 20ª hora do dia 5 de junho de 2018 na estação de destino, a parte de data e hora local deverá ser 2018-06-05T20:00:00. Se a data/hora local na estação de destino for 4 horas antes do UTC, poderá ser acrescentada uma compensação de -04:00.

Sem as informações de compensação, alguns recursos avançados podem não estar disponíveis.

fareName

object (LocalizedString)

Breve descrição/nome da tarifa deste trecho da viagem. Por exemplo, "Uso único quando quiser".

carriage

string

O nome/número do trem ou navio em que o passageiro precisa embarcar.

platform

string

A plataforma ou portão em que o passageiro pode embarcar no transporte.

zone

string

A zona de embarque dentro da plataforma.

ticketSeat

object (TicketSeat)

O assento reservado para os passageiros. Se mais de um assento for especificado, use o campo ticketSeats. Não é possível definir os dois (ticketSeat e ticketSeats), apenas um deles.

ticketSeats[]

object (TicketSeat)

O assento reservado para os passageiros. Se for preciso especificar apenas um assento, use o campo ticketSeat. Não é possível definir os dois (ticketSeat e ticketSeats), apenas um deles.

transitOperatorName

object (LocalizedString)

O nome do operador do transporte público que está operando este trecho da viagem.

transitTerminusName

object (LocalizedString)

Estação terminal ou destino do trem/ônibus/etc.

TicketSeat

Representação JSON
{
  "fareClass": enum (FareClass),
  "customFareClass": {
    object (LocalizedString)
  },
  "coach": string,
  "seat": string,
  "seatAssignment": {
    object (LocalizedString)
  }
}
Campos
fareClass

enum (FareClass)

A classe de tarifa do assento da passagem.

customFareClass

object (LocalizedString)

Uma classe de tarifa personalizada a ser usada se nenhuma fareClass for aplicável. Não é possível definir os dois (fareClass e customFareClass), apenas um deles.

coach

string

O identificador do vagão ou ônibus em que o assento da passagem está localizado. Por exemplo: "10"

seat

string

O identificador de onde o assento da passagem está localizado. Por exemplo: "42". Se não houver um identificador específico, use seatAssigment.

seatAssignment

object (LocalizedString)

A atribuição do assento do passageiro. Por exemplo: "sem assento específico". Para ser usado quando não houver um identificador específico para usar em seat.

FareClass

Enums
FARE_CLASS_UNSPECIFIED
ECONOMY
economy

Alias legado de ECONOMY. Obsoleto.

FIRST
first

Alias legado de FIRST. Obsoleto.

BUSINESS
business

Alias legado de BUSINESS. Obsoleto.

TripType

Enums
TRIP_TYPE_UNSPECIFIED
ROUND_TRIP
roundTrip

Alias legado de ROUND_TRIP. Obsoleto.

ONE_WAY
oneWay

Alias legado de ONE_WAY. Obsoleto.

ActivationStatus

O status de ativação do objeto. Esse campo inclui o status de ativação se o recurso for compatível com a ativação.

Representação JSON
{
  "state": enum (State)
}
Campos
state

enum (State)

Estado

Enums
UNKNOWN_STATE
NOT_ACTIVATED Não ativado, é o status padrão
not_activated

Alias legado de NOT_ACTIVATED. Obsoleto.

ACTIVATED Ativada em
activated

Alias legado de ACTIVATED. Obsoleto.

DeviceContext

Contexto do dispositivo associado ao objeto.

Representação JSON
{
  "deviceToken": string
}
Campos
deviceToken

string

Se definido, as informações de resgate só serão retornadas para o dispositivo especificado após a ativação do objeto. Ele não pode ser usado como um identificador estável para rastrear o dispositivo de um usuário. Ele pode mudar em diferentes cartões para o mesmo dispositivo ou até mesmo em diferentes ativações para o mesmo dispositivo. Ao definir este campo, os autores das chamadas também precisam definir hasLinkedDevice no objeto que está sendo ativado.

Métodos

addmessage

Adiciona uma mensagem ao objeto de transporte público indicado pelo ID de objeto fornecido.

get

Retorna o objeto de transporte público com o ID de objeto fornecido.

insert

Insere um objeto de transporte público com o ID e as propriedades fornecidos.

list

Retorna uma lista de todos os objetos de transporte público de um determinado ID de emissor.

patch

Atualiza o objeto de transporte público indicado pelo ID de objeto fornecido.

update

Atualiza o objeto de transporte público indicado pelo ID de objeto fornecido.