# API Check-in
# Introducción
Bienvenido a la API del proceso de check-in de Mybooking.
Este API tiene tiene la funcionalidad necesaria para implementar el proceso de entrega y devolución de los productos, captura de las imágenes con el estado y firma electrónica del contrato.
# URL Base
https://micuenta.mybooking.es
# Autenticación
Todas las llamadas al API usan JWT para la autenticación del usuario. Es obligatorio autenticar el usuario y usar el token JWT para todas las llamadas al API
# Autenticación
# POST Autenticación
POST /api/v1/login
Autenticación del usuario
Query String
Parámetro | Descripción | Detalle | |
---|---|---|---|
username | Usuario | Usuario o email | Obligatorio |
password | Clave | Contraseña | Obligatorio |
Resultado
Success
200
Object | Descripción | ||
---|---|---|---|
connected | Conectado | Boolean | |
user | Object[object] | Datos del usuario | |
full_name | String | Nombre completo |
{
"connected": true,
"user": {
"full_name": "Usuario demo"
}
}
Object | Descripción | ||
---|---|---|---|
Authorization | Token JWT | String | Utilizarla en todas la peticiones |
# Configuración
# GET Configuración
GET /api/v1/booking/delivery-collection-app-settings
Obtiene la configuración para las entregas y devolución
Cabecera
Añadir la cabecera obtenida en el login en todas las peticiones
Object | Descripción | ||
---|---|---|---|
Authorization | Token JWT | String |
Resultado
Success
200
Object | Descripción | ||
---|---|---|---|
timezone | Zona horaria | String | |
currency | Moneda | String | |
currency_symbol | Símbolo de la moneda | String | |
currency_symbol_position | Símbolo de la moneda | String | |
currency_decimals | Número de decimales | Number | |
currency_thousands_separator | Separador miles | String | |
currency_decimal_mark | Separador decimales | String | |
delivery_collection_datetime | Horario entrega/dev | String | hold_reservation_datetime o current_datetime |
delivery_collection_check_usage | Km obligatorios | Boolean | Km entrega y devolución son obligatorios |
delivery_collection_check_fuel | Combust. obligatorio | Boolean | Combustible entrega y devolución obligatorios |
delivery_collection_check_collection | Comprueba sobrecoste | Boolean | Comprueba sobrecoste en la devolución |
multiple_rental_locations | Múltiples sucursales | Boolean | |
rental_locations | array[object] | ||
code | String | ||
name | String | ||
rental_storage_id | Number | ||
timezone | String | Zona horaria |
{
"timezone": "Europe/Madrid",
"currency": "EUR",
"currency_symbol": "€",
"currency_symbol_position": "last",
"currency_decimals": 2,
"currency_thousands_separator": ".",
"currency_decimal_mark": ",",
"multiple_rental_locations": true,
"delivery_collection_datetime": "current_datetime",
"delivery_collection_check_usage": false,
"delivery_collection_check_fuel": false,
"delivery_collection_check_collection": false,
"rental_locations": [
{
"code": "CIUTADELLA",
"name": "OFICINA CIUTADELLA",
"rental_storage_id": 3,
"timezone": "Europe/Madrid"
},
{
"code": "MAHON",
"name": "OFICINA MAHÓN",
"rental_storage_id": 3,
"timezone": "Europe/Madrid"
},
{
"code": "MAHON-PUERTO",
"name": "OFICINA MAHÓN PUERTO",
"rental_storage_id": 3,
"timezone": "Europe/Madrid"
},
{
"code": "SON-BOU",
"name": "SON BOU",
"rental_storage_id": 3,
"timezone": "Europe/Madrid"
}
]
}
# Entregas y devoluciones
# GET Listado entregas y devoluciones
GET /api/v1/booking/deliveries-collections
Obtiene el listado de las entregas y devoluciones
Cabecera
Añadir la cabecera obtenida en el login en todas las peticiones
Object | Descripción | ||
---|---|---|---|
Authorization | Token JWT | String |
Query String
Parámetro | Descripción | Detalle | |
---|---|---|---|
date | Fecha | Formato yyyy-mm-dd | Obligatorio |
rental_location_code | Sucursal | Sólo si hay múltiples sucursales | Obligatorio si múltiples sucursales |
Resultado
Success
200
Object | Descripción | ||
---|---|---|---|
deliveries | Entregas | array[Object] | |
collections | Devoluciones | array[Object] |
deliveries | array[object] | ||
---|---|---|---|
id | Number | Id | |
free_access_id | String | Id público reserva | |
date_from | String | Fecha inicio de la reserva. Formato yyyy-mm-dd | |
time_from | String | Hora inicio de la reserva. Formato HH:MM | |
date_to | String | Fecha fin de la reserva. Formato yyyy-mm-dd | |
time_to | String | Hora fin de la reserva. Formato HH:MM | |
pickup_place | String | Lugar de entrega | |
return_place | String | Lugar de devolución | |
rental_location_code | String | Sucursal | |
rental_storage_id | Number | Grupo de sucursales | |
customer_fullname | String | Nombre del cliente | |
driver_name | String | Nombre del conductor | |
driver_surname | String | Apellidos del conductor | |
driver_document_id | String | Id / pasaport conductor | |
driver_driving_license_number | String | Permiso conducir conductor | |
driver_driving_license_expiration_date | String | Permiso conducir conductor | |
additional_driver_1_name | String | Nombre del conductor | |
additional_driver_1_surname | String | Apellidos del conductor | |
additional_driver_1_document_id | String | Id / pasaport conductor | |
additional_driver_1_driving_license_number | String | Permiso conducir conductor | |
additional_driver_1_driving_license_expiration_date | String | Permiso conducir conductor | |
status | String | confirmed | |
total_paid | String | Importe pagado | |
total_pending | String | Importe pendiente de pago | |
total_cost | String | Coste total | |
total_deposit | String | Franquicia + Garantía | |
total_days | String | Duración alquiler días | |
total_hours | String | Duración alquiler horas | |
total_minutes | String | Duración alquiler minutos | |
date_to_price_calculation | String | Fecha cálculo tarifa (cortesía) | |
days | String | Número días facturados | |
hours | String | Número horas facturadas | |
minutes | String | Número minutos facturados | |
booking_lines | array[Object] | Líneas de la reserva | |
- id | Number | Id línea de la reserva | |
- item_id | String | Código producto contratado | |
- item_description | String | Descripción producto contratado | |
- quantity | Number | Cantidad contratada | |
- item_unit_cost | String | Coste 1u. todo el período | |
- item_cost | String | Coste todas las unidades todo el período | |
- days | Number | Días facturación | |
- hours | Number | Horas facturación | |
- minutes | Number | Minutos facturación | |
- booking_line_resources | array[Object] | Recursos : 1 elemento por cada unidad | |
* id | Number | Id recurso | |
* booking_item_reference | String | Referencia del bien | |
* booking_item_stock_model | String | Modelo del bien | |
* booking_item_stock_plate | String | Matrícula del bien | |
* booking_item_stock_reference | String | Alias del bien | |
* status | String | Estado del bien : free, busy | |
* usage_units | Number | Km actuales del bien | |
* usage_available_fuel | Number | Combustible actual del bien | |
* usage_units | Number | Km actuales del bien | |
* booking_item_tank_capacity | Number | Capacidad del tanque del bien | |
* km_miles_hired | Number | Km contratados | |
* km_miles_on_pickup | Number | Km registrados en la entrega | |
* pickup_fuel | Number | Combustible registado en la entrega | |
* km_miles_on_return | Number | Km registrados en la devolución | |
* return_fuel | Number | Combustible registado en la devolución | |
* km_miles_total | Number | Km realizados (tras la devolución) | |
* km_miles_extra | Number | Km extra (km_miles_total - km_miles_hired) | |
* km_miles_extra_unit_cost | String | Coste 1 km extra | |
* km_miles_extra_cost | String | Coste todos los km extra | |
* refueling_units | Number | Unidades combustible relleno | |
* refueling_unit_cost | Number | Coste 1 litro combustible | |
* refueling_total_cost | Number | Coste unidades repostaje | |
booking_extra | array[Object] | Extras de la reserva | |
- id | Number | Id línea de la reserva | |
- extra_id | String | Código producto contratado | |
- extra_description | String | Descripción producto contratado | |
- extra_type | String | Tipo extra: extra, insurance, supplement, damage | |
- quantity | Number | Cantidad contratada | |
- extra_unit_cost | String | Coste 1u. todo el período | |
- extra_cost | String | Coste todas las unidades todo el período | |
- days | Number | Días facturación | |
- hours | Number | Horas facturación | |
- minutes | Number | Minutos facturación |
{
"deliveries": [
{
"id": 2116,
"free_access_id": "0f1fd7773353ada2a564e0c5344a7485",
"date_from": "2022-02-28",
"time_from": "10:00",
"date_to": "2022-03-03",
"time_to": "18:00",
"pickup_place": "Aeropuerto de Mahón",
"return_place": "Aeropuerto de Mahón",
"rental_location_code": "MAHON",
"rental_storage_id": 3,
"customer_fullname": "Brad Stark",
"driver_name": "Brad",
"driver_surname": "Stark",
"driver_document_id": "55555555R",
"driver_driving_license_number": "55555555R",
"driver_driving_license_expiration_date": null,
"additional_driver_1_name": "Brandon",
"additional_driver_1_surname": "Stark",
"additional_driver_1_document_id": "11111111A",
"additional_driver_1_driving_license_number": "11111111",
"additional_driver_1_driving_license_expiration_date": "2022-02-17",
"status": "confirmed",
"total_paid": "0.0",
"total_pending": "92.0",
"total_cost": "92.0",
"total_deposit": "1500.0",
"total_days": 4,
"total_hours": 80,
"total_minutes": 4800,
"date_to_price_calculation": "2022-03-04",
"days": 4,
"hours": 0,
"minutes": 0,
"booking_lines": [
{
"id": 3036,
"item_id": "A",
"item_description": "Grupo A",
"quantity": 1,
"item_unit_cost": "52.0",
"item_cost": "52.0",
"days": 4,
"hours": 0,
"minutes": 0,
"booking_line_resources": [
{
"id": 3042,
"free_access_id": "0196411c9a18bba97af7b28b3c7c24f5",
"booking_item_category": "A",
"booking_item_reference": "107-AAA0006",
"booking_item_stock_model": "PEUGEOT 107",
"booking_item_stock_plate": "AAA-0006",
"booking_item_stock_reference": null,
"km_miles_on_pickup": 0,
"km_miles_on_return": 0,
"km_miles_total": 0,
"km_miles_hired": 0,
"km_miles_extra": 0,
"km_miles_extra_unit_cost": "0.0",
"km_miles_extra_cost": "0.0",
"pickup_fuel": null,
"return_fuel": null,
"booking_item_tank_capacity": null,
"refueling_units": "0.0",
"refueling_unit_cost": "1.0",
"refueling_total_cost": "0.0",
"status": "free",
"usage_units": 62500,
"usage_available_fuel": "8/8"
}
]
}
],
"booking_extras": [
{
"id": 484,
"extra_id": "SEGURO-EXTRA",
"extra_description": "Seguro Extra",
"extra_type": "extra",
"quantity": 1,
"extra_unit_cost": "20.0",
"extra_cost": "20.0",
"days": 4,
"hours": 0,
"minutes": 0
}
]
}
],
"collections": [
{
"id": 2114,
"free_access_id": "b4ffb2ff175f4dd02d73d8f5cd6b4f0d",
"date_from": "2022-02-26",
"time_from": "10:00",
"date_to": "2022-02-28",
"time_to": "18:00",
"pickup_place": "Aeropuerto de Mahón",
"return_place": "Aeropuerto de Mahón",
"rental_location_code": "MAHON",
"rental_storage_id": 3,
"customer_fullname": "Brad Stark",
"driver_name": "Brad",
"driver_surname": "Stark",
"driver_document_id": "55555555R",
"driver_driving_license_number": "55555555R",
"driver_driving_license_expiration_date": null,
"additional_driver_1_name": "Brandon",
"additional_driver_1_surname": "Stark",
"additional_driver_1_document_id": "11111111A",
"additional_driver_1_driving_license_number": "11111111",
"additional_driver_1_driving_license_expiration_date": "2022-02-17",
"status": "confirmed",
"total_paid": "0.0",
"total_pending": "134.0",
"total_cost": "134.0",
"total_deposit": "1500.0",
"total_days": 3,
"total_hours": 56,
"total_minutes": 3360,
"date_to_price_calculation": "2022-03-01",
"days": 3,
"hours": 0,
"minutes": 0,
"booking_lines": [
{
"id": 3034,
"item_id": "A",
"item_description": "Grupo A",
"quantity": 1,
"item_unit_cost": "42.0",
"item_cost": "42.0",
"days": 3,
"hours": 0,
"minutes": 0,
"booking_line_resources": [
{
"id": 3040,
"free_access_id": "fb51c9a6252487e2e6b2bdf44f49c6cb",
"booking_item_category": "A",
"booking_item_reference": "107-AAA0001",
"booking_item_stock_model": "PEUGEOT 107",
"booking_item_stock_plate": "AAA-0001",
"booking_item_stock_reference": null,
"km_miles_on_pickup": 0,
"km_miles_on_return": 0,
"km_miles_total": 0,
"km_miles_hired": 0,
"km_miles_extra": 0,
"km_miles_extra_unit_cost": "0.0",
"km_miles_extra_cost": "0.0",
"pickup_fuel": null,
"return_fuel": null,
"booking_item_tank_capacity": null,
"refueling_units": "0.0",
"refueling_unit_cost": "1.0",
"refueling_total_cost": "0.0",
"status": "free",
"usage_units": 13800,
"usage_available_fuel": "8/8"
}
]
}
],
"booking_extras": [
{
"id": 480,
"extra_id": "SEGURO-EXTRA",
"extra_description": "Seguro Extra",
"extra_type": "extra",
"quantity": 1,
"extra_unit_cost": "15.0",
"extra_cost": "15.0",
"days": 3,
"hours": 0,
"minutes": 0
},
{
"id": 482,
"extra_id": "ELEVADOR",
"extra_description": "Elevador",
"extra_type": "extra",
"quantity": 1,
"extra_unit_cost": "27.0",
"extra_cost": "27.0",
"days": 3,
"hours": 0,
"minutes": 0
},
{
"id": 483,
"extra_id": "SEGURO-PRO",
"extra_description": "Seguro Pro",
"extra_type": "insurance",
"quantity": 1,
"extra_unit_cost": "30.0",
"extra_cost": "30.0",
"days": 3,
"hours": 0,
"minutes": 0
}
]
}
]
}
# GET Buscar vehículos
GET /api/booking-items-search
Busca vehículos
Cabecera
Añadir la cabecera obtenida en el login en todas las peticiones
Object | Descripción | ||
---|---|---|---|
Authorization | Token JWT | String |
Query String
Parámetro | Descripción | Detalle | |
---|---|---|---|
term | Término búsqueda | Matrícula, alias, referencia | Opcional |
category_code | Código categoría | Filtro por categoría | Opcional |
family_id | Código familia | Filtro por familia | Opcional |
rental_storage_id | Grupo sucursales | Id | Obligatorio si múltiples sucursales |
Resultado
Success
200
Object | Descripción | array[object] | |
---|---|---|---|
value | Referencia | String | |
label | Descripción | String | |
stock_plate | Matrícula | String | |
stock_model | Modelo | String | |
status | Estado | String | free, busy |
usage_units | Km actuales | Number | |
usage_available_fuel | Combustible | String |
[
{
"value": "1",
"label": "PEUGEOT 107 - AAA-0016 - 39028390823XX093",
"stock_plate": "AAA-0016",
"stock_model": "PEUGEOT 107",
"status": "free",
"usage_units": 0,
"usage_available_fuel": "8/8"
},
{
"value": "107-AAA0001",
"label": "PEUGEOT 107 - AAA-0001 - ABC1234567890",
"stock_plate": "AAA-0001",
"stock_model": "PEUGEOT 107",
"status": "free",
"usage_units": 13800,
"usage_available_fuel": "8/8"
},
{
"value": "107-AAA0002",
"label": "PEUGEOT 107 - AAA-0002 - 39783098908EEW03902",
"stock_plate": "AAA-0002",
"stock_model": "PEUGEOT 107",
"status": "free",
"usage_units": 105300,
"usage_available_fuel": "4/8"
}
]
# GET Buscar extras
GET /api/booking/:id/extra-search
Busca extras que pueden aplicarse a la reserva
Parámetros path
Object | Descripción | ||
---|---|---|---|
Id | Id reserva | Number |
Cabecera
Añadir la cabecera obtenida en el login en todas las peticiones
Object | Descripción | ||
---|---|---|---|
Authorization | Token JWT | String |
Query String
Parámetro | Descripción | Detalle | |
---|---|---|---|
action | Filtro extras | 'delivery' o 'collection' | Opcional |
Resultado
Success
200
Object | Descripción | array[object] | |
---|---|---|---|
code | Código extra | String | |
name | Nombre del extra | String | |
full_description | Descripción | String | |
available | Disponible | Boolean | |
max_sellable_quantity | Máxima cantidad | Number | Máxima cantidad que puede seleccionarse |
extra_type | Tipo de extra | String | extra, insurance, supplement, damage |
unit_price | Precio 1 unidad | String |
[
{
"value": "1",
"label": "PEUGEOT 107 - AAA-0016 - 39028390823XX093",
"stock_plate": "AAA-0016",
"stock_model": "PEUGEOT 107",
"status": "free",
"usage_units": 0,
"usage_available_fuel": "8/8"
},
{
"value": "107-AAA0001",
"label": "PEUGEOT 107 - AAA-0001 - ABC1234567890",
"stock_plate": "AAA-0001",
"stock_model": "PEUGEOT 107",
"status": "free",
"usage_units": 13800,
"usage_available_fuel": "8/8"
},
{
"value": "107-AAA0002",
"label": "PEUGEOT 107 - AAA-0002 - 39783098908EEW03902",
"stock_plate": "AAA-0002",
"stock_model": "PEUGEOT 107",
"status": "free",
"usage_units": 105300,
"usage_available_fuel": "4/8"
}
]