Base URL
Authentication
Send your API key in theX-API-Key header.
?key=..., but the header is the preferred form.
Response shape
Most endpoints return a standard envelope:Endpoints at a glance
| Method | Path | Use it for | Works for |
|---|---|---|---|
| GET | /server | Fetch the authenticated server profile and stats. | Servers only |
| GET | /bot | Fetch the authenticated bot profile and stats. | Bots only |
| GET | /votes/:userId | Check vote cooldown and eligibility for a specific user. | Servers or bots |
| GET | /reviews | Read the authenticated server reviews. | Servers only |
GET /server
Returns the server metadata for the API key owner.
Example response
GET /bot
Returns the bot metadata for the API key owner.
Example response
GET /votes/:userId
Checks whether a user can vote again right now.
Path parameters
| Parameter | Type | Description |
|---|---|---|
userId | string | Discord user ID to check. Must be numeric. |
Example response
GET /reviews
Returns reviews for the authenticated server.
Query parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
limit | number | 10 | Maximum reviews to return. The hard cap is 50. |
sort | string | newest | Use newest, highest, or lowest. |
Example response
Example client code
- JavaScript
- cURL
Error handling
401means the key is missing or invalid.400means the endpoint does not match the key type or the parameter is invalid.429means the request limit was exceeded.500means the backend hit an unexpected error.
Best practices
- Keep the API key on your server.
- Cache responses that do not need to change every second.
- Use
/votes/:userIdonly when you need the live cooldown state. - Prefer the public API reference over reverse-engineering dashboard calls.