Skip to content
Proud to collaborate with Microsoft for Startups

apphost.addon.prepare ​

Resolve a hosted site, force the Machine always-on, and build chart-shaped Nostr Buzz manifests (WebSocket relay + Redis + MinIO; Postgres is AppData) pinned to pool apphost. Not native Chat Relay and not DPWAI Chat Relay REST/SSE.

Build the pinned Buzz addon manifests for an AppHost site.

Overview ​

PropertyValue
Workflow typeAtomic
LibraryApp-apphost
Version1.0

Input Schema ​

FieldTypeRequiredDefaultDescription
site_uuiduuidYes—Claimed AppHost site to apply the addon on
addonstringYes—Addon name. v1 ships buzz only
skustringNosmallShared size class for the relay (small
custom_hostnamestringNo—Optional customer subdomain to put on the addon Ingress (CNAME to the platform host)
owner_public_keystringNo—Bound owner public key; turns membership on when present
owner_key_kindstringNo—identity key kind of the owner: service = Buzz space (platform-held)
secrets_key_refstringNo—Per-site secrets key uuid; stamped on Redis/MinIO/relay so a rotation rolls them
rollout_tokenstringNo—Apply run id; stamped on the relay so each apply's AppData password is picked up

Output Schema ​

FieldTypeRequiredDefaultDescription
site_uuiduuidYes——
organization_uuiduuidNo——
machine_uuiduuidNo——
slugstringYes——
hoststringYes——
hostsjsonNo——
urlstringYes——
namespacestringYes——
addonstringYes——
skustringYes——
connection_uuiduuidYes——
field_managerstringYes——
manifestsjsonYes——
restore_ingressjsonNo——
custom_hostnamestringNo—Optional customer subdomain on the addon Ingress
failure_reasonstringNo——
failure_typestringNo——
failed_actionstringNo——
failed_at_statestringNo——
failed_stepstringNo——
failed_layerstringNo——
errorstringNo——
error_typestringNo——

States ​

StateInitialTerminalSuccessAuto-advanceDescription
pendingYesNo—executeWill resolve the site and build addon manifests
completedNoYesYes—Manifests ready
failedNoYesNo—Prepare rejected

State Diagram ​

Transitions ​

FromActionToDescription
pendingexecutecompleted—
* (any state)failfailed—

Outcomes ​

OutcomeTypeDescriptionState Data Keys
preparedSUCCESSAddon manifests ready for k8s.manifest.syncurl, namespace, addon
failedFAILUREApphost workflow failedfailure_reason

API Usage ​

bash
POST /api/workflows/start
Content-Type: application/json

{
  "workflow_type": "apphost.addon.prepare",
  "initial_data": {
    "site_uuid": "value",
    "addon": "value"
  }
}