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

object (TransitClass)

Uma cópia dos campos herdados da classe pai. 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 que a passagem é atribuída. O campo passengerType acima tem como objetivo fornecer contexto ao Google nesse campo.

tripId

string

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

ticketStatus

enum (TicketStatus)

O 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 do ingresso. Por exemplo, quais dias da semana ele precisa ser usado ou quais trajetos podem ser feitos.

purchaseDetails

object (PurchaseDetails)

Detalhes da compra desta passagem.

ticketLeg

object (TicketLeg)

Uma única passagem 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 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 ticketLeg e ticketLegs.

hexBackgroundColor

string

A cor de fundo do cartão. Se não for definida, será usada a cor dominante da imagem principal e, se nenhuma imagem principal estiver definida, a cor predominante do logotipo será usada. O formato é #rrggbb, em que rrggbb é um trio RGB hexadecimal, 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 último é escolhido por você. O identificador exclusivo precisa 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á 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)

Suspenso

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 página "Cartões expirados". nesta seção.

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 deste objeto vão receber as mensagens associadas. O número máximo desses campos é 10.

validTimeInterval

object (TimeInterval)

O período em que este objeto será active e o objeto poderá ser usado. O estado de um objeto será alterado para expired quando esse período tiver passado.

locations[]

object (LatLongPoint)

Observação: no momento, este 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 pelo Toque inteligente por NFC para esse objeto. Os campos no nível da turma 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

Indica se esse objeto está vinculado a um único dispositivo no momento. Esse 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 precisam 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 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 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 do banner opcional exibida na parte frontal do cartão. Se nenhuma estiver presente, a imagem principal da turma, se houver, será exibida. Se a imagem principal da turma 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 captura de tela.

saveRestrictions

object (SaveRestrictions)

Restrições no objeto que precisam ser verificadas antes que o usuário tente salvar o cartão. Essas restrições serão aplicadas apenas durante o horário de funcionamento. 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.

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 as 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 este ingresso pode ser usado.

otherRestrictions

object (LocalizedString)

Restrições extras que não se enquadram na "rota" ou "tempo" categorias.

PurchaseDetails

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

string

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

purchaseDateTime

string

A data/hora da compra da passagem.

É uma data/hora em formato estendido ISO 8601, com ou sem deslocamento. A hora pode ser especificada 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 a 23a hora 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 19a hora de 12 de abril de 1985, 4 horas antes do UTC (mesmo instante no tempo 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 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á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 tributos 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 será necessário se destinationStationCode estiver presente ou se originName não estiver presente.

originName

object (LocalizedString)

O nome da estação de origem. Isso será 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 de 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 deslocamento. A hora pode ser especificada 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 a 23a hora 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 19a hora de 12 de abril de 1985, 4 horas antes do UTC (mesmo instante no tempo 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 o deslocamento é considerada a "data/hora local". Deve ser 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 precisará 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 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 deslocamento. A hora pode ser especificada 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 a 23a hora 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 19a hora de 12 de abril de 1985, 4 horas antes do UTC (mesmo instante no tempo 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 o deslocamento é 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 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 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 apenas um assento for especificado, use o campo ticketSeat. Não é possível definir ticketSeat e ticketSeats.

transitOperatorName

object (LocalizedString)

O nome do operador de 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 for aplicável. 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 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 houver suporte para isso.

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

enum (State)

Estado

Enums
UNKNOWN_STATE
NOT_ACTIVATED Não ativado, este é 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 ao dispositivo especificado após a 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 essa opção, os autores da chamada 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 código de objeto fornecido.

insert

Insere um objeto de transporte público com o código 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.