Webhooks and REST API
Integrate Shortrental with anything — send events to your own systems, read data, push data back.
Updated: Apr 6, 2026
Every Shortrental workspace has API access on the AI and Scale plans.
Authentication
Generate an API key in Settings → Developers → API keys. Keys are scoped to the current workspace.
curl https://api.shortrental.ai/v1/reservations \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxx"
Common endpoints
GET /v1/reservations— list reservations, filter by date/listing/channelGET /v1/reservations/{id}— full detailPOST /v1/messages— send a message to a guestGET /v1/listings— listing catalogPOST /v1/tasks— create a taskGET /v1/financials— P&L by period
Full reference: api.shortrental.ai/reference
Rate limits
- AI plan: 60 requests/minute, 10,000/day
- Scale plan: 600 requests/minute, unlimited/day
Every response includes X-RateLimit-Remaining and X-RateLimit-Reset headers.
Webhooks
Receive real-time events at your endpoint. Configure in Settings → Developers → Webhooks.
Event types
reservation.confirmedreservation.modifiedreservation.cancelledmessage.receivedmessage.ai_repliedmessage.escalatedtask.completedreview.received
Payload format
{
"event": "reservation.confirmed",
"workspace_id": "ws_abc123",
"created_at": "2026-04-17T14:30:00Z",
"data": {
"reservation_id": "res_xyz789",
"listing_id": "list_def456",
"guest": { "id": "g_ghi012", "name": "Sarah Johnson" },
"check_in": "2026-05-11",
"check_out": "2026-05-14",
"total": 540,
"currency": "EUR",
"channel": "airbnb"
}
}
Signature verification
Every webhook includes an X-Shortrental-Signature header. Verify with HMAC-SHA256 using your webhook secret:
import crypto from "node:crypto";
function verify(body: string, signature: string, secret: string) {
const hmac = crypto.createHmac("sha256", secret);
hmac.update(body);
const expected = hmac.digest("hex");
return crypto.timingSafeEqual(Buffer.from(signature), Buffer.from(expected));
}
SDKs
- Node/TypeScript:
npm i @shortrental/sdk - Python:
pip install shortrental-sdk - Go:
go get github.com/shortrental-ai/go-sdk
Or just use fetch / requests — the API is a standard REST interface.