API Reference
The HyperXI REST API gives you full programmatic access to your escape room platform. Use it to build custom integrations, automate workflows, or power your own front-end.
Base URL
https://api.hyperxi.com:10443/apiAll API endpoints are prefixed with /api. Public-facing endpoints use /api/public/:slug and do not require authentication.
Authentication
Authenticated endpoints require two headers:
| Header | Value | Description |
|---|---|---|
Authorization | Bearer hxi_live_... | Your API key, prefixed with "Bearer " |
x-tenant-slug | your-slug | Your tenant slug for multi-tenancy isolation |
API keys are generated in Admin → Settings → API Keys. Keys always start with hxi_live_.
Response Format
All responses are JSON. Successful responses wrap data in a success envelope:
{
"success": true,
"data": {
"id": "abc-123",
"name": "The Vault",
"status": "active"
}
}Error responses include a code and human-readable message:
{
"error": "VALIDATION_ERROR",
"message": "Field 'name' is required"
}| HTTP Status | Meaning |
|---|---|
200 | Success |
201 | Created |
400 | Bad request / validation error |
401 | Unauthorized (missing or invalid API key) |
403 | Forbidden (insufficient permissions) |
404 | Not found |
409 | Conflict (duplicate, booking race condition) |
429 | Rate limit exceeded |
500 | Internal server error |
Rate Limits
| Type | Limit | Window |
|---|---|---|
| Authenticated | 100 requests | per minute |
| Public endpoints | 30 requests | per minute |
When rate limited, you will receive a 429 response with a Retry-After header indicating when you can try again.
Common Headers
| Header | Value | When |
|---|---|---|
Content-Type | application/json | All POST/PUT requests |
Authorization | Bearer hxi_live_... | All authenticated requests |
x-tenant-slug | your-slug | All authenticated requests |
x-csrf-token | (from cookie) | Browser-based requests only |
Example: List Rooms
curl -X GET "https://api.hyperxi.com:10443/api/rooms" \
-H "Authorization: Bearer hxi_live_your_key_here" \
-H "x-tenant-slug: your-slug" \
-H "Content-Type: application/json"{
"success": true,
"data": [
{
"id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"name": "The Vault",
"slug": "the-vault",
"status": "active",
"min_players": 2,
"max_players": 6,
"duration_minutes": 60,
"pricing_type": "per_person",
"base_price_cents": 3500,
"difficulty": "hard"
}
]
}Endpoint Reference
More endpoint documentation coming soon. In the meantime, the MCP tool reference covers all available operations with parameters and examples.