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.

Plan API

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

PlanService manages the hosting plan catalogue. REST: /api/v1/plans.

Method REST route Permission Streaming
ListPlans GET /api/v1/plans PlanRead unary
CreatePlan POST /api/v1/plans PlanCreate unary
GetPlan GET /api/v1/plans/{id} PlanRead unary
UpdatePlan PUT /api/v1/plans/{id} PlanUpdate unary
DeletePlan DELETE /api/v1/plans/{id} PlanDelete unary
ImportExamplePlans POST /api/v1/plans/import-example PlanCreate unary
ApplyPlan POST /api/v1/plans/{id}/apply PlanApply unary

/hostcraft.v1.PlanService/ListPlans

/hostcraft.v1.PlanService/CreatePlan

/hostcraft.v1.PlanService/GetPlan

/hostcraft.v1.PlanService/UpdatePlan

/hostcraft.v1.PlanService/DeletePlan

/hostcraft.v1.PlanService/ImportExamplePlans

/hostcraft.v1.PlanService/ApplyPlan

Field Type Number Description
id string 1 -
account_ids repeated string 2 -
all bool 3 -
Field Type Number Description
results repeated ApplyPlanResult 1 -
Field Type Number Description
account_id string 1 -
username string 2 -
workflow_id string 3 -
error string 4 -
Field Type Number Description
id string 1 -

No fields.

Field Type Number Description
id string 1 -

No fields.

Field Type Number Description
imported repeated string 1 plan ids created
skipped repeated string 2 plan ids that already existed

No fields.

Field Type Number Description
plans repeated Plan 1 -
Field Type Number Description
id string 1 -
name string 2 -
legacy_php_allowed bool 3 -
limits PlanLimits 4 -
price PlanPrice 5 -
billing_period string 6 -
features repeated string 7 -
display_order int64 8 -
active bool 9 -
account_count int64 10 -
created_at google.protobuf.Timestamp 11 -
updated_at google.protobuf.Timestamp 12 -
Field Type Number Description
disk_quota_bytes int64 1 -
bandwidth_quota_bytes int64 2 -
max_sites int64 3 -
max_mailboxes int64 4 -
max_databases int64 5 -
max_subdomains int64 6 -
max_addon_domains int64 7 -
max_parked_domains int64 8 -
max_subusers int64 9 -
max_cron_jobs int64 10 -
max_ftp_users int64 11 -
cpu_quota_percent int64 12 -
memory_max_bytes int64 13 -
tasks_max int64 14 -

PlanLimitsInput is PlanLimits with presence: unset fields keep the server default (-1 means unlimited).

Field Type Number Description
disk_quota_bytes optional int64 1 -
bandwidth_quota_bytes optional int64 2 -
max_sites optional int64 3 -
max_mailboxes optional int64 4 -
max_databases optional int64 5 -
max_subdomains optional int64 6 -
max_addon_domains optional int64 7 -
max_parked_domains optional int64 8 -
max_subusers optional int64 9 -
max_cron_jobs optional int64 10 -
max_ftp_users optional int64 11 -
cpu_quota_percent optional int64 12 -
memory_max_bytes optional int64 13 -
tasks_max optional int64 14 -
Field Type Number Description
amount_cents int64 1 -
currency string 2 -
ex_gst bool 3 -
Field Type Number Description
plan Plan 1 -
Field Type Number Description
id string 1 path id on update, chosen id on create
name string 2 -
legacy_php_allowed bool 3 -
limits PlanLimitsInput 4 -
price PlanPrice 5 -
billing_period string 6 -
features repeated string 7 -
display_order int64 8 -
active optional bool 9 -