Skip to content

Getting started

The partner API gives your systems read access to one agency’s inventory: units, availability, live price quotes and bookings. It is available on the Pro plan.

  1. Sign in to your agency portal as an admin.
  2. Open Settings → API keys and create a key. Pick only the scopes your integration needs.
  3. Copy the key now — it starts with hr_live_ and is shown exactly once. Only a hash is stored on our side.
Terminal window
curl https://api.myrentalcalendar.com/partner/v1/units \
-H "Authorization: Bearer hr_live_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
{
"units": [
{
"id": "0190c…",
"slug": "marina-loft-2br",
"name": "Marina Loft · 2BR",
"status": "published",
"city": "Dubai",
"area": "Dubai Marina",
"bedrooms": 2,
"maxGuests": 5,
"basePrice": 45000,
"minStay": 2,
"instantBook": true
}
]
}

The slug is the identifier every other endpoint expects.

Terminal window
curl "https://api.myrentalcalendar.com/partner/v1/availability?unit=marina-loft-2br&from=2026-09-01&to=2026-10-01" \
-H "Authorization: Bearer $STAYOS_KEY"
curl https://api.myrentalcalendar.com/partner/v1/quote \
-H "Authorization: Bearer $STAYOS_KEY" \
-H "Content-Type: application/json" \
-d '{ "unit": "marina-loft-2br", "arrival": "2026-09-10", "departure": "2026-09-14" }'
ConventionRule
Base URLhttps://api.myrentalcalendar.com
DatesISO YYYY-MM-DD; a night is the date the guest sleeps, stays are [arrival, departure)
AmountsIntegers in the agency currency’s minor unit (fils/cents): 45000 = AED 450.00
ErrorsJSON with a stable code and a human-readable title — see errors & limits
Rate limit120 requests per minute per client, shared between REST and MCP