REST Resource: transitobject

Recurso: TransitObject

Representación 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)

Es una copia de los campos heredados de la clase superior. Estos campos se recuperan durante una solicitud GET.

ticketNumber

string

Es el número del ticket. Es un identificador único para el boleto en el sistema del operador de transporte público.

passengerType

enum (PassengerType)

La cantidad de pasajeros.

passengerNames

string

Los nombres de los pasajeros a los que se les asignó el boleto El campo passengerType anterior está diseñado para brindarle contexto a Google sobre este campo.

tripId

string

Este ID se usa para agrupar los boletos si el usuario guardó varios para el mismo viaje.

ticketStatus

enum (TicketStatus)

El estado del ticket Para los estados que afectan la visualización, usa el campo state.

customTicketStatus

object (LocalizedString)

Es un estado personalizado que se usará para el valor de estado del ticket cuando ticketStatus no proporcione la opción correcta. Es posible que no se establezcan ticketStatus ni customTicketStatus.

concessionCategory

enum (ConcessionCategory)

Es la categoría de la concesión del boleto.

customConcessionCategory

object (LocalizedString)

Es una categoría de concesión personalizada que se debe usar cuando concessionCategory no proporciona la opción correcta. Es posible que no se establezcan concessionCategory ni customConcessionCategory.

ticketRestrictions

object (TicketRestrictions)

Información sobre el tipo de restricciones que existen para usar este ticket. Por ejemplo, qué días de la semana se debe usar o qué rutas se pueden tomar.

purchaseDetails

object (PurchaseDetails)

Detalles de la compra de este boleto.

ticketLeg

object (TicketLeg)

Un tramo de un boleto contiene información de salida y llegada, además de información de embarque y asientos. Si se debe especificar más de una etapa, usa el campo ticketLegs. Es posible que no se establezcan ticketLeg ni ticketLegs.

ticketLegs[]

object (TicketLeg)

Cada boleto puede contener uno o más tramos. Cada tramo contiene información de salida y llegada, además de información sobre el embarque y los asientos. Si solo se debe especificar un tramo, usa el campo ticketLeg. Es posible que no se establezcan ticketLeg ni ticketLegs.

hexBackgroundColor

string

Es el color de fondo de la tarjeta. Si no se establece, se usa el color dominante de la imagen hero y, si no se establece ninguna imagen hero, se usa el color dominante del logotipo. El formato es #rrggbb, en el que rrggbb es un triplete RGB hexadecimal, como #ffcc00. También puedes usar la versión abreviada del triplete RGB, que es #rgb, como #fc0.

tripType

enum (TripType)

Es obligatorio. Es el tipo de viaje que representa este objeto de transporte público. Se usa para determinar el título del pase o el símbolo que se usará entre el origen y el destino.

id

string

Es obligatorio. Es el identificador único de un objeto. Este ID debe ser único en todos los objetos de un emisor. Este valor debe seguir el formato issuer ID.identifier, donde Google emite el primero y tú eliges el segundo. El identificador único solo debe incluir caracteres alfanuméricos, ".", "_" o "-".

classId

string

Es obligatorio. La clase asociada con este objeto. La clase debe ser del mismo tipo que este objeto, ya debe existir y debe estar aprobada.

Los IDs de clase deben seguir el formato issuer ID.identifier, donde Google emite el primero y tú eliges el segundo.

version
(deprecated)

string (int64 format)

Obsoleto

state

enum (State)

Es obligatorio. Es el estado del objeto. Este campo se usa para determinar cómo se muestra un objeto en la app. Por ejemplo, un objeto inactive se mueve a la sección "Pasos vencidos".

barcode

object (Barcode)

El tipo y el valor del código de barras.

messages[]

object (Message)

Es un array de mensajes que se muestran en la app. Todos los usuarios de este objeto recibirán los mensajes asociados. La cantidad máxima de estos campos es de 10.

validTimeInterval

object (TimeInterval)

Es el período durante el cual este objeto será active y se puede usar. El estado de un objeto cambiará a expired cuando haya transcurrido este período.

locations[]
(deprecated)

object (LatLongPoint)

Nota: Por el momento, este campo no es compatible para activar notificaciones geográficas.

hasUsers

boolean

Indica si el objeto tiene usuarios. La plataforma establece este campo.

smartTapRedemptionValue

string

Es el valor que se transmitirá a una terminal certificada de Smart Tap a través de NFC para este objeto. Los campos de nivel de clase enableSmartTap y redemptionIssuers también deben configurarse correctamente para que el pase admita el Toque inteligente. Solo se admiten caracteres ASCII.

hasLinkedDevice

boolean

Indica si este objeto está vinculado a un solo dispositivo. La plataforma establece este campo cuando un usuario guarda el objeto y lo vincula a su dispositivo. Está destinado a socios seleccionados. Comunícate con el equipo de asistencia para obtener más información.

disableExpirationNotification

boolean

Indica si se deben suprimir las notificaciones de forma explícita. Si este campo se establece como verdadero, independientemente del campo messages, se suprimirán las notificaciones de vencimiento para el usuario. De forma predeterminada, este campo se establece como "false".

Por el momento, solo se puede configurar para las ofertas.

infoModuleData

object (InfoModuleData)

Obsoleta. En su lugar, usa textModulesData.

imageModulesData[]

object (ImageModuleData)

Datos del módulo de imagen La cantidad máxima de estos campos que se muestran es 1 a nivel del objeto y 1 a nivel del objeto de clase.

textModulesData[]

object (TextModuleData)

Datos del módulo de texto Si los datos del módulo de texto también se definen en la clase, se mostrarán ambos. La cantidad máxima de estos campos que se muestran es de 10 del objeto y 10 de la clase.

activationStatus

object (ActivationStatus)

El estado de activación del objeto. Es obligatorio si la clase tiene activationOptions configurado.

rotatingBarcode

object (RotatingBarcode)

El tipo y el valor del código de barras rotativo.

deviceContext

object (DeviceContext)

Es el contexto del dispositivo asociado con el objeto.

heroImage

object (Image)

Es la imagen de banner opcional que se muestra en la parte frontal de la tarjeta. Si no hay ninguna, se mostrará la imagen hero de la clase, si está presente. Si tampoco está presente la imagen hero de la clase, no se mostrará nada.

groupingInfo

object (GroupingInfo)

Es la información que controla cómo se agrupan los pases.

passConstraints

object (PassConstraints)

Pasa las restricciones del objeto. Incluye la limitación de los comportamientos de NFC y capturas de pantalla.

saveRestrictions

object (SaveRestrictions)

Son restricciones sobre el objeto que se deben verificar antes de que el usuario intente guardar el pase. Ten en cuenta que estas restricciones solo se aplicarán durante el tiempo de ahorro. Si las restricciones cambiaron después de que un usuario guardó el pase, las nuevas restricciones no se aplicarán a un pase que ya se haya guardado.

linkedObjectIds[]

string

linkedObjectIds es una lista de otros objetos, como entradas para eventos, lealtad, ofertas, genéricos, tarjetas de regalo, transporte público y tarjetas de embarque, que se deben adjuntar automáticamente a este objeto de transporte público. Si un usuario hubiera guardado esta tarjeta de transporte público, estos linkedObjectIds se enviarían automáticamente a su billetera (a menos que haya desactivado la configuración para recibir esos pases vinculados).

Asegúrate de que los objetos presentes en linkedObjectIds ya estén insertados. De lo contrario, las llamadas fallarán. Una vez vinculados, los objetos vinculados no se pueden desvincular. No puedes vincular objetos que pertenezcan a otro emisor. Existe un límite para la cantidad de objetos que se pueden vincular a un solo objeto. Una vez que se alcance el límite, se ignorarán en silencio los objetos vinculados nuevos en la llamada.

Los IDs de objetos deben seguir el formato issuer ID.identifier, donde Google emite el primero y tú eliges el segundo.

notifyPreference

enum (NotificationSettingsForUpdates)

Indica si las actualizaciones de campos de este objeto deben activar notificaciones. Cuando se establece en NOTIFY, intentaremos activar una notificación de actualización de campo para los usuarios. Estas notificaciones solo se enviarán a los usuarios si el campo forma parte de una lista de entidades permitidas. Si se establece en DO_NOT_NOTIFY o NOTIFICATION_SETTINGS_UNSPECIFIED, no se activará ninguna notificación. Este parámetro de configuración es efímero y se debe establecer con cada solicitud PATCH o UPDATE. De lo contrario, no se activará una notificación.

valueAddedModuleData[]

object (ValueAddedModuleData)

Datos opcionales del módulo de valor agregado. Máximo de diez en el objeto.

PassengerType

Enumeraciones
PASSENGER_TYPE_UNSPECIFIED
SINGLE_PASSENGER
singlePassenger

Es el alias heredado de SINGLE_PASSENGER. Obsoleta.

MULTIPLE_PASSENGERS
multiplePassengers

Es el alias heredado de MULTIPLE_PASSENGERS. Obsoleta.

TicketStatus

Enumeraciones
TICKET_STATUS_UNSPECIFIED
USED
used

Es el alias heredado de USED. Obsoleta.

REFUNDED
refunded

Es el alias heredado de REFUNDED. Obsoleta.

EXCHANGED
exchanged

Es el alias heredado de EXCHANGED. Obsoleta.

ConcessionCategory

Enumeraciones
CONCESSION_CATEGORY_UNSPECIFIED
ADULT
adult

Es el alias heredado de ADULT. Obsoleta.

CHILD
child

Es el alias heredado de CHILD. Obsoleta.

SENIOR
senior

Es el alias heredado de SENIOR. Obsoleta.

TicketRestrictions

Representación JSON
{
  "routeRestrictions": {
    object (LocalizedString)
  },
  "routeRestrictionsDetails": {
    object (LocalizedString)
  },
  "timeRestrictions": {
    object (LocalizedString)
  },
  "otherRestrictions": {
    object (LocalizedString)
  }
}
Campos
routeRestrictions

object (LocalizedString)

Restricciones sobre las rutas que se pueden tomar Por ejemplo, esta puede ser la cadena "Solo trenes CrossCountry reservados".

routeRestrictionsDetails

object (LocalizedString)

Más detalles sobre el routeRestrictions anterior.

timeRestrictions

object (LocalizedString)

Restricciones sobre los horarios en los que se puede usar este boleto

otherRestrictions

object (LocalizedString)

Restricciones adicionales que no se incluyen en las categorías "ruta" o "horario"

PurchaseDetails

Representación JSON
{
  "purchaseReceiptNumber": string,
  "purchaseDateTime": string,
  "accountId": string,
  "confirmationCode": string,
  "ticketCost": {
    object (TicketCost)
  }
}
Campos
purchaseReceiptNumber

string

Es el número o identificador del recibo para hacer un seguimiento de la compra del ticket a través de la entidad que lo vendió.

purchaseDateTime

string

La fecha y hora de compra del boleto

Es una fecha y hora en formato extendido ISO 8601, con o sin un desfase. El tiempo se puede especificar con una precisión de nanosegundos. Los desfases se pueden especificar con precisión de segundos (aunque los segundos de desfase no forman parte del estándar ISO 8601).

Por ejemplo:

1985-04-12T23:20:50.52Z sería 20 minutos y 50.52 segundos después de la hora 23 del 12 de abril de 1985 en UTC.

1985-04-12T19:20:50.52-04:00 sería 20 minutos y 50.52 segundos después de la hora 19 del 12 de abril de 1985, 4 horas antes de la UTC (el mismo instante que en el ejemplo anterior). Si el evento fuera en Nueva York, sería el equivalente a la hora de verano del este (EDT). Recuerda que el desfase varía en las regiones que observan el horario de verano, según la época del año.

1985-04-12T19:20:50.52 sería 20 minutos y 50.52 segundos después de la hora 19 del 12 de abril de 1985 sin información de compensación.

Sin información de compensación, es posible que algunas funciones enriquecidas no estén disponibles.

accountId

string

Es el ID de la cuenta que se usó para comprar el ticket.

confirmationCode

string

El código de confirmación de la compra Puede ser el mismo para varios tickets diferentes y se usa para agruparlos.

ticketCost

object (TicketCost)

El costo de la entrada.

TicketCost

Representación JSON
{
  "faceValue": {
    object (Money)
  },
  "purchasePrice": {
    object (Money)
  },
  "discountMessage": {
    object (LocalizedString)
  }
}
Campos
faceValue

object (Money)

Es el valor nominal del boleto.

purchasePrice

object (Money)

Es el precio de compra real del boleto, después de los impuestos o descuentos.

discountMessage

object (LocalizedString)

Un mensaje que describe cualquier tipo de descuento que se aplicó.

TicketLeg

Representación 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

Es el código de la estación de origen. Esto es obligatorio si destinationStationCode está presente o si originName no está presente.

originName

object (LocalizedString)

Es el nombre de la estación de origen. Esto es obligatorio si desinationName está presente o si originStationCode no está presente.

destinationStationCode

string

Es el código de la estación de destino.

destinationName

object (LocalizedString)

Es el nombre del destino.

departureDateTime

string

La fecha y hora de salida Esto es obligatorio si no hay un intervalo de tiempo de validez establecido en el objeto de tránsito.

Es una fecha y hora en formato extendido ISO 8601, con o sin un desfase. El tiempo se puede especificar con una precisión de nanosegundos. Los desfases se pueden especificar con precisión de segundos (aunque los segundos de desfase no forman parte del estándar ISO 8601).

Por ejemplo:

1985-04-12T23:20:50.52Z sería 20 minutos y 50.52 segundos después de la hora 23 del 12 de abril de 1985 en UTC.

1985-04-12T19:20:50.52-04:00 sería 20 minutos y 50.52 segundos después de la hora 19 del 12 de abril de 1985, 4 horas antes de la UTC (el mismo instante que en el ejemplo anterior). Si el evento fuera en Nueva York, sería el equivalente a la hora de verano del este (EDT). Recuerda que el desfase varía en las regiones que observan el horario de verano, según la época del año.

1985-04-12T19:20:50.52 sería 20 minutos y 50.52 segundos después de la hora 19 del 12 de abril de 1985 sin información de compensación.

La parte de la fecha y hora sin el desplazamiento se considera la "fecha y hora local". Debe ser la fecha y hora locales de la estación de origen. Por ejemplo, si la salida se produce a las 20 horas del 5 de junio de 2018 en la estación de origen, la parte de fecha y hora local debe ser 2018-06-05T20:00:00. Si la fecha y hora locales de la estación de origen son 4 horas antes de UTC, se puede agregar una compensación de -04:00.

Sin información de compensación, es posible que algunas funciones enriquecidas no estén disponibles.

arrivalDateTime

string

La fecha y hora de llegada

Es una fecha y hora en formato extendido ISO 8601, con o sin un desfase. El tiempo se puede especificar con una precisión de nanosegundos. Los desfases se pueden especificar con precisión de segundos (aunque los segundos de desfase no forman parte del estándar ISO 8601).

Por ejemplo:

1985-04-12T23:20:50.52Z sería 20 minutos y 50.52 segundos después de la hora 23 del 12 de abril de 1985 en UTC.

1985-04-12T19:20:50.52-04:00 sería 20 minutos y 50.52 segundos después de la hora 19 del 12 de abril de 1985, 4 horas antes de la UTC (el mismo instante que en el ejemplo anterior). Si el evento fuera en Nueva York, sería el equivalente a la hora de verano del este (EDT). Recuerda que el desfase varía en las regiones que observan el horario de verano, según la época del año.

1985-04-12T19:20:50.52 sería 20 minutos y 50.52 segundos después de la hora 19 del 12 de abril de 1985 sin información de compensación.

La parte de la fecha y hora sin el desplazamiento se considera la "fecha y hora local". Debe ser la fecha y hora locales de la estación de destino. Por ejemplo, si el evento ocurre a las 20 horas del 5 de junio de 2018 en la estación de destino, la parte de fecha y hora local debe ser 2018-06-05T20:00:00. Si la fecha y hora locales de la estación de destino son 4 horas antes de UTC, se puede agregar una compensación de -04:00.

Sin información de compensación, es posible que algunas funciones enriquecidas no estén disponibles.

fareName

object (LocalizedString)

Es la descripción o el nombre breve de la tarifa de este tramo del viaje. P. ej., "Uso único en cualquier momento".

carriage

string

El nombre o número del tren o barco al que debe abordar el pasajero

platform

string

Es la plataforma o puerta en la que el pasajero puede subir al vagón.

zone

string

La zona de embarque dentro de la plataforma.

ticketSeat

object (TicketSeat)

El asiento reservado para los pasajeros. Si se debe especificar más de un asiento, usa el campo ticketSeats. Es posible que no se establezcan ticketSeat ni ticketSeats.

ticketSeats[]

object (TicketSeat)

El asiento reservado para los pasajeros. Si solo se debe especificar un asiento, usa el campo ticketSeat. Es posible que no se establezcan ticketSeat ni ticketSeats.

transitOperatorName

object (LocalizedString)

Es el nombre del operador de transporte público que opera esta etapa de un viaje.

transitTerminusName

object (LocalizedString)

Estación de destino o final del tren, autobús, etcétera

TicketSeat

Representación JSON
{
  "fareClass": enum (FareClass),
  "customFareClass": {
    object (LocalizedString)
  },
  "coach": string,
  "seat": string,
  "seatAssignment": {
    object (LocalizedString)
  }
}
Campos
fareClass

enum (FareClass)

Es la clase de tarifa del asiento para el que se emitió el boleto.

customFareClass

object (LocalizedString)

Es una clase de tarifa personalizada que se usará si no se aplica fareClass. Es posible que no se establezcan fareClass ni customFareClass.

coach

string

Es el identificador del vagón o coche de tren en el que se encuentra el asiento para el que se emitió el boleto. P. ej. "10"

seat

string

Es el identificador de la ubicación del asiento con boleto. P. ej. "42". Si no hay un identificador específico, usa seatAssigment.

seatAssignment

object (LocalizedString)

La asignación del asiento del pasajero. P. ej. "Sin asiento específico". Se usa cuando no hay un identificador específico para usar en seat.

FareClass

Enumeraciones
FARE_CLASS_UNSPECIFIED
ECONOMY
economy

Es el alias heredado de ECONOMY. Obsoleta.

FIRST
first

Es el alias heredado de FIRST. Obsoleta.

BUSINESS
business

Es el alias heredado de BUSINESS. Obsoleta.

TripType

Enumeraciones
TRIP_TYPE_UNSPECIFIED
ROUND_TRIP
roundTrip

Es el alias heredado de ROUND_TRIP. Obsoleta.

ONE_WAY
oneWay

Es el alias heredado de ONE_WAY. Obsoleta.

ActivationStatus

Es el estado de activación del objeto. Este campo incluye el estado de activación si el valor admite la activación.

Representación JSON
{
  "state": enum (State)
}
Campos
state

enum (State)

Estado

Enumeraciones
UNKNOWN_STATE
NOT_ACTIVATED No activado (este es el estado predeterminado)
not_activated

Es el alias heredado de NOT_ACTIVATED. Obsoleta.

ACTIVATED Activado
activated

Es el alias heredado de ACTIVATED. Obsoleta.

DeviceContext

Es el contexto del dispositivo asociado con el objeto.

Representación JSON
{
  "deviceToken": string
}
Campos
deviceToken

string

Si se establece, la información de canje solo se mostrará en el dispositivo determinado cuando se active el objeto. No se debe usar como identificador estable para rastrear el dispositivo de un usuario. Puede cambiar entre diferentes pases para el mismo dispositivo o incluso entre diferentes activaciones para el mismo dispositivo. Cuando configures esto, los llamadores también deben establecer hasLinkedDevice en el objeto que se activa.

Métodos

addmessage

Agrega un mensaje al objeto de transporte público al que hace referencia el ID de objeto determinado.

get

Muestra el objeto de transporte público con el ID de objeto determinado.

insert

Inserta un objeto de transporte público con el ID y las propiedades determinados.

list

Muestra una lista de todos los objetos de tránsito para un ID de emisor determinado.

patch

Actualiza el objeto de tránsito al que hace referencia el ID de objeto determinado.

update

Actualiza el objeto de tránsito al que hace referencia el ID de objeto determinado.