Skip to content
Serversinc Serversinc
Dashboard

Reference

Exact resource relationships, lifecycle states, settings, compatibility rules, defaults, and limits.

An organisation owns the customer resources managed by Serversinc.

Organisation
├── Members, credentials, integrations, activity, and billing
├── Servers
│ ├── Applications
│ │ ├── Deployments
│ │ └── Containers
│ ├── Database instances
│ │ ├── Logical databases
│ │ └── Database users and grants
│ ├── Commands and schedules
│ └── Backups and restores
└── Storage providers

An application records desired runtime configuration. A deployment applies that configuration. A container records the observed running instance produced by a deployment.

Database instances have a separate lifecycle from applications, even though their containers run on the same managed servers.

A request being accepted doesn’t mean the work is done. Follow the resource until it reaches a final status.

The table lists the values the API returns. The dashboard shows them in words, such as Active for active.

ResourceStatusesFinal
Serverprovisioning, running_setup, active, failedactive, failed
Deploymentpending, building, in_progress, completed, failed, rolled_back, supersededcompleted, failed, rolled_back, superseded
Databaseprovisioning, running, failed, deprovisioningrunning, failed
Backuppending, running, completed, failed, deletingcompleted, failed
Restorepending, running, completed, failedcompleted, failed

An application’s status comes from its current container.

The saved application is the desired state. The current container is what’s running. Saving a change doesn’t touch the running container: deploy the application to replace it.

SettingDefaultAllowed valuesShows pending changes
Deploy strategyrecreaterecreate, rollingNo
Health checkOn, no pathAny HTTP path, for example /upYes
Health check timeout120 secondsFixed–
Health check interval3 secondsFixed–
Stop grace period10 seconds0–600 secondsYes
CPU limitUnlimited0.1–128 coresNo
Memory limitUnlimited32 MB minimumNo
Environment variablesNone–Yes
VolumesNoneBind mount or named volume, read-only optionalYes
NetworksNone–Yes
PortsNonetcp (default) or udpYes
LabelsNone–Yes

With the health check on and no path, Serversinc only checks that the new container stays running. The health check uses the port from the Traefik service label, then the first container port, then port 80.

Every setting in the table needs a deployment to take effect, including the ones that don’t show pending changes.

EngineVersions you can provisionAdmin user
PostgreSQL13, 14, 15, 16, 17, 18postgres
MySQL8.0, 8.4root
MariaDB10.6, 10.11, 11.4root

Importing an existing database adopts its container. It doesn’t change the engine or version. Import fails if the engine you pick doesn’t match the server: a MariaDB server imported as MySQL, or the other way round.

TypeWhat it contains
databaseOne logical database. A full backup makes one per database.
globalsPostgreSQL roles and tablespaces. Added to every full PostgreSQL backup.
volumeOne Docker volume.

Backups from one run share a batch. Each backup needs a storage provider. A download URL expires after 15 minutes. Deleting a backup removes the archive and its record.

RuleDetail
EnginePostgreSQL restores to PostgreSQL only. MySQL and MariaDB restore to each other.
VersionThe target can’t have a lower major version than the backup.
Database nameThe restore fails if a database with the target name exists. Restores never overwrite a database.
Target instanceIf the server has more than one database instance, you must pick one.
Volume nameThe restore fails if the volume exists, unless you choose to overwrite it.

Server checks cover root SSH login, automatic updates, Fail2Ban, time synchronisation, firewall state, and open TCP/UDP ports. A check can report a healthy, failing, unknown, or stale condition.

Unknown means the agent hasn’t reported enough data to change the check safely. Stale means the last report is too old to trust.

Organisations record owner, admin, and member roles. Admin and member do not yet restrict access: every member can manage every resource in the organisation. The owner cannot leave the organisation. The organisation is the access boundary for servers, applications, databases, provider credentials, storage providers, integrations, activity, and billing. Removing a member revokes access to that organisation but does not delete resources they created.

API and MCP clients act with the permissions of the account that created their personal access token. Knowing a resource ID from another organisation does not cross the organisation boundary.

  • An organisation can have up to ten members, including the owner.
  • An organisation invitation expires after 7 days.
  • A server connection command expires after 15 minutes.
  • A server is offline after 12 minutes without a heartbeat. Heartbeats are sent every 5 minutes; hardening checks run daily.
  • A command times out after two minutes.
  • A backup download URL expires after 15 minutes.
  • An organisation can have up to 100 custom alerts.
  • API tokens can have an optional expiry and are displayed once.
  • Scheduled commands support interval, hourly, daily, weekly, and cron schedules.
  • CPU and memory values left unlimited do not create an application-level cap.
  • Backup retention can use maximum age, maximum count, or both. Locked backups are excluded from pruning.

For provider sizes, engine versions, and resource maximums, the dashboard selectors are the source of truth.

  • Agent. Runs as root with --privileged --pid host and the Docker socket. Organisation access is root access to every server in it.
  • Serversinc → agent. Ed25519-signed JWT, audience agent:<server-id>, five-minute expiry, over HTTPS.
  • Agent → Serversinc. Per-server secret key over HTTPS.
  • Agent updates. The new version checks its own health before it replaces the old one. Images are not signature-verified.
  • Organisation isolation. A resource ID from another organisation does not cross the boundary.
  • Secrets. Masked, write-only, or shown once depending on the workflow.
  • Commands. A confirmation protects against accidental execution; it does not sandbox the command.

See The agent for the full model.

The REST API is versioned under https://api.serversinc.io/v1 and uses personal access tokens for authentication. Collection endpoints can paginate and filter. Validation errors identify invalid request fields. Provisioning, deployments, commands, database operations, backups, and restores can continue after the initial response, so API clients must follow the resulting resource status.

The MCP endpoint at https://api.serversinc.io/mcp exposes the same organisation resources through named tools for compatible clients.