Trenes

Descripción general de Trains

Busca, cotiza, reserva y reembolsa viajes en tren mediante la API pública de Travelandz.

Compartir

Busca, cotiza, reserva y reembolsa viajes en tren mediante la API pública de Travelandz.

Ruta base

Todas las operaciones públicas de trenes viven bajo /v1/trains. El proveedor disponible actualmente es gdsprovider=0.

Autenticación

Cada petición requiere Authorization: Bearer <secret_key> y X-Travelandz-Id: <public_key>:<profile_code>. El profile code persistido usa el formato dp_<12 alfanuméricos>; conserva los secrets en el servidor.

Convenciones del protocolo

  • Los endpoints JSON devuelven 200 OK cuando la operación termina correctamente.
  • Los POST usan Content-Type: application/json.
  • Las fechas usan YYYY-MM-DD y los importes usan { amount, currency }.
  • Los campos desconocidos en body o query se rechazan con 400.
  • Los endpoints en stream devuelven JSON delimitado por saltos de línea (NDJSON), no un único documento JSON.

Flujo

  1. Busca localidades y usa sus ids para buscar viajes.
  2. Conserva journeyId y solicita las ofertas del viaje seleccionado.
  3. Conserva uno o más offerId y crea una pre-reserva.
  4. Usa bookingId para consultar campos requeridos y crear la orden.
  5. Conserva orderId y consulta los ítems reembolsables antes de pedir un reembolso.

Catálogo de endpoints

MethodPathUso
GET/v1/trains/locationsBuscar estaciones y localidades.
POST/v1/trains/journeysBuscar viajes.
POST/v1/trains/journeys/streamBuscar viajes en stream NDJSON.
POST/v1/trains/journeys/:gdsprovider/:journeyId/offersObtener ofertas de un viaje.
POST/v1/trains/journeys/:gdsprovider/:journeyId/offers/streamObtener ofertas en stream.
POST/v1/trains/book/:gdsprovider/prebookCrear una pre-reserva.
GET/v1/trains/book/:gdsprovider/:bookingId/required-fieldsConsultar campos de reserva.
POST/v1/trains/book/:gdsprovider/:bookingId/orderCrear y confirmar una orden.
GET/v1/trains/order/:gdsprovider/:orderIdObtener una orden y sus tickets.
GET/v1/trains/order/:gdsprovider/:orderId/refundable-itemsListar ítems reembolsables.
POST/v1/trains/order/:gdsprovider/:orderId/refundSolicitar un reembolso.
GET/v1/trains/order/:gdsprovider/:orderId/refundConsultar el estado del reembolso.

Enums compartidos

CampoValores
passengers[].typeyouth, adult, senior
passengers[].titlemr, ms, mx
identityDocument.typepassport
transporttrain, bus, ferry
flexibilitynon_flex, semi_flex, full_flex
order.statuspending, confirmed, cancelled
refund.statesuccess, pending, error