Hosted Zones & Leaf Workspaces
Updated 2026-07-08
Hosted zones and Leaf workspaces
Reviewed release: v1.198.1
Hosted zones let a Pro organization register a self-hosted Leaf endpoint as a private data plane for selected Usable workspaces. Usable Cloud remains the control plane for organization membership, billing tier visibility, workspace placement, grants, public discovery, and setup metadata. Leaf serves the private workspace data path: fragment reads/writes, search, collections, symlink operations, and remote MCP traffic for workspaces placed on that zone. Hosted-zone V1 does not support file payload workflows.
Who can use hosted zones
Hosted-zone management is gated in two ways:
- Organization tier: the organization must be on the
protier. - Organization role: only organization
ownerandadminroles can list/manage hosted zones, register a new zone, regenerate a Leaf API key, or place a workspace onto a hosted zone.
Dashboard workflow
- Open the organization dashboard and choose Hosted Zones.
- Review the summary cards: registered zones, workspaces on zones, Leaf storage, heartbeat health.
- Click Register zone.
- Enter the Leaf endpoint URL, for example
https://leaf.example.com. - Submit Provision zone.
- Copy the returned provisioning bundle immediately, especially the one-time Leaf API key. Raw keys are response-only; they are not retrievable after refresh/navigation.
- Configure the Leaf with the bundle values and wait for validation/heartbeat status.
Endpoint validation is strict: the endpoint must be a valid https: URL and cannot target localhost or private-network addresses.
Provisioning bundle fields
A successful registration returns a setup bundle:
{
"hostedZoneId": "00000000-0000-4000-8000-000000000000",
"endpointUrl": "https://leaf.example.com",
"webhookUrl": "https://usable.dev/...",
"oneTimeLeafApiKey": "copy-this-now"
}The real oneTimeLeafApiKey must be copied from the dashboard response and stored in the Leaf environment. Usable will not show the same raw key again.
Zone status model
| Status | Meaning |
|---|---|
registration_requested | Registration accepted, provisioning in progress. |
provisioned | Setup exists, awaiting healthy Leaf heartbeat. |
online | Leaf heartbeat is healthy and the zone is usable. |
degraded | Leaf reachable but with degraded readiness signals. |
config_mismatch | Leaf reported configuration that does not match the registered zone. |
offline | Heartbeat is stale or unavailable. |
provisioning_failed | Initial provisioning failed. |
Creating a workspace on a hosted zone
When the signed-in user belongs to an organization with manageable hosted zones, the workspace creation form adds Workspace Placement:
- Cloud — use the default Usable cloud data plane.
- Hosted Zone — place the workspace on a listed Leaf endpoint.
{
"name": "Private Engineering KB",
"visibility": "private",
"hostedZoneId": "00000000-0000-4000-8000-000000000000"
}REST endpoints
| Method | Path | Purpose |
|---|---|---|
GET | /api/organizations/{orgId}/hosted-zones | List zones and summary counts. |
POST | /api/organizations/{orgId}/hosted-zones | Register a hosted zone. |
POST | /api/organizations/{orgId}/hosted-zones/{zoneId}/regenerate-key | Regenerate the Leaf API key. |
POST | /api/workspaces | Create a workspace with optional hostedZoneId. |
POST | /api/workspaces/{workspaceId}/hosted-zone-token | Get a fresh bearer token for Leaf calls. |
MCP behavior for Leaf workspaces
| Tool family | Route |
|---|---|
| Fragment search/read/write tools, collection tools, symlink tools | Local Leaf data plane. |
| Workspace/discovery/subscription/admin tools | Proxied to Usable Cloud through Leaf MCP forward proxy. |
| File upload/search/attach tools | Unsupported for hosted-zone V1. |
Cloud/Leaf data boundary
- Cloud stores: placement and registry metadata, zone status, audit metadata without content.
- Leaf stores: fragment content, search indexes, local embeddings, encrypted event payloads.
- Leaf workspace event payloads are encrypted with AES-256-GCM before reaching Flowcore.
Troubleshooting
| Code | Meaning | Action |
|---|---|---|
PRO_TIER_REQUIRED | Organization is not on Pro tier. | Upgrade the organization tier. |
ORGANIZATION_ADMIN_REQUIRED | Caller is not an owner/admin. | Use an owner/admin account. |
INVALID_ENDPOINT_URL | Leaf URL is invalid, non-HTTPS, or targets private network. | Use a public HTTPS endpoint. |
HOSTED_ZONE_UNAVAILABLE | Zone is not ready for workspace placement. | Wait for provisioned, online, or degraded status. |
UNSUPPORTED_IN_HOSTED_ZONE_V1 | File tool not supported on Leaf V1. | Use a cloud workspace for file workflows. |