Consumer API
Consumer API
Reference for the XCS Consumer API v1 — endpoints, authentication, error codes, and usage examples.
GET
Consumer API
The Consumer API provides programmatic access to XCS access control features. It is designed for automated systems that need to interact with the platform without a browser-based session.
Organization API keys are generated from the organization management page on the XCS dashboard. The API key must be authorized for the organization and resource you are trying to access.
Example response:
Example response:
Example response:
Some error responses also include a
Base URL
Authentication
All Consumer API requests require an API key passed in theX-API-Key header:
Keep your API key secure. Do not share it in client-side code, version control, or public channels. If a key is compromised, revoke it from the dashboard and generate a new one.
Endpoints
| Method | Path | Description |
|---|---|---|
| GET | / | Root health check — returns API status |
| GET | /ping | Ping with version information |
| GET | /organizations | List organizations authorized for this API key |
| POST | /access-points/{id}/remote-unlock | Trigger a remote unlock on an access point |
Health Check
Verify that the API is reachable and your API key is valid.Ping
Check API version and connectivity.List Organizations
Retrieve the organizations that your API key is authorized to access.Remote Unlock
See the Remote Unlock page for the complete reference, including request parameters, scope options, error handling, and the Roblox MessagingService integration.Error Response Format
When an API request fails, the response includes:requestId field for debugging.
Common HTTP Status Codes
| Code | Meaning |
|---|---|
| 200 | Success |
| 400 | Bad request — invalid parameters or missing required fields |
| 401 | Unauthorized — invalid or missing API key |
| 403 | Forbidden — API key not authorized for this resource |
| 404 | Resource not found |
| 422 | Unprocessable entity — configuration issue (e.g., missing Roblox Universe ID) |
| 429 | Too many requests — rate limit exceeded |
| 502 | Bad gateway — upstream service error (e.g., Roblox MessagingService failure) |
| 504 | Gateway timeout — upstream service did not respond in time |

