Interfaces API para el proceso de consulta y reserva de servicios ofrecidos por Special Tours
[Special tours API REST]
{Autenticación} Este API endpoint es el primer paso para garantizar la entrada y los derechos de uso. El proceso devuelve un TOKEN de acceso, de tipo BEARER TOKEN, cadena de texto codificada que es necesaria en casi todos los procesos del sistema e identifica la identidad y sesión del usuario que realiza la petición en las posteriores acciones. Este token de acceso, permite la validación en aquellos API endpoints que requieran permisos de tipo SptCliente, y tiene una validez y expiración de 12 horas desde el momento de generación de dicho token. En las llamadas a los API endpoints que soliciten permiso, el token debe mandarse en el Header de la peticion, con la clave “Authorization” y el valor “Bearer” y el token.
Ejemplo: Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9…
Para más información http://api.clientes.test.specialtours.com/doc/clientes/v1/index.html#api-Clientes-clientes_login
En esta sección se detallan los procedimientos que están relacionados con la gestión de circuitos del sistema Sigo tales como reserva, disponibilidad, listados de circuitos, etc. Tenemos la posibilidad de modificar la fecha de incorporación y/o abandono, añadir o quitar noches adicionales al inicio o fin del circuito (si se permiten en esa fecha y ciudad), asociar vuelos a los traslados, etc… Para realizar correctamente el proceso de reserva de un circuito, se recomienda seguir los siguientes pasos (ver gráficamente en el diagrama de más abajo):
Realizar la petición inicial de solicitud del circuito, en el cual se indica la opción seleccionada. (OPCIONAL) Modificar las fechas de inicio o fin del circuito si se incorpora y/o abandona en fechas distintas a las publicadas originalmente. (OPCIONAL) Modificar las noches adicionales si se desea la petición de más noches al inicio o fin del circuito (siempre que el sistema lo permita). (OPCIONAL) Cargar los datos de los vuelos por cada servicio de traslado disponible.
[Special tours API REST]
(OPCIONAL) Añadir/eliminar servicios adicionales (servicios opcionales). (OPCIONAL) Consultar el desglose de precios del estado de la reserva, que NO ES FIRME hasta que se confirme la solicitud de reserva. Confirmar la reserva: Genera la conformidad de la reserva, creando el identificador de la reserva junto con los servicios que forman el circuito.
El orden de llamada de los métodos opcionales influye en los pasos posteriores, es decir, si se modifican las fechas de incorporación y/o abandono, se pierden las noches adicionales cargadas anteriormente (dado que las fechas y posiblemente las ciudades cambian), traslados y servicios adicionales. Si se modifican las noches adicionales, se pierden los traslados, etc…
[Special tours API REST]
Funciones para realizar búsquedas de circuitos, criterios de selección, información detallada de los circuitos, consultas de disponibilidad, etc… (VER APARTADO 3)
(Superbuscador /disponibilidad) Consulta disponibilidad de un circuito y fecha de salida dado
(reservas/circuitos/petición-inicio) Realiza una carga temporal del circuito e inicia el proceso de solicitud de reserva
(reservas/circuitos/incorporación-y-abandono Modifica los puntos de incorporación y/o abandono
(reservas/circuitos/noches-adicionales/[idServicioCarga]) Modifica nº de noches adicionales deseadas al incio y/o al fin del circuito
(reserva /circuitos/traslados/[idServicioCarga]) Enlaza los datos de un vuelo dado al traslado indicado
(reservas/circuitos/servicios-adicionales/[idServicioCarga]) Añade o elimina servicios adicionales (opcionales) al circuito
(reservas/circuitos/tarifas) Consulta del desglose de precios del circuito seleccionado
(Reservas/circuitos/petición-fin) Confirmación y reserva del circuitos solicitado. Generación del identificador de reserva asociado a dicha solicitud [Special tours API REST]
{Transacciones}
Superbuscador/catalogos
Listado catálogos de programación de Circuitos
Superbuscador/circuitos
Listado de circuitos operativos
Superbuscador/circuitos/:idCircuito
Información completa de un circuito dado: recorrido del circuito, regiones visitadas, etc.
Superbuscador/disponibilidad
Disponibilidad por salida de un circuito.
reservas/circuitos/petición-inicio
Permite cargar de forma TEMPORAL el circuito, configurando los servicios deseados y obteniendo información orientativa del precio final de solicitud. Es necesario CONFIRMAR la reserva para que quede gestionada.
reservas/ circuitos/incorporacion-yabandono
Modificar los puntos de incorporación y/o abandono.
reservas/circuitos/nochesadicionales/:idServicioCarga
Establece el número de noches adicionales de un servicio de hotel dado
reservas/circuitos/traslados/:idServicio Carga
Carga de los datos de un vuelo a un traslado dado.
reservas/circuitos/traslados/:idServicio Carga/manual
Carga de los datos de un vuelo a un traslado dado.
reservas/circuitos/serviciosadicionales/:idServicioCarga
Añade o elimina el servicio adicional indicado.
reservas/circuitos/tarifas
Consulta del desglose de precios del estado actual de la petición del circuito. Es a nivel informativo.
reservas/circuitos/peticion-fin
Confirma la solicitud de reserva del circuito.
[Special tours API REST]
{Configuración del circuito} La solicitud del circuito se puede personalizar configurando algunos servicios esenciales de éste tales como puntos de inicio y fin, noches adicionales, servicios adicionales, etc… Invocando a la función de incorporación/abandono, podemos modificar la fecha de inicioincorporacion al circuito y la fecha de fin-abandono del circuito. Para añadir o eliminar noches adicionales, se necesita indicar el identificador del servicio de hotel, que se puede obtener de la respuesta de la llamada a la función de inicio de petición o de modificación de los puntos de incorporación/abandono. Los servicios de traslado van asociados a unos datos de vuelo, que deben ser informados en cuanto se tengan los datos. Para esto, la función de carga de datos del traslado asocia dichos datos a un servicio de traslado. Existen dos formas de informar de estos datos: A través de un numero de vuelo, que el sistema validará contra un GDS y recuperará todos los datos asociados a ese numero de vuelo. A través de datos informados de forma manual. El servicio de traslado no quedará confirmado hasta que se verifiquen que los datos aportados sean reales. Un circuito puede ofrecer servicios adicionales a reservar. Para añadir o eliminar estos servicios adicionales, se necesita indicar el identificador del servicio, que se puede obtener de la respuesta de la llamada a la función de inicio de petición o de modificación de los puntos de incorporación/abandono.
{Consulta de precios} La petición del circuito seleccionado realiza una reserva TEMPORAL. Es IMPRESCINDIBLE realizar la llamada de confirmación para terminar la solicitud de reserva y que se genere el identificador de reserva asociado a la petición. Sin esta llamada, no se formaliza la petición y no tiene ninguna validez. Los parámetros cantidadMayores65Sgl, cantidadMayores65Dbl, cantidadMayores65Tpl y cantidadChild pueden ser indicados para que en el detalle de precios puedan aparecer los descuentos aplicados, si existiesen, por los tipos de pasajeros mayores de 65 años y menores de 12 años (en habitaciones con un adulto como mínimo). Estos descuentos tan solo serán orientativos en el caso de que existieran y serán confirmados una vez hecha la reserva y dependiendo de los datos reales de los pasajeros de la rooming suministrada.
[Special tours API REST]
{Confirmación de la Reserva de un Circuito. } Este proceso confirma la petición de reserva de un circuito generando el identificador de reserva que define la solicitud realizada. Para poder invocar este API endpoint, es NECESARIO haber llamado previamente a la petición de inicio de solicitud de reserva de un circuito. La respuesta de este método consiste en una estructura que informa del identificador de reserva generado (ver apartado Reservas).
{Introducción} Dado que el sistema de reservas de circuitos a través del API de Special Tours está totalmente orientado a la petición de reservas de circuitos ya seleccionados, ofrecemos un grupo de funcionalidades que permite la búsqueda de circuitos a través de diferentes criterios, así como obtener información detallada de un circuito tal como su descripción diaria, fechas de operación, tarifario de precios, etc. Por esta razón, publicamos una serie de API endpoints, que facilitarán información al cliente para realizar selecciones, presentación de datos del circuito, ciudades recorridas, días de duración, etc.. y una vez que nos inclinemos por uno en cuestión, utilizar los procesos orientados a las solicitudes de reserva (descritos en este documento)
[Special tours API REST]
{Cuadro orientativo de funciones}
superbuscador/zonas
Información de todas las zonas para los distintos catálogos.
superbuscador/ciudades
Información de todas las ciudades en las que opera al menos un circuito vigente.
superbuscador/países
Información de todos los países en los que opera al menos un circuito vigente.
superbuscador/circuitos
Listado de circuitos con información general de cada circuito. Permite realizar búsquedas de circuitos según diversos criterios, tales como catalogo, zona, días de duración, ciudad de inicio, comidas incluidas, ciudades de recorrido, países de recorrido, categorías.
superbuscador/disponibilidad
Consulta de disponibilidad de un circuito, obteniendo datos sobre políticas de gastos de cancelación, observaciones, etc…
superbuscador/circuitos/[idCi rcuito]
Información completa de un circuito, conteniendo datos sobre el mismo, fechas de salidas y disponibilidades, descripción día a día dependiendo de la salida del circuito, ciudades y países recorridos, notas de interés y observaciones.
Superbuscador/circuitos/[idCi rcuito]/recorrido
Información del recorrido y las coordenadas de las ciudades o zonas por las que transita un circuito.
superbuscador/catalogos
Listado de catalogos de programación vigentes
superbuscador/categorías
Listado de los códigos de categorías y sus nombres correspondientes.
regimenes-alojamiento
Listado de regímenes de alojamiento
status
Listado de los valores de status
[Special tours API REST]
{API Interface de Special Tours } El API Interface de Special Tours también ofrece una serie de endpoints relacionados con la gestión, información y acciones relativas a los identificadores de reserva. Esto nos va a permitir, entre otras acciones, poder recuperar la información de un identificador, cancelar sus servicios, gestionar cancelaciones automáticas, listar los hoteles de la reserva, activar Pre-Reservas, obtener el listado de identificadores de una agencia, etc…
Consulta Identificador
reservas/:idReserva/detalle
Información de un identificador de Reserva
Lista Identificadores
clientes/reservas
Listado de identificadores de una agencia.
Cancelar Identificador
reservas/:idReserva/cancelar
Cancela los servicios asociados a un identificador.
Activar Cancelación Automática
(POST) reservas/:idReserva/cancelacionauto
Activar/establecer una fecha de cancelacion automatica a un identificador de reserva.
Desactivar Cancelación Automática (Reconfirmar Reserva)
(DELETE) reservas/:idReserva/cancelacionauto
Reconfirma una reserva, o lo que es lo mismo, desactiva una cancelación automática.
Hoteles Listado
reservas/:idReserva/hoteles
Consulta de los hoteles de una reserva
Pre-Reserva Activar
prereservas/:idPrereserva/activacion
Activa una pre-reserva
Programa de Viaje
reservas/:idReserva/programa-de-viaje
Devuelve el Programa de Viaje de un identificador de Reserva dado
[Special tours API REST]
[Special tours API REST]