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)
  }
}
Campos
classReference

object (TransitClass)

Uma cópia dos campos herdados da classe mãe. Esses campos são recuperados durante um GET.

ticketNumber

string

O número do ingresso. Esse é 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 serve para contextualizar esse campo ao Google.

tripId

string

Este ID é usado para agrupar passagens se o usuário salvou várias passagens para a mesma viagem.

ticketStatus

enum (TicketStatus)

Status do tíquete. Para estados que afetam a exibição, use o campo state.

customTicketStatus

object (LocalizedString)

Um status personalizado a ser usado como valor do status da passagem quando ticketStatus não fornece a opção correta. Não é possível definir ticketStatus e customTicketStatus.

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 concessionCategory e customConcessionCategory.

ticketRestrictions

object (TicketRestrictions)

Informações sobre os tipos de restrições ao uso deste ingresso. Por exemplo, em quais dias da semana ele precisa ser usado ou quais rotas podem ser seguidas.

purchaseDetails

object (PurchaseDetails)

Detalhes da compra da passagem.

ticketLeg

object (TicketLeg)

Uma passagem única contém informações de 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 ticketLeg e ticketLegs.

ticketLegs[]

object (TicketLeg)

Cada ingresso 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 ticketLeg e ticketLegs.

hexBackgroundColor

string

A cor de fundo do cartão. Se ela não estiver definida, a cor dominante da imagem principal será usada. Se não houver uma imagem principal definida, a cor dominante do logotipo será usada. O formato é #rrggbb, em que rrggbb é um trio hexadecimal RGB, como #ffcc00. Também é possível usar a versão abreviada do trio RGB, que é #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 último é escolhido por você. O identificador exclusivo deve incluir apenas caracteres alfanuméricos, ".", "_" ou "-".

classId

string

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

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

version
(deprecated)

string (int64 format)

Descontinuado

state

enum (State)

Obrigatório. O estado do objeto. Esse 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)

Uma matriz de mensagens exibidas no app. Todos os usuários desse objeto vão receber as mensagens associadas. O número máximo destes campos é 10.

validTimeInterval

object (TimeInterval)

O período em que este objeto será active e poderá ser usado. O estado de um objeto vai mudar para expired quando esse período terminar.

locations[]

object (LatLongPoint)

Observação: no momento, esse campo não é suportado para acionar 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 de Toque inteligente por NFC para este objeto. Os campos de nível de classe enableSmartTap e redemptionIssuers também precisam ser configurados corretamente para que o cartão seja compatível com o 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 for definido como verdadeiro, independentemente do campo messages, as notificações de expiração enviadas ao 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 destes 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 desses 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 opcional do banner exibida na frente do cartão. Se nenhuma estiver presente, será exibida a imagem principal da turma. 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)

Restrições de transmissão para o objeto. Inclui a limitação de comportamentos de NFC e de capturas de tela.

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 seguidas. Por exemplo, pode ser a string "Somente trens reservados entre países".

routeRestrictionsDetails

object (LocalizedString)

Mais detalhes sobre o 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 "trajeto" ou "horário".

PurchaseDetails

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

string

Número/identificador para rastrear a compra da passagem pelo órgão que a vendeu.

purchaseDateTime

string

A data/hora da compra do ingresso.

É 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 compensação não façam parte da ISO 8601.

Exemplo:

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

1985-04-12T19:20:50.52-04:00 seria 20 minutos e 50, 52 segundos após a 19a hora de 12 de abril de 1985, 4 horas antes do UTC (mesmo instante que o exemplo acima). Se o evento fosse em Nova York, seria o equivalente ao horário de verão do leste dos EUA (EDT, na sigla em inglês). Lembre-se de que a compensação varia em regiões que seguem 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 as informações de compensação, alguns recursos avançados podem não estar disponíveis.

accountId

string

ID da conta usada para comprar a passagem.

confirmationCode

string

O código de confirmação da compra. Pode ser o mesmo para vários ingressos diferentes e é usado para agrupar ingressos.

ticketCost

object (TicketCost)

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 real de compra da passagem, após impostos e/ou descontos.

discountMessage

object (LocalizedString)

Uma mensagem descrevendo 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. Isso é necessário quando não há 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 compensação não façam parte da ISO 8601.

Exemplo:

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

1985-04-12T19:20:50.52-04:00 seria 20 minutos e 50, 52 segundos após a 19a hora de 12 de abril de 1985, 4 horas antes do UTC (mesmo instante que o exemplo acima). Se o evento fosse em Nova York, seria o equivalente ao horário de verão do leste dos EUA (EDT, na sigla em inglês). Lembre-se de que a compensação varia em regiões que seguem 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 a "data/hora local". É a data/hora local na estação de origem. Por exemplo, se a partida ocorrer na 20a hora de 5 de junho de 2018 na estação de origem, a parte de data/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 acrescentada uma compensação de -04:00.

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

arrivalDateTime

string

A data/hora de chegada.

É 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 compensação não façam parte da ISO 8601.

Exemplo:

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

1985-04-12T19:20:50.52-04:00 seria 20 minutos e 50, 52 segundos após a 19a hora de 12 de abril de 1985, 4 horas antes do UTC (mesmo instante que o exemplo acima). Se o evento fosse em Nova York, seria o equivalente ao horário de verão do leste dos EUA (EDT, na sigla em inglês). Lembre-se de que a compensação varia em regiões que seguem 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 a "data/hora local". É a data/hora local na estação de destino. Por exemplo, se o evento ocorrer na 20a hora de 5 de junho de 2018 na estação de destino, a parte de data/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 para este trecho da viagem. Por exemplo, "Uso único a qualquer momento".

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 for necessário especificar mais de um assento, use o campo ticketSeats. Não é possível definir ticketSeat e ticketSeats.

ticketSeats[]

object (TicketSeat)

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

transitOperatorName

object (LocalizedString)

O nome do operador do transporte público que está operando este trecho de uma 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 de cliente a ser usada se nenhum fareClass se aplicar. Não é possível definir fareClass e customFareClass.

coach

string

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

seat

string

O identificador da localização do assento na passagem. 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: "nenhum assento específico". A 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. Este campo inclui o status da ativação, caso ele seja valioso.

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

enum (State)

Estado

Enums
UNKNOWN_STATE
NOT_ACTIVATED Não ativado, esse é 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 este campo for definido, as informações de resgate só serão retornadas para o dispositivo especificado depois da ativação do objeto. Ele não deve 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 código 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.