Skip to content

API Endpoints

Complete reference for all Arcadium REST API endpoints.

Interactive API Documentation

For live API testing, visit the Swagger UI at /api/docs.

Base URL

https://api.arcadiumpanel.com/api/v1

All endpoints require authentication via Bearer token. See Authentication for details.

Endpoint Categories

Clusters

  • GET /clusters - List your clusters
  • GET /clusters/{id} - Get cluster details
  • POST /clusters - Create new cluster
  • PATCH /clusters/{id} - Update cluster
  • DELETE /clusters/{id} - Delete cluster

Machines

  • GET /clusters/{clusterId}/machines - List machines
  • GET /machines/{id} - Get machine details
  • POST /clusters/{clusterId}/machines - Register machine
  • DELETE /machines/{id} - Remove machine

Servers

  • GET /clusters/{clusterId}/servers - List game servers
  • GET /servers/{id} - Get server details
  • POST /clusters/{clusterId}/servers - Create server
  • PATCH /servers/{id} - Update server
  • DELETE /servers/{id} - Delete server
  • POST /servers/{id}/start - Start server
  • POST /servers/{id}/stop - Stop server
  • POST /servers/{id}/restart - Restart server
  • POST /servers/{id}/rcon - Execute RCON command

Players

See Players Endpoints for detailed documentation.

  • GET /clusters/{clusterId}/players - List players
  • GET /players/{id} - Get player details
  • GET /servers/{serverId}/players - Get online players
  • POST /players/{id}/kick - Kick player
  • POST /players/{id}/ban - Ban player

Tasks

  • GET /clusters/{clusterId}/tasks - List scheduled tasks
  • GET /tasks/{id} - Get task details
  • POST /clusters/{clusterId}/tasks - Create task
  • PATCH /tasks/{id} - Update task
  • DELETE /tasks/{id} - Delete task

Team Members

  • GET /clusters/{clusterId}/members - List team members
  • POST /clusters/{clusterId}/invitations - Invite member
  • PATCH /clusters/{clusterId}/members/{userId} - Update member role
  • DELETE /clusters/{clusterId}/members/{userId} - Remove member

Common Response Codes

CodeDescription
200Success
201Created
400Bad Request - Invalid parameters
401Unauthorized - Invalid token
403Forbidden - Insufficient permissions
404Not Found - Resource doesn't exist
429Too Many Requests - Rate limit exceeded
500Internal Server Error

Pagination

List endpoints support pagination:

http
GET /api/v1/clusters/{clusterId}/servers?page=1&limit=20

Response includes pagination metadata:

json
{
  "data": [...],
  "meta": {
    "page": 1,
    "limit": 20,
    "total": 150,
    "totalPages": 8
  }
}

Filtering & Sorting

Most list endpoints support filtering:

http
GET /api/v1/clusters/{clusterId}/servers?status=online&game=minecraft

And sorting:

http
GET /api/v1/clusters/{clusterId}/players?sort=-playtime

Use - prefix for descending order.

Error Handling

All errors follow consistent format:

json
{
  "statusCode": 400,
  "message": "Validation failed",
  "error": "Bad Request",
  "details": [
    {
      "field": "port",
      "message": "Port must be between 1024 and 65535"
    }
  ]
}

Next Steps

Released under the MIT License.