Check Availability
Query the calendar for any property to see which dates are open, their nightly rates, and minimum stay requirements.
When to use this endpoint
- Show a live availability calendar on your booking widget
- Verify dates are open before creating a reservation
- Sync availability to a channel manager or external platform
- Build a date picker that disables unavailable nights
Need to update availability?
Get availability calendar
/v1/availabilitycurl "https://api.repull.dev/v1/availability?property_id=123&start_date=2026-07-01&end_date=2026-07-31" \ -H "Authorization: Bearer sk_test_YOUR_KEY" \ -H "X-Workspace-Id: YOUR_WORKSPACE_ID"
Query parameters
property_idstringRequiredProperty ID to check availability for.
start_datedateStart of the date range. Format: YYYY-MM-DD. Defaults to today.
end_datedateEnd of the date range. Format: YYYY-MM-DD. Defaults to 90 days from start.
Response format
Returns an array of calendar day objects, one per date in the requested range.
{
"data": [
{
"date": "2026-07-01",
"available": true,
"price": 250.00,
"currency": "USD",
"minNights": 2,
"maxNights": 30,
"availableUnits": 1
},
{
"date": "2026-07-02",
"available": true,
"price": 250.00,
"currency": "USD",
"minNights": 2,
"maxNights": 30,
"availableUnits": 1
},
{
"date": "2026-07-03",
"available": false,
"price": null,
"currency": "USD",
"minNights": null,
"maxNights": null,
"availableUnits": 0
}
]
}Response fields
datestringCalendar date (YYYY-MM-DD).
availablebooleanWhether the date is available for booking.
pricenumbernullableNightly rate for this date. Null if unavailable.
currencystringISO 4217 currency code.
minNightsintegernullableMinimum stay requirement starting from this date.
maxNightsintegernullableMaximum stay allowed starting from this date.
availableUnitsintegerNumber of units available (relevant for multi-unit properties).
Common examples
Check a specific date range before booking
curl "https://api.repull.dev/v1/availability?property_id=123&start_date=2026-07-10&end_date=2026-07-15" \ -H "Authorization: Bearer sk_test_YOUR_KEY" \ -H "X-Workspace-Id: YOUR_WORKSPACE_ID"
Full month calendar view
curl "https://api.repull.dev/v1/availability?property_id=123&start_date=2026-08-01&end_date=2026-08-31" \ -H "Authorization: Bearer sk_test_YOUR_KEY" \ -H "X-Workspace-Id: YOUR_WORKSPACE_ID"
Validate availability in code
// Check if all dates in a range are available
const calendar = await repull.availability.get({
propertyId: '123',
startDate: '2026-07-10',
endDate: '2026-07-15',
});
const allAvailable = calendar.data.every(day => day.available);
if (allAvailable) {
// Safe to create the booking
await repull.reservations.create({ ... });
} else {
const blocked = calendar.data.filter(d => !d.available).map(d => d.date);
console.log('Blocked dates:', blocked);
}API Reference
See the complete Availability API Reference for all endpoints including update and batch operations.