Warden API
  1. Booking Engine
Warden External API
  • Warden External API
  • Auth
    • Credential Refresh
      GET
  • Booking Engine
    • Get Property Listings
      GET
    • Get Bed Availability
      POST
    • Get Room Type Listings
      GET
    • Get Plan Options for Channel and Room Types
      POST
    • Generate Plan for Channel and Room Types
      POST
    • Create Booking
      PUT
  • API
    • Get Company Details
      GET
    • Get Channels
      GET
    • Get Bookings
      GET
    • Get Residents
      GET
    • Get Payments
      GET
    • Get Transactions
      GET
  1. Booking Engine

Get Bed Availability

POST
/api/v1/external-app/get-bed-availability-for-property
Last modified:2026-05-03 12:38:55
Returns real-time bed availability across all room types for a given property and date range. Use this to determine which room types have vacancies before proceeding to get plan options or create a booking.

Request Body#

FieldTypeRequiredDescription
propertyIdnumberYesThe ID of the property to check availability for. Obtain from Get Property Listings
channelIdnumberNoThe channel ID to scope availability to. Obtain from Get Channels
startDateTimedatetimeYesThe desired move-in date and time (ISO 8601 format with timezone, e.g. 2026-07-18T15:40:41+05:30)
endDateTimedatetimeYesThe desired move-out date and time (ISO 8601 format with timezone, e.g. 2026-09-18T15:40:41+05:30)

What's Returned#

The response contains an availability array, with one entry per room type. Each entry includes:
FieldDescription
roomTypeIdID of the room type
roomTypeNameDisplay name of the room type
bedCountNumber of beds per room in this room type
totalBeds / occupiedBeds / availableBedsOverall bed counts across the property
totalMaleBeds / occupiedMaleBeds / availableMaleBedsBed counts for male-allocated beds
totalFemaleBeds / occupiedFemaleBeds / availableFemaleBedsBed counts for female-allocated beds
roomsWithVacancyCountA breakdown of rooms grouped by number of available beds (e.g. {"0": 2, "1": 5, "2": 15} means 2 rooms are full, 5 rooms have 1 vacancy, 15 rooms have 2 vacancies)
maleRoomsWithVacancyCountSame breakdown for male-allocated rooms
femaleRoomsWithVacancyCountSame breakdown for female-allocated rooms

Authentication#

This endpoint requires a valid Bearer Token in the Authorization header. Obtain one via the Credential Refresh endpoint.

Request

Authorization
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
Header Params

Body Params application/json

Examples

Responses

🟢200
application/json
Body

Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://server.wardenera.com/api/v1/external-app/get-bed-availability-for-property' \
--header 'User-Agent: insomnia/11.4.0' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
    "propertyId": 412,
    "channelId": 32,
    "startDateTime": "2026-07-18T15:40:41+05:30",
    "endDateTime": "2026-09-18T15:40:41+05:30"
}'
Response Response Example
{
    "availability": [
        {
            "roomTypeId": 1385,
            "roomTypeName": "Twin Sharing Room",
            "bedCount": 2,
            "totalFemaleBeds": 32,
            "occupiedFemaleBeds": 1,
            "availableFemaleBeds": 31,
            "femaleRoomsWithVacancyCount": {
                "0": 0,
                "1": 1,
                "2": 15
            },
            "totalMaleBeds": 32,
            "occupiedMaleBeds": 1,
            "availableMaleBeds": 31,
            "maleRoomsWithVacancyCount": {
                "0": 0,
                "1": 1,
                "2": 15
            },
            "totalBeds": 32,
            "occupiedBeds": 1,
            "availableBeds": 31,
            "roomsWithVacancyCount": {
                "0": 0,
                "1": 1,
                "2": 15
            }
        },
        {
            "roomTypeId": 1386,
            "roomTypeName": "Triple Sharing Room",
            "bedCount": 3,
            "totalFemaleBeds": 39,
            "occupiedFemaleBeds": 0,
            "availableFemaleBeds": 39,
            "femaleRoomsWithVacancyCount": {
                "0": 0,
                "1": 0,
                "2": 0,
                "3": 13
            },
            "totalMaleBeds": 48,
            "occupiedMaleBeds": 0,
            "availableMaleBeds": 48,
            "maleRoomsWithVacancyCount": {
                "0": 0,
                "1": 0,
                "2": 0,
                "3": 16
            },
            "totalBeds": 48,
            "occupiedBeds": 0,
            "availableBeds": 48,
            "roomsWithVacancyCount": {
                "0": 0,
                "1": 0,
                "2": 0,
                "3": 16
            }
        },
        {
            "roomTypeId": 1628,
            "roomTypeName": "Private Room",
            "bedCount": 1,
            "totalFemaleBeds": 13,
            "occupiedFemaleBeds": 0,
            "availableFemaleBeds": 13,
            "femaleRoomsWithVacancyCount": {
                "0": 0,
                "1": 13
            },
            "totalMaleBeds": 13,
            "occupiedMaleBeds": 0,
            "availableMaleBeds": 13,
            "maleRoomsWithVacancyCount": {
                "0": 0,
                "1": 13
            },
            "totalBeds": 13,
            "occupiedBeds": 0,
            "availableBeds": 13,
            "roomsWithVacancyCount": {
                "0": 0,
                "1": 13
            }
        }
    ],
    "message": "Fetched all Bed Availability"
}
Modified at 2026-05-03 12:38:55
Previous
Get Property Listings
Next
Get Room Type Listings
Built with