Skip to content
Pre-release. HostCraft is in testing and not yet for sale. These docs describe the current build and may change. Join the waitlist to hear when it launches.

System API

Source: daemon/proto/hostcraft/v1/system.proto

SystemService reports on and manages the host. REST: /api/v1/system.

Method REST route Permission Streaming
GetServerInfo GET /api/v1/system/info SystemRead unary
GetSystemSettings GET /api/v1/system/settings SystemRead unary
UpdateSystemSettings PATCH /api/v1/system/settings SystemAdmin unary
GetSystemHealth GET /api/v1/system/health SystemRead unary
GetSystemUsage GET /api/v1/system/usage SystemRead unary
ListServices GET /api/v1/system/services SystemRead unary
GetService GET /api/v1/system/services/{name} SystemRead unary
StartService POST /api/v1/system/services/{name}/start SystemAdmin unary
StopService POST /api/v1/system/services/{name}/stop SystemAdmin unary
RestartService POST /api/v1/system/services/{name}/restart SystemAdmin unary
ListPackages GET /api/v1/system/packages SystemRead unary
ListPackageUpdates GET /api/v1/system/packages/updates SystemRead unary
ReapplyConfigs POST /api/v1/system/reapply-configs SystemAdmin unary

/hostcraft.v1.SystemService/GetServerInfo

/hostcraft.v1.SystemService/GetSystemSettings

/hostcraft.v1.SystemService/UpdateSystemSettings

/hostcraft.v1.SystemService/GetSystemHealth

/hostcraft.v1.SystemService/GetSystemUsage

/hostcraft.v1.SystemService/ListServices

/hostcraft.v1.SystemService/GetService

/hostcraft.v1.SystemService/StartService

/hostcraft.v1.SystemService/StopService

/hostcraft.v1.SystemService/RestartService

/hostcraft.v1.SystemService/ListPackages

/hostcraft.v1.SystemService/ListPackageUpdates

ReapplyConfigs re-renders every site's vhost and PHP-FPM pool from the panel database through configwriter.

/hostcraft.v1.SystemService/ReapplyConfigs

Field Type Number Description
supported bool 1 -
installed bool 2 -
enabled bool 3 -
tool string 4 -
family string 5 -
last_run google.protobuf.Timestamp 6 -
Field Type Number Description
name string 1 -

ControlServiceResponse carries the unit status after the action, or status_unknown when the action succeeded but the status read failed.

Field Type Number Description
service ManagedService 1 -
status_unknown bool 2 -
status_error string 3 -

No fields.

Field Type Number Description
name string 1 -

No fields.

No fields.

No fields.

Field Type Number Description
name string 1 -
version string 2 -
source string 3 -
security_update_available bool 4 -
available_version string 5 -

No fields.

Field Type Number Description
updates repeated InstalledPackage 1 -
Field Type Number Description
security_only bool 1 -
Field Type Number Description
packages repeated InstalledPackage 1 -

No fields.

Field Type Number Description
services repeated ManagedService 1 -
Field Type Number Description
name string 1 systemd unit
module string 2 -
state string 3 -
detail string 4 -
last_change_at google.protobuf.Timestamp 5 -
Field Type Number Description
module string 1 -
status string 2 -
message string 3 -

No fields.

Field Type Number Description
site_id string 1 -
account_id string 2 -
kind string 3 vhost | pool
error string 4 -
Field Type Number Description
started_at google.protobuf.Timestamp 1 -
finished_at google.protobuf.Timestamp 2 -
sites int64 3 -
vhosts_changed int64 4 -
vhosts_unchanged int64 5 -
pools_changed int64 6 -
pools_unchanged int64 7 -
failures repeated ReapplyFailure 8 -
Field Type Number Description
hostname string 1 -
distro string 2 -
distro_id string 3 -
distro_version string 4 -
kernel string 5 -
arch string 6 -
cpu_count int64 7 -
memory_total_bytes int64 8 -
disk_total_bytes int64 9 -
boot_id string 10 -
booted_at google.protobuf.Timestamp 11 -
daemon_version string 12 -
daemon_channel string 13 -
build_time string 14 -
build_git_id string 15 -
started_at google.protobuf.Timestamp 16 -
mode string 17 -
uptime string 18 -
timezone string 19 -
clustered bool 20 True when the cluster module runs on this node (a cluster panel).
Field Type Number Description
overall string 1 -
modules repeated ModuleHealth 2 -
Field Type Number Description
hostname string 1 -
timezone string 2 -
default_nameservers repeated string 3 -
auto_security_updates AutoSecurityUpdates 4 State of unattended-upgrades (Debian/Ubuntu) or dnf-automatic (RHEL).
Field Type Number Description
cpu_percent_5m double 1 -
cpu_percent_15m double 2 -
memory_used_bytes int64 3 -
memory_total_bytes int64 4 -
swap_used_bytes int64 5 -
swap_total_bytes int64 6 -
disk_used_bytes int64 7 -
disk_total_bytes int64 8 -
network_rx_bytes_per_sec int64 9 -
network_tx_bytes_per_sec int64 10 -
process_count int64 11 -
active_connections int64 12 -
sampled_at google.protobuf.Timestamp 13 -
Field Type Number Description
hostname optional string 1 -
timezone optional string 2 -
auto_security_updates optional bool 3 Turns automatic OS security updates on or off.