Authentication
The StaySuite API uses OAuth 2.0 bearer tokens for authentication. All API requests must include a valid access token in the Authorization header.
Exchange credentials for an access token
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
| client_id | string | Required | Your application's client ID |
| client_secret | string | Required | Your application's client secret |
| grant_type | string | Required | OAuth grant type (client_credentials, authorization_code, refresh_token) |
| scope | string | Optional | Space-separated list of scopes (e.g., "read write") |
Example Request
Response
Refresh an access token using a refresh token
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
| refresh_token | string | Required | The refresh token obtained from initial authentication |
Revoke an access token or refresh token
🔐 Two-Factor Authentication (2FA)
When 2FA is enabled, include the TOTP code in the X-TOTP-Code header:
Users API
Manage user accounts, profiles, and permissions within your organization.
List all users in your organization
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| page | integer | Optional | Page number (default: 1) |
| limit | integer | Optional | Items per page (default: 20, max: 100) |
| role | string | Optional | Filter by role (admin, manager, user, viewer) |
| status | string | Optional | Filter by status (active, inactive, suspended) |
| search | string | Optional | Search by name or email |
Response Schema
Get a specific user by ID
Create a new user account
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
| string | Required | User's email address | |
| name | string | Required | User's full name |
| password | string | Required | Password (min 8 characters) |
| role | string | Required | User role (admin, manager, user, viewer) |
| send_invite | boolean | Optional | Send welcome email (default: true) |
Update user information
Delete a user account
Properties API
Comprehensive property management for vacation rentals (VR) and long-term rentals (LTR).
List all properties with advanced filtering
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| type | string | Optional | Filter by type (vacation_rental, long_term_rental) |
| status | string | Optional | Filter by status (active, inactive, maintenance) |
| location | string | Optional | Filter by city or region |
| min_price | number | Optional | Minimum nightly/monthly rate |
| max_price | number | Optional | Maximum nightly/monthly rate |
| bedrooms | integer | Optional | Number of bedrooms |
| amenities | string | Optional | Comma-separated amenities (pool,wifi,parking) |
| available_from | date | Optional | Available from date (YYYY-MM-DD) |
| available_to | date | Optional | Available to date (YYYY-MM-DD) |
Response Schema
Get detailed information about a specific property
Create a new property listing
Update property details
Remove a property from the system
Get property availability calendar
Update property availability
Upload property images
Bookings API
Complete booking management system with real-time availability checking and modification capabilities.
List all bookings with comprehensive filtering
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| property_id | string | Optional | Filter by property ID |
| guest_id | string | Optional | Filter by guest ID |
| status | string | Optional | Filter by status (pending, confirmed, cancelled, completed) |
| check_in_from | date | Optional | Check-in date from (YYYY-MM-DD) |
| check_in_to | date | Optional | Check-in date to (YYYY-MM-DD) |
| channel | string | Optional | Booking source (direct, airbnb, booking, vrbo) |
Response Schema
Get detailed booking information
Create a new booking
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
| property_id | string | Required | Property ID to book |
| guest_id | string | Required | Guest ID (or create new guest) |
| check_in | date | Required | Check-in date (YYYY-MM-DD) |
| check_out | date | Required | Check-out date (YYYY-MM-DD) |
| adults | integer | Required | Number of adult guests |
| children | integer | Optional | Number of children |
| channel | string | Optional | Booking channel source |
Modify booking dates or details
Cancel a booking
Confirm a pending booking
Mark guest as checked in
Mark guest as checked out
Guests API
Manage guest profiles, preferences, communication history, and loyalty programs.
List all guests with search and filtering
Response Schema
Send a message to a guest
Get all bookings for a specific guest
Upload guest verification documents
Payments API
Process payments, refunds, and manage financial transactions.
List all payment transactions
Process a payment charge
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
| booking_id | string | Required | Associated booking ID |
| amount | number | Required | Amount to charge |
| currency | string | Required | Currency code (USD, EUR, etc.) |
| payment_method | string | Required | Payment method (card, bank_transfer, paypal) |
| payment_token | string | Required | Payment token or method ID |
Response
Issue a refund for a payment
List saved payment methods for a guest
Accounting API
Comprehensive financial management including ledgers, invoices, and reporting.
List all accounting transactions
Create a journal entry
List all invoices
Create a new invoice
Generate Profit & Loss report
Generate Balance Sheet report
Generate tax documents (1099-K, Schedule E)
Housekeeping API
Manage cleaning schedules, tasks, and team assignments.
List all housekeeping tasks
Response Schema
Create a new housekeeping task
Mark a task as completed
Get housekeeping calendar schedule
Maintenance API
Track and manage property maintenance, repairs, and preventive tasks.
List all maintenance requests
Create a maintenance request
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
| property_id | string | Required | Property requiring maintenance |
| category | string | Required | Category (plumbing, electrical, hvac, appliance, other) |
| priority | string | Required | Priority level (emergency, high, medium, low) |
| description | string | Required | Detailed description of the issue |
| photos | array | Optional | Array of photo URLs |
Get preventive maintenance schedule
List approved maintenance vendors
Channel Management API
Manage distribution channels and synchronize listings across platforms.
List all connected channels
Connect a new distribution channel
Sync property data with a channel
Import bookings from a channel
Analytics API
Access comprehensive analytics and reporting for business intelligence.
Get dashboard metrics and KPIs
Response Schema
Get detailed revenue analytics
Get occupancy trends and forecasts
Get market comparison data
Webhooks API
Configure and manage webhook subscriptions for real-time event notifications.
List all webhook subscriptions
Create a webhook subscription
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
| url | string | Required | Webhook endpoint URL (HTTPS required) |
| events | array | Required | Array of event types to subscribe to |
| secret | string | Optional | Secret for signature verification |
| active | boolean | Optional | Whether webhook is active (default: true) |
📡 Available Webhook Events
- booking.* - All booking events
- property.* - Property updates
- payment.* - Payment transactions
- guest.* - Guest profile changes
- review.* - New reviews
- maintenance.* - Maintenance requests
- housekeeping.* - Cleaning task updates
Workflows API
Automate business processes with customizable workflows and triggers.
List all automation workflows
Create a new automation workflow
Manually trigger a workflow
Get workflow execution history
Documents API
Manage contracts, agreements, and document generation.
Generate a document from template
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
| template | string | Required | Template type (rental_agreement, invoice, receipt) |
| booking_id | string | Required | Associated booking ID |
| format | string | Optional | Output format (pdf, html) - default: pdf |
Download a generated document
Send document via email
Data Schemas
Detailed schema definitions for all API resources.
Common Schemas
Address Schema
Money Schema
Pagination Schema
Error Codes Reference
Complete list of error codes and their meanings.
| Error Code | HTTP Status | Description |
|---|---|---|
| AUTHENTICATION_ERROR | 401 | Invalid or expired authentication credentials |
| PERMISSION_DENIED | 403 | User doesn't have permission to perform this action |
| RESOURCE_NOT_FOUND | 404 | The requested resource doesn't exist |
| VALIDATION_ERROR | 422 | Request validation failed |
| DUPLICATE_RESOURCE | 409 | Resource already exists |
| BOOKING_CONFLICT | 409 | Dates are not available for booking |
| RATE_LIMIT_EXCEEDED | 429 | Too many requests - rate limit exceeded |
| PAYMENT_FAILED | 402 | Payment processing failed |
| INVALID_STATE | 400 | Operation not allowed in current state |
| EXTERNAL_SERVICE_ERROR | 502 | External service (Stripe, etc.) error |
| INTERNAL_ERROR | 500 | Internal server error occurred |
| SERVICE_UNAVAILABLE | 503 | Service temporarily unavailable |
Error Response Format
Download Complete API Reference
Get the full StaySuite API Reference documentation as a PDF for offline access