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.

WPToolkit API

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

WPToolkitService manages WordPress installs: discovery, install, updates, staging, hardening, backups and vulnerability findings. REST: /api/v1/wptoolkit.

Method REST route Permission Streaming
ListInstalls GET /api/v1/wptoolkit/installs WPToolkitInstallRead unary
ScanInstalls POST /api/v1/wptoolkit/installs/scan WPToolkitInstallRead unary
InstallWordPress POST /api/v1/wptoolkit/installs/install WPToolkitInstallCreate unary
GetInstall GET /api/v1/wptoolkit/installs/{id} WPToolkitInstallRead unary
DeleteInstall DELETE /api/v1/wptoolkit/installs/{id} WPToolkitInstallDelete unary
UpdateCore POST /api/v1/wptoolkit/installs/{id}/update/core WPToolkitUpdateCore unary
UpdatePlugins POST /api/v1/wptoolkit/installs/{id}/update/plugins WPToolkitUpdatePlugins unary
UpdateThemes POST /api/v1/wptoolkit/installs/{id}/update/themes WPToolkitUpdateThemes unary
UpdateAll POST /api/v1/wptoolkit/installs/{id}/update/all WPToolkitUpdateSmart unary
ResetAdminPassword POST /api/v1/wptoolkit/installs/{id}/admin-password WPToolkitPasswordReset unary
SetDebug POST /api/v1/wptoolkit/installs/{id}/debug WPToolkitDebugToggle unary
SearchReplace POST /api/v1/wptoolkit/installs/{id}/search-replace WPToolkitSearchReplace unary
CloneToStaging POST /api/v1/wptoolkit/installs/{id}/clone WPToolkitStagingCreate unary
SmartUpdate POST /api/v1/wptoolkit/installs/{id}/smart-update WPToolkitUpdateSmart unary
CheckHardening GET /api/v1/wptoolkit/installs/{id}/hardening WPToolkitHardeningRead unary
ApplyHardening POST /api/v1/wptoolkit/installs/{id}/hardening/{item}/apply WPToolkitHardeningApply unary
RevertHardening POST /api/v1/wptoolkit/installs/{id}/hardening/{item}/revert WPToolkitHardeningApply unary
BackupInstall POST /api/v1/wptoolkit/installs/{id}/backup WPToolkitBackup unary
RestoreInstall POST /api/v1/wptoolkit/installs/{id}/restore WPToolkitRestore unary
ListInstallSnapshots GET /api/v1/wptoolkit/installs/{id}/snapshots WPToolkitRestore unary
PromoteStaging POST /api/v1/wptoolkit/staging/{id}/promote WPToolkitStagingPromote unary
DiscardStaging POST /api/v1/wptoolkit/staging/{id}/discard WPToolkitStagingDiscard unary
ScanVulnerabilities POST /api/v1/wptoolkit/installs/{id}/vuln-scan WPToolkitVulnRead unary
ListInstallVulnerabilities GET /api/v1/wptoolkit/installs/{id}/vulnerabilities WPToolkitVulnRead unary
ListVulnerabilities GET /api/v1/wptoolkit/vulnerabilities WPToolkitVulnRead unary
GetVulnerability GET /api/v1/wptoolkit/vulnerabilities/{id} WPToolkitVulnRead unary
AcknowledgeVulnerability POST /api/v1/wptoolkit/vulnerabilities/{id}/acknowledge WPToolkitVulnAcknowledge unary
AutoUpdateVulnerability POST /api/v1/wptoolkit/vulnerabilities/{id}/auto-update WPToolkitVulnAutoUpdate unary

/hostcraft.v1.WPToolkitService/ListInstalls

/hostcraft.v1.WPToolkitService/ScanInstalls

/hostcraft.v1.WPToolkitService/InstallWordPress

/hostcraft.v1.WPToolkitService/GetInstall

/hostcraft.v1.WPToolkitService/DeleteInstall

/hostcraft.v1.WPToolkitService/UpdateCore

UpdatePlugins updates one plugin (slug, optional version) or, with slug empty, every plugin with an update.

/hostcraft.v1.WPToolkitService/UpdatePlugins

/hostcraft.v1.WPToolkitService/UpdateThemes

/hostcraft.v1.WPToolkitService/UpdateAll

/hostcraft.v1.WPToolkitService/ResetAdminPassword

/hostcraft.v1.WPToolkitService/SetDebug

/hostcraft.v1.WPToolkitService/SearchReplace

/hostcraft.v1.WPToolkitService/CloneToStaging

SmartUpdate clones to staging, updates there, checks the site and promotes, reverting automatically on failure when asked.

/hostcraft.v1.WPToolkitService/SmartUpdate

/hostcraft.v1.WPToolkitService/CheckHardening

/hostcraft.v1.WPToolkitService/ApplyHardening

/hostcraft.v1.WPToolkitService/RevertHardening

/hostcraft.v1.WPToolkitService/BackupInstall

/hostcraft.v1.WPToolkitService/RestoreInstall

/hostcraft.v1.WPToolkitService/ListInstallSnapshots

/hostcraft.v1.WPToolkitService/PromoteStaging

/hostcraft.v1.WPToolkitService/DiscardStaging

/hostcraft.v1.WPToolkitService/ScanVulnerabilities

/hostcraft.v1.WPToolkitService/ListInstallVulnerabilities

/hostcraft.v1.WPToolkitService/ListVulnerabilities

/hostcraft.v1.WPToolkitService/GetVulnerability

/hostcraft.v1.WPToolkitService/AcknowledgeVulnerability

/hostcraft.v1.WPToolkitService/AutoUpdateVulnerability

Field Type Number Description
id string 1 -
reason string 2 -
Field Type Number Description
acknowledged bool 1 -
Field Type Number Description
id string 1 -
target_subdomain string 2 -
copy_uploads bool 3 -
copy_plugins bool 4 -
copy_themes bool 5 -
Field Type Number Description
id string 1 -
keep_files bool 2 -
Field Type Number Description
id string 1 -
Field Type Number Description
account_id string 1 -
domain_id string 2 -
locale string 3 -
admin_email string 4 -
admin_username string 5 -
admin_password string 6 -
site_title string 7 -
Field Type Number Description
install_id string 1 -
workflow_id string 2 -
Field Type Number Description
id string 1 -
include_dismissed bool 2 -
Field Type Number Description
severity string 1 -
limit int64 2 -
offset int64 3 -
Field Type Number Description
vulnerabilities repeated VulnFinding 1 -
count int64 2 -
Field Type Number Description
account_id string 1 -
status string 2 -
limit int64 3 -
offset int64 4 -
Field Type Number Description
installs repeated WPInstall 1 -
Field Type Number Description
snapshots repeated WPSnapshot 1 -
Field Type Number Description
id string 1 -
username string 2 -
Field Type Number Description
username string 1 -
new_password string 2 -
Field Type Number Description
account_id string 1 -
Field Type Number Description
discovered int64 1 -
Field Type Number Description
id string 1 -
enabled bool 2 -
Field Type Number Description
enabled bool 1 -
Field Type Number Description
id string 1 -
Field Type Number Description
staging_install_id string 1 -
workflow_id string 2 -
Field Type Number Description
id string 1 -
install_id string 2 -
account_id string 3 -
kind string 4 -
slug string 5 -
current_version string 6 -
cve string 7 -
severity string 8 -
cvss double 9 -
fixed_in_version string 10 -
title string 11 -
description string 12 -
source string 13 -
reference_url string 14 -
first_seen_at google.protobuf.Timestamp 15 -
last_seen_at google.protobuf.Timestamp 16 -
dismissed_at google.protobuf.Timestamp 17 -
dismissed_by string 18 -
dismissed_reason string 19 -
Field Type Number Description
snapshot_id string 1 -
workflow_id string 2 -
Field Type Number Description
results repeated WPHardeningResult 1 -
score int64 2 -
Field Type Number Description
id string 1 -
item string 2 -
Field Type Number Description
result WPHardeningResult 1 -
Field Type Number Description
item string 1 -
severity string 2 -
status string 3 -
recommendation string 4 -
revertible bool 5 -
Field Type Number Description
id string 1 -
account_id string 2 -
site_id string 3 -
domain string 4 -
document_root string 5 -
version string 6 -
locale string 7 -
multisite bool 8 -
https_active bool 9 -
last_scan_at google.protobuf.Timestamp 10 -
last_backup_at google.protobuf.Timestamp 11 -
hardening_score int64 12 -
status string 13 discovered | live | staging | suspended | failed
plugins repeated WPPlugin 14 -
themes repeated WPTheme 15 -
created_at google.protobuf.Timestamp 16 -
Field Type Number Description
id string 1 -
Field Type Number Description
slug string 1 -
name string 2 -
version string 3 -
status string 4 -
has_update bool 5 -
update_version string 6 -
vulnerable bool 7 -
last_update_at google.protobuf.Timestamp 8 -
Field Type Number Description
id string 1 -
snapshot_id string 2 -
Field Type Number Description
id string 1 -
search string 2 -
replace string 3 -
dry_run bool 4 -
Field Type Number Description
replacements int64 1 -
dry_run bool 2 -
Field Type Number Description
id string 1 -
what string 2 core | plugins | themes | all
auto_revert_on_failure bool 3 -
Field Type Number Description
id string 1 -
label string 2 -
kind string 3 manual | pre_promote
size_bytes int64 4 -
file_count int64 5 -
created_at google.protobuf.Timestamp 6 -
Field Type Number Description
slug string 1 -
name string 2 -
version string 3 -
status string 4 -
has_update bool 5 -
update_version string 6 -
Field Type Number Description
id string 1 -
slug string 2 -
version string 3 -
Field Type Number Description
workflow_id string 1 -
findings repeated VulnFinding 2 -
findings_count int64 3 -

WorkflowAccepted is the body of every 202 response that only starts a workflow saga. Follow progress with WorkflowService.StreamWorkflow.

Field Type Number Description
workflow_id string 1 -