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)

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)

Indica 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 boletos si el usuario guardó varios boletos para el mismo viaje.

ticketStatus

enum (TicketStatus)

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

customTicketStatus

object (LocalizedString)

Es un estado personalizado para usar en el valor del estado del ticket cuando ticketStatus no brinda la opción adecuada. Es posible que no se hayan configurado 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 hayan configurado concessionCategory ni customConcessionCategory.

ticketRestrictions

object (TicketRestrictions)

Información sobre el tipo de restricciones que existen para usar este boleto. 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 solo tramo de boleto contiene información de salida y llegada, junto con información sobre el embarque y cómo sentarse. Si se debe especificar más de un segmento, usa el campo ticketLegs en su lugar. 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 salidas y llegadas, 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 hayan configurado ticketLeg ni ticketLegs.

hexBackgroundColor

string

El color de fondo de la tarjeta Si no se establece el color dominante de la imagen principal, se usa y, si no se establece, 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)

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

id

string

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

classId

string

Obligatorio. La clase asociada con este objeto. La clase debe ser del mismo tipo que este objeto, ya debe existir y debe aprobarse.

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

version
(deprecated)

string (int64 format)

Obsoleto

state

enum (State)

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 "Pases vencidos".

barcode

object (Barcode)

El tipo y 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 10.

validTimeInterval

object (TimeInterval)

El período en el que será active el objeto, 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 sea compatible con 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á diseñada para que la usen 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 se establece este campo como verdadero, independientemente del campo messages, se suprimirán las notificaciones de vencimiento que envíe al usuario. De forma predeterminada, este campo se establece en falso.

Por el momento, esta opción 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 desde el nivel de objeto y 1 para el nivel de 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 configurado activationOptions.

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 ninguno, se mostrará la imagen principal de la clase, si está presente. Si tampoco está presente la imagen hero de la clase, no se mostrará nada.

groupingInfo

object (GroupingInfo)

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 guardó esta tarjeta de transporte público, estos linkedObjectIds se enviarán automáticamente a su billetera (a menos que hayan desactivado el parámetro de 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 alcanzado el límite, los objetos vinculados nuevos de la llamada se ignorarán en silencio.

Los IDs de objeto deben seguir el formato issuer ID.identifier, en el que Google emite el primero y tú eliges a este último.

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 la estableces en DO_NOT_NOTIFY o NOTIFICATION_CONFIG_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

Alias heredado de SINGLE_PASSENGER. Obsoleta.

MULTIPLE_PASSENGERS
multiplePassengers

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

Alias heredado de EXCHANGED. Obsoleta.

ConcessionCategory

Enumeraciones
CONCESSION_CATEGORY_UNSPECIFIED
ADULT
adult

Es el alias heredado de ADULT. Obsoleta.

CHILD
child

Alias heredado de CHILD. Obsoleta.

SENIOR
senior

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, 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 boleto a través de la entidad que lo vendió.

purchaseDateTime

string

La fecha y hora de compra del boleto

Esta es una fecha y hora de formato extendido ISO 8601, con o sin desplazamiento. 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 estaría 20 minutos y 50.52 segundos después de la hora 19 del 12 de abril de 1985, 4 horas antes de UTC (mismo tiempo que 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 estarí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

ID de la cuenta que se usó para comprar la entrada.

confirmationCode

string

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

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 ticket.

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

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)

El nombre de la estación de origen. Se requiere 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)

El nombre del destino.

departureDateTime

string

La fecha y hora de salida Esto es obligatorio si no se estableció un intervalo de tiempo de validez en el objeto de transporte público.

Esta es una fecha y hora de formato extendido ISO 8601, con o sin desplazamiento. 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 estaría 20 minutos y 50.52 segundos después de la hora 19 del 12 de abril de 1985, 4 horas antes de UTC (mismo tiempo que 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 estarí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 como la "fecha y hora locales". Debe ser la fecha y hora local en 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 desplazamiento, es posible que algunas funciones enriquecidas no estén disponibles.

arrivalDateTime

string

La fecha y hora de llegada

Esta es una fecha y hora de formato extendido ISO 8601, con o sin desplazamiento. El tiempo se puede especificar con una precisión de nanosegundos. Los desplazamientos se pueden especificar con precisión de segundos (aunque los segundos de desplazamiento no formen parte de 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 estaría 20 minutos y 50.52 segundos después de la hora 19 del 12 de abril de 1985, 4 horas antes de UTC (mismo tiempo que 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 estarí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 se lleva a cabo 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., “Siempre de uso único”.

carriage

string

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

platform

string

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

zone

string

Indica la zona de abordaje 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 hayan configurado 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 este tramo 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)

Indica el tipo de tarifa del asiento que se factura.

customFareClass

object (LocalizedString)

Es una clase de tarifa personalizada que se usará si no se aplica fareClass. Es posible que no se hayan configurado 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 en su lugar.

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

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 activada; este es el estado predeterminado
not_activated

Es el alias heredado de NOT_ACTIVATED. Obsoleta.

ACTIVATED Activado
activated

Alias heredado de ACTIVATED. Obsoleta.

DeviceContext

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 debe usarse como un identificador estable para rastrear el dispositivo de un usuario. Puede cambiar entre diferentes pases del mismo dispositivo o incluso entre distintas 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

Devuelve el objeto de transporte público con el ID de objeto especificado.

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 transporte público 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.