Skip to main content

Servers

Manage your infrastructure servers through the API. Servers are the hosts where your applications, databases, and services run.

List Servers​

GET /api/v1/servers

Response:

{
"data": [
{
"uuid": "srv-abc123",
"name": "production-eu",
"ip": "195.201.xxx.xxx",
"status": "reachable",
"settings": {
"is_reachable": true,
"is_usable": true
},
"created_at": "2024-01-15T10:30:00Z"
}
]
}

Get Server​

GET /api/v1/servers/{uuid}

Returns full server details including Docker version, proxy configuration, and settings.

Create Server​

POST /api/v1/servers
{
"name": "my-server",
"ip": "195.201.xxx.xxx",
"port": 22,
"user": "root",
"private_key_uuid": "key-abc123"
}
ParameterTypeRequiredDescription
namestringYesServer display name
ipstringYesServer IP address
portintegerNoSSH port (default: 22)
userstringNoSSH user (default: root)
private_key_uuidstringYesSSH private key UUID
is_build_serverbooleanNoUse as a dedicated build server

Response: 201 Created

{
"uuid": "srv-abc123",
"name": "my-server",
"ip": "195.201.xxx.xxx"
}

Update Server​

PATCH /api/v1/servers/{uuid}
{
"name": "renamed-server"
}

Delete Server​

DELETE /api/v1/servers/{uuid}
warning

Deleting a server removes it from Corelix management. It does not terminate the actual cloud server or delete any data on it.

List Server Resources​

Get all applications, databases, and services running on a server:

GET /api/v1/servers/{uuid}/resources

Response:

{
"data": [
{
"uuid": "app-abc123",
"name": "my-web-app",
"type": "application",
"status": "running:healthy"
},
{
"uuid": "db-abc123",
"name": "production-postgres",
"type": "standalone-postgresql",
"status": "running:healthy"
}
]
}

List Server Domains​

Get all domains configured across all resources on a server:

GET /api/v1/servers/{uuid}/domains

Response:

{
"data": [
{
"domain": "myapp.example.com",
"resource_uuid": "app-abc123",
"resource_name": "my-web-app",
"resource_type": "application"
}
]
}

Validate Server​

Check server connectivity and Docker installation:

GET /api/v1/servers/{uuid}/validate

Response:

{
"message": "Server is reachable and Docker is installed.",
"docker_version": "24.0.7"
}

This endpoint verifies:

  • SSH connectivity
  • Docker Engine is installed and running
  • Docker Compose is available
  • The server is usable for deployments