Comprobar disponibilidad de los espacios por planta
Última modificación: 18/09/2024
Comprobar disponibilidad
Comprueba la disponibilidad de los recursos teniendo en cuenta los siguientes criterios:
- Si el usuario tiene acceso al recurso (grupos).
- Si el recurso tiene las características seleccionadas por el usuario (opcional).
- Si se cumplen las reglas del recurso (antelación de la reserva, horarios…).
- Si el recurso está libre en el momento seleccionado por el usuario.
Request
HTTP request
GET /api/v1/users/me/buildings/{buildingId}/floors/{floorId}/spaces/subcategories/{subcategoryId}/free
Headers
| Header | Value | Required |
|---|---|---|
| Authorization | Bearer eyJ0eXBlIjoiSldUIiwiYWxnIjoiSFM1MT… | true |
Params
| Param | Value | Required |
|---|---|---|
| bookingDays | List<BookingDay> | true |
| features | Array de identificadores de las características por las que se quiere filtrar. | false |
| maxCostPerHour | BigDecimal (32.01) | false |
| capacity | Capacidad mínima de los espacios. Solo disponible para espacios. | false |
| createOnlineMeeting | Booleano que indica si se va a intentar crear una reserva online. Solo disponible para espacios. | false |
| synchronizedResources | Booleano que indica si se debe filtrar por recursos sincronizados. Admite tres opciones: 1. Si no se envía. El filtro no se aplica y se devuelven tanto los recursos sincronizados como los no sincronizados. 2. Si se envía a true. El filtro se aplica devolviendo sólo recursos sincronizados. 3.Si se envía a false. El filtro se aplica devolviendo sólo recursos no sincronizados. |
false |
| hasReservables | Booleano que indica si se debe filtrar por recursos que tienen servicios asociados. Admite tres opciones: 1. Si no se envía. El filtro no se aplica y se devuelven tanto los recursos con servicios como los que no tienen. 2. Si se envía a true. El filtro se aplica devolviendo sólo recursos con servicios asociados. 3.Si se envía a false. El filtro se aplica devolviendo sólo recursos que no tienen servicios asociados. |
false |
¡Importante! - Ejemplo de uso del parámetro bookingDays.
Para utilizar una lista en los parámetros de una petición GET hay que hacerlo de la siguiente forma:
http://localhost:9010/api/v1/users/{userId}/buildings/{buildingId}/floors/{floorId}/spaces/subcategories/{subcategoryId}/free?bookingDays[0].startDate=1561708800000&bookingDays[0].endDate=1561712400000&bookingDays[1].startDate=1561723200000&bookingDays[1].endDate=1561730400000
Sin embargo, para poder realizar la petición correctamente hay que encodear la URL ya que los corchetes "[]" son carácteres no válidos.
Request Example
GET http://localhost:9010/api/v1/users/me/buildings/5068c634-064d-4e15-b17f-1a420c68f051/floors/3268c634-064d-4e15-b17f-1a420c68f051/spaces/subcategories/eaacb523-7a8b-44d4-a3b2-d67f036a3b1c/free?bookingDays%5B0%5D.startDate=1561708800000&bookingDays%5B0%5D.endDate=1561712400000&bookingDays%5B1%5D.startDate=1561723200000&bookingDays%5B1%5D.endDate=1561730400000&features=faf57caf-53ed-410f-bf3d-39f220593ba7,asd57caf-53ed-230f-bf3d-39f220593c4r
Response
Si se han conseguido procesar la petición, se devuelve un código 200 con la información de los recursos disponibles.
Response
HTTP/1.1 200 OK
Content-type: application/json
{
"freeResources": [
{
"id": "39d79bbd-7cfb-478e-9d0e-2337d529f73a",
"name": "B-P1-SALA-4",
"posterCode": "B-P1-SALA-4",
"image": "https://api.develop.bookkercorp.com/api/v1/bookker/download/organizations/8aee218a-fce2-4900-9410-00f485a2729e/users/5432a51ff76e4e349a0fcd6759eeaa0a.jpeg",
"mapCoordinates": {
"topLeftX": 910,
"topLeftY": 1058,
"bottomRightX": 970,
"bottomRightY": 1118
},
"approachable": false,
"floor": {
"id": "14ab4017-1261-46ff-af05-eadf5d3d69e8"
},
"subcategory": {
"id": "072ac366-1c4f-4995-af07-1a111f8fcc12"
},
"visible": true,
"capacity": 1,
"hasReservables": true
},
{
"id": "3c43ac76-75f6-4f0c-9f2a-a5d441573dda",
"name": "B-P1-SALA-2",
"posterCode": "B-P1-SALA-2",
"image": "https://api.develop.bookkercorp.com/api/v1/bookker/download/organizations/8aee218a-fce2-4900-9410-00f485a2729e/users/5432a51ff76e4e349a0fcd6759eeaa0a.jpeg",
"mapCoordinates": {
"topLeftX": 950,
"topLeftY": 377,
"bottomRightX": 1010,
"bottomRightY": 437
},
"approachable": false,
"floor": {
"id": "14ab4017-1261-46ff-af05-eadf5d3d69e8"
},
"subcategory": {
"id": "072ac366-1c4f-4995-af07-1a111f8fcc12"
},
"visible": true,
"capacity": 1,
"hasReservables": false
},
{
"id": "81392b52-0de3-4177-8193-13b7da389362",
"name": "B-P1-SALA-1",
"posterCode": "B-P1-SALA-1",
"image": "https://api.develop.bookkercorp.com/api/v1/bookker/download/organizations/8aee218a-fce2-4900-9410-00f485a2729e/users/5432a51ff76e4e349a0fcd6759eeaa0a.jpeg",
"mapCoordinates": {
"topLeftX": 561,
"topLeftY": 695,
"bottomRightX": 621,
"bottomRightY": 755
},
"approachable": false,
"floor": {
"id": "14ab4017-1261-46ff-af05-eadf5d3d69e8"
},
"subcategory": {
"id": "072ac366-1c4f-4995-af07-1a111f8fcc12"
},
"visible": true,
"capacity": 1,
"hasReservables": true
},
{
"id": "8b0a8a78-325f-4a73-abe0-2e38dff28a2f",
"name": "B-P1-SALA-5",
"posterCode": "B-P1-SALA-5",
"image": "https://api.develop.bookkercorp.com/api/v1/bookker/download/organizations/8aee218a-fce2-4900-9410-00f485a2729e/users/5432a51ff76e4e349a0fcd6759eeaa0a.jpeg",
"mapCoordinates": {
"topLeftX": 629,
"topLeftY": 1058,
"bottomRightX": 689,
"bottomRightY": 1118
},
"approachable": false,
"floor": {
"id": "14ab4017-1261-46ff-af05-eadf5d3d69e8"
},
"subcategory": {
"id": "072ac366-1c4f-4995-af07-1a111f8fcc12"
},
"visible": true,
"capacity": 1,
"hasReservables": true
},
{
"id": "d91cb934-d180-45ea-a9ce-93c4aad6ebb8",
"name": "B-P1-SALA-3",
"posterCode": "B-P1-SALA-3",
"image": "https://api.develop.bookkercorp.com/api/v1/bookker/download/organizations/8aee218a-fce2-4900-9410-00f485a2729e/users/5432a51ff76e4e349a0fcd6759eeaa0a.jpeg",
"mapCoordinates": {
"topLeftX": 980,
"topLeftY": 695,
"bottomRightX": 1040,
"bottomRightY": 755
},
"approachable": false,
"floor": {
"id": "14ab4017-1261-46ff-af05-eadf5d3d69e8"
},
"subcategory": {
"id": "072ac366-1c4f-4995-af07-1a111f8fcc12"
},
"visible": true,
"capacity": 1,
"hasReservables": true
}
]
}
BookingDay
Properties
| Name | Type | Description |
|---|---|---|
| startDate | Long | Fecha y hora en milisegundos del inicio de la reserva. |
| endDate | Long | Fecha y hora en milisegundos del fin de la reserva. |
{
"startDate": 1561557600000,
"endDate": 1561559400000
}