Tabla de contenidos:
Introducción
Casos de uso
Métodos disponibles
Tabla de parámetros
Ejemplos:
Petición (POST)
En este artículo hablamos sobre las peticiones de la API relacionadas con los Bookings.
Procesar un booking:
El endpoint se encarga de verificar la creación/actualización de la reserva en cuestión, así como de las estancias, contactos asociados.
Es necesario que el apiuser posea el permiso "bookings" para la utilización de este endpoint.
El endpoint que utilizamos es: https://app.hoteldatahub.io/api/v1/bookings/ y el apartado del Swagger es: https://app.hoteldatahub.io/swagger/#/bookings
El endpoint para la gestión de reservas resulta de gran utilidad para incorporar nuevas reservas en Fideltour procedentes de distintas fuentes. Para el caso de reservas ya existentes, permite ampliar la información contenida en su ficha enriqueciendo así la calidad de la base de datos. Múltiples orígenes de datos permiten obtener distinta información que después se centraliza en Fideltour.
POST: https://app.hoteldatahub.io/api/v1/bookings/
Booking:
Clave | Tipo | Obligatorio | Descripción |
hotel_chain | String | Si | Código de la empresa. Proporcionado por HotelDataHub. |
external_object_id | String | Si | Identificador externo de la reserva en HotelDataHub |
date | Datetime YYYY-MM-DDTHH:MM:SS | Si | Fecha de creación |
entrance | Date YYYY-MM-DD | Si | Fecha de entrada |
departure | Date YYYY-MM-DD | Si | Fecha de salida |
localizer | String | Si | Localizador |
hotel | Integer | Si | Identificador del hotel. Proporcionado por HotelDataHub. |
agency | String | No | Nombre de la agencia |
amount | Float | No | Importe total. |
currency | String | No | Moneda en ISO 4217 |
status | Integer | No | Estado:
|
input_channel | Integer | No | Canal de entrada del movimiento
|
regime | String | No | Nombre del tipo de regimen |
room_type | String | No | Nombre del tipo de habitación |
fare_type | String | No | Nombre del tipo de tarifa |
offer | String | No | Nombre de la oferta |
event_type | String | No | Nombre del tipo de evento |
package | String | No | Nombre del paquete |
category | String | No | Nombre de la categoría(segmento) |
url | String (máx. 2048 caracteres) | No | Permite enviar una URL asociada a la reserva. |
notes | String (máx. 1024 caracteres) | No | Comentarios sobre la reserva |
stays | List[Stay] | Sí | Consultar tabla de Stay abajo |
Clave | Tipo | Obligatorio | Descripción |
hotel_chain | String | Si | Código de la empresa. Proporcionado por HotelDataHub. |
external_object_id | Integer | Si | Identificador en HotelDataHub |
date | Datetime YYYY-MM-DDTHH:MM:SS | Si | Fecha de creación |
entrance | Date YYYY-MM-DD | Si | Fecha de entrada |
departure | Date YYYY-MM-DD | Si | Fecha de salida |
localizer | String | Si | Localizador |
hotel | Integer | Si | Identificador del hotel. Proporcionado por HotelDataHub. |
agency | String | No | Nombre de la agencia |
amount | Float | No | Importe total. |
currency | String | No | Moneda en ISO 4217 |
status | Integer | No | Estado del movimiento
|
room_number | String | No | Número de habitación |
adults | Integer | No | Cantidad de adultos en el movimiento |
juniors | Integer | No | Cantidad de juniors en el movimiento |
children | Integer | No | Cantidad de niños en el movimiento |
babies | Integer | No | Cantidad de bebés en el movimiento |
regime | String | No | Nombre del tipo de regimen |
room_type | String | No | Nombre del tipo de habitación |
fare_type | String | No | Nombre del tipo de tarifa |
offer | String | No | Nombre de la oferta. |
event_type | String | No | Nombre del tipo de evento |
package | String | No | Nombre del paquete |
category | String | No | Nombre de la categoría(segmento). |
url | String (máx. 2048 caracteres) | No | Permite enviar una URL asociada a la estancia |
notes | String (máx. 1024 caracteres) | No | Comentarios sobre la estancia |
guests | List[Guest] | Sí | Consultar tabla de guests abajo |
** Para temas de comodidad, campos ya presentes en el booking con el mismo valor en el stay se pueden omitir, de esta forma el stay inferirá dichos valores del booking.
Guest:
Clave | Tipo | Obligatorio | Descripción |
String | Si | Campo único en la DB de Fideltour, usado como identificador del huésped. | |
external_object_id | String | No | Identificador externo del huésped |
is_owner | Booleano | No | Indica si el huésped principal de la reserva |
name | String | No | Nombre |
surname | String | No | Apellidos |
phone | String | No | Teléfono |
birthday | Date YYYY-MM-DD | No | Fecha de nacimiento |
gender | Integer | No | Género:
|
address | String | No | Dirección |
post_code | String | No | Código postal |
zone | String | No | Nombre de la zona. |
town | String | No | Nombre de la ciudad. |
province | String | No | Nombre de la provincia |
country | String | No | |
language | String | No | |
identification_document_type | Numérico | No | Tipo de documento de identidad.
|
identification_number | String | No | Número de documento de identidad. |
business_name | String | No | Nombre de la empresa |
work_place | String | No | Cargo empresarial |
business_address | String | No | Dirección de la empresa |
fiscal_address | String | No | Dirección fiscal |
notes | String | No | Notas |
custom_tags | Listado de Strings | No | Listado formado por nombres de etiquetas |
subscribed | Booleano | No | Indica si el contacto está suscrito a comunicacones comerciales.
|
A continuación mostramos un ejemplo de procesamiento de reserva:
PROTOCOLO: HTTP/1.1
METODO: POST
HOST/ENDPOINT: https://app.hoteldatahub.io/api/v1/contacts/
HEADERS:
Content-type: application/json
Authorization: Token xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
BODY: se añade un ejemplo a continuación.
{
"hotel": "2293",
"hotel_chain": "6NOK",
"date": "2025-11-27T10:08:08",
"entrance": "2026-10-02",
"departure": "2026-10-04",
"localizer": "91764088833/6",
"external_object_id": "12345726",
"agency": "Empresa de prueba",
"offer": "Black Friday",
"category": "Adultos consumistas"
"amount": 280,
"currency": "EUR",
"input_channel": 4,
"status": 2,
"stays": [
{
"entrance": "2026-10-02",
"departure": "2026-10-04",
"localizer": "91764088833/6",
"externa_object_id": "123456112",
"amount": 280,
"currency": "EUR",
"room_number": "0A Doble 2 camas",
"room_type": "Habitación Doble",
"regime": "Alojamiento",
"adults": 2,
"childs": 0,
"status": 2,
"guests": [
{
"id": 3183465,
"name": "BETTINA",
"is_owner":true,
"surname": "STROBEL",
"email": "bettinastrobel@web.de",
"phone": "0049772691980",
"gender": 2,
"language": "es",
"birthdate": "1990-12-12",
"post_code": "07009",
"notes": "",
"country": "ESP",
"custom_tags": [],
"subscribed": false,
"is_active": true
}
]
}
]
}