Changelog
Our compatibility promise
The API is versioned by date. The current version is 2026-08-01, and it
appears in the OpenAPI document and in every webhook payload as api_version.
We will not make a breaking change within a version. That is enforced mechanically, not by good intentions: every pull request diffs the specification against the released one and the build fails on any breaking change. If we need one, it ships as a new version and the old one keeps working.
What we consider breaking
- Removing an endpoint, a field or an enum value
- Making an optional request parameter required
- Narrowing an accepted value, or changing a field's type
- Changing the meaning of an existing field
What we may do at any time
- Add a new endpoint, an optional parameter, or a response field
- Add a new enum value to an existing field
- Add a new error
code - Add a new webhook event type
So write a tolerant client: ignore fields you do not recognise rather than rejecting the payload, and treat an unfamiliar enum value or error code as a default case rather than a crash. Those two habits are the difference between an integration that survives our improvements and one that breaks on them.
2026-08-01 — Initial release
The first public version.
Resources
GET /v1/me— introspect the calling credentialGET /v1/properties,GET /v1/properties/{id}GET /v1/reservations,GET /v1/reservations/{id}— guest identity behindreservations:guest_readGET/POST/PATCH/DELETE /v1/blocks, plusPOST /v1/blocks/batchGET /v1/calendar,PUT /v1/calendarfor bulk price and restriction updatesGET/POST/PATCH/DELETE /v1/webhooks, secret rotation, delivery log and replayGET /v1/events— the durable event log
Platform
- Cursor pagination with
updated_afterdelta filters on every list endpoint Idempotency-Keyrequired on all writes, replayed for 24 hours- Per-integration rate limits with
X-RateLimit-*headers - HMAC-SHA256 signed webhooks with a rotation grace window
- Scoped access with an optional per-property restriction

