# Create a new booking **POST /api/Bookings** Sample request: POST /booking { "roomsId": ["31d26773-2eb9-4695-bc61-0b717bd97e0b", "54a26773-2eb9-4695-bc61-0b717bd97e0b"], "hotelId": "46c26773-2eb9-4695-bc61-0b717bd97e0b", "checkInDate": "2024-01-10", "checkOutDate": "2024-01-15", "numberOfAdults": 1, "numberOfChildren": 1, "userRemarks": "I need a baby cot.", "paymentMethod": "CreditCard" } ## Servers - http://api.example.com: http://api.example.com () ## Parameters ### Body: application/json (object) The data for the new booking - **roomIds** (array[string(uuid)] | null) List of Id's of the desired Rooms - **hotelId** (string(uuid)) the desired Hotel Id - **numberOfAdults** (integer(int32)) Number of adults staying in the room - **numberOfChildren** (integer(int32)) Number of children staying in the room - **checkInDate** (string(date-time)) Check-in date in UTC - **checkOutDate** (string(date-time)) Check-out date in UTC - **userRemarks** (string | null) User special requests or remarks - **paymentMethod** (string | null) Payment method (Cash, Credit Card, Bank Transfer) - **Additional properties are NOT allowed** () ## Responses ### 200 Success #### Body: application/json (object) - **confirmationId** (string(uuid)) - **checkInDate** (string(date)) - **checkOutDate** (string(date)) - **price** (number(double)) - **numberOfAdults** (integer(int32)) - **numberOfChildren** (integer(int32)) - **roomNumbers** (array[integer(int32)] | null) - **guestFullName** (string | null) - **guestId** (string(uuid)) - **hotelName** (string | null) - **hotelId** (string(uuid)) - **Additional properties are NOT allowed** () ### 201 Returns the newly created booking ### 400 If the request data is invalid ### 401 If the user is not authenticated ### 403 If the user is not authorized ### 404 If the hotel/room or guest is not found [Powered by Bump.sh](https://bump.sh)