Creación de reserva automática de puesto
Última modificación: 15/12/2023
Intenta crear una / o varias reservas en un recurso elegido aleatoriamente dentro del edificio o planta que se ha indicado en la petición. También se puede enviar una lista de los identificadores de características que se necesita que tenga el recurso.
Las reservas solo se crearán si se pueden realizar todas con éxito, en el momento en el que falle una el resto no se tendrá en cuenta.
No se tendrán en cuenta en la búsqueda puestos fijos asignados a un usuario.
Acceso al edificio
Dentro de la información de la reserva hay un campo llamado “buildingAccessStatus”, que indica si se ha concedido al usuario acceso al edificio para esa reserva.
Este campo tiene tres posibles valores:
- PENDING: La reserva está pendiente de la aprobación o denegación de acceso.
- GRANTED: Se le ha concedido acceso al edificio.
- DENIED: Se ha rechazado el acceso al edificio.
Request
HTTP request
POST /api/v1/users/me/bookings/workstations/automatic
POST /api/v1/users/{userId}/bookings/workstations/automatic
Headers
| Header | Value | Required |
|---|---|---|
| Authorization | Bearer eyJ0eXBlIjoiSldUIiwiYWxnIjoiSFM1MT… | true |
Body
En el cuerpo de la solicitud, proporcione una representación JSON del siguiente objeto:
{
"bookingDays": [
{
"startDate": 1561449600000,
"endDate" : 1561459600000
}
],
"buildingId": "758a81f3-f171-404b-b48c-c922828aed49",
"floorId": "14ab4017-1261-46ff-af05-eadf5d3d69e8", // Opcional
"subcategoryId": "db5d3245-1df2-42e2-9c6e-51bfadba948b",
"allDayBooking": false,
"featureIds": [
"9fe8e2ac-bc59-42a7-b80b-a312d0ce53a0",
...
], // Opcional
"maxCostPerHour": 21.30 // Opcional
}
Response
Si se han conseguido crear las reservas, se devuelve un código 201 con la información de las mismas.
Body
HTTP/1.1 201 CREATED
Content-type: application/json
{
"bookings": [
{
"id": "0d8f593e-04ff-438d-86a1-d5b8754e7c4e",
"multipleBookingId": "2dfde059-da65-49c9-8db3-dccc4f329245",
"startDate": 1614416400000,
"endDate": 1614420000000,
"duration": 3600000,
"status": "PENDING",
"accessControlType": "ANY",
"creator": {
"id": "304a9cba-ad72-49a1-8782-9ac9a36cd8e7",
"name": "Aitor",
"surname": "Jupiter",
"alias": "072919a68fbd42aead115dbee1b02620",
"email": "aitor.jupiter@bookker.es",
"organization": {
"id": "8aee218a-fce2-4900-9410-00f485a2729e"
},
"userRule": {
"id": "304a9cba-ad72-49a1-8782-9ac9a36cd8e7"
},
"mobileRole": {
"id": "1dfde059-da65-49c9-8db3-dccc4f3292e4"
},
"canBeSearched": false,
"type": "BOOKKER_INTERNAL",
"userLanguage": "es-ES"
},
"organizer": {
"id": "304a9cba-ad72-49a1-8782-9ac9a36cd8e7",
"name": "Aitor",
"surname": "Jupiter",
"alias": "072919a68fbd42aead115dbee1b02620",
"email": "aitor.jupiter@bookker.es",
"organization": {
"id": "8aee218a-fce2-4900-9410-00f485a2729e"
},
"userRule": {
"id": "304a9cba-ad72-49a1-8782-9ac9a36cd8e7"
},
"mobileRole": {
"id": "1dfde059-da65-49c9-8db3-dccc4f3292e4"
},
"canBeSearched": false,
"type": "BOOKKER_INTERNAL",
"userLanguage": "es-ES"
},
"resource": {
"id": "bcb0dcaa-06f6-4a3c-9ec1-1cbe2e51b308",
"name": "B-P1-PUESTO-66",
"posterCode": "B-P1-PUESTO-66",
"image": "https://api.develop.bookkercorp.com/api/v1/bookker/download/organizations/8aee218a-fce2-4900-9410-00f485a2729e/users/5432a51ff76e4e349a0fcd6759eeaa0a.jpeg",
"mapCoordinates": {
"topLeftX": 144,
"topLeftY": 997,
"bottomRightX": 194,
"bottomRightY": 1045
},
"approachable": false,
"floor": {
"id": "14ab4017-1261-46ff-af05-eadf5d3d69e8",
"name": "Planta 1",
"floorNumber": 1,
"image": "https://api.develop.bookkercorp.com/api/v1/bookker/download/organizations/8aee218a-fce2-4900-9410-00f485a2729e/floors/40d25abc74f043f4afff218f02d2e024.png",
"building": {
"id": "758a81f3-f171-404b-b48c-c922828aed49",
"name": "Jupiter Building",
"address": {
"country": "ES",
"city": "Madrid",
"address": "Avenida Gran Vía, 85",
"coordinates": null
},
"organization": {
"id": "8aee218a-fce2-4900-9410-00f485a2729e"
},
"timezone": "Europe/Madrid",
"status": "ACTIVATED"
},
"status": "ACTIVATED",
"type": "OFFICE",
"visible": true
},
"subcategory": {
"id": "db5d3245-1df2-42e2-9c6e-51bfadba948b",
"name": "Puesto de trabajo",
"category": "WORKSTATION",
"organization": {
"id": "8aee218a-fce2-4900-9410-00f485a2729e"
},
"deleteHistorial": false,
"hideBookings": false,
"canBeSearched": true,
"shifts": true
},
"resourceRule": {
"id": "5fe7c1c6-9f41-47b0-915f-65635e704463",
"advanceCheckIn": 900000,
"expirationMargin": 300000,
"startTime": 36000000,
"endTime": 79200000,
"maximumDuration": 36000000,
"maximumAdvance": 300,
"accessControlType": "ANY",
"requiresApproval": false,
"allDayBookings": false,
"allDayBookingsCheckInMS": 43200000
},
"visible": true
},
"resourceType": "WORKSTATION",
"buildingAccessStatus": "PENDING",
"allDayBooking": false
}
]
}