Configuration revisions

Each app has a draft and a published revision. Saving a draft does not change what live publishable clients load. Publishing promotes the draft to the live revision number embeds fetch.

Treat publish as a deliberate release of app settings to production clients.

Draft vs published

  • Draft: safe to edit toggles, empty state, branding, origins, and name.
  • Published: what bsw_*_pub_ clients receive until you publish again.

MCP update_draft never publishes. Use publish_app (or the dashboard / secret API) when you intend clients to move.

Secret API shape

With a server-side secret as Authorization: Bearer against https://chat.bootstrapware.co:

  • PATCH /api/v1/apps/:id: save draft name + config
  • POST /api/v1/apps/:id with { "action": "publish" }: promote draft

Also available: GET /api/v1/apps, GET /api/v1/apps/:id, GET /api/v1/usage. Do not invent extra management routes.

Publish ≠ live entitlement

Publishing stores config. Live bsw_live_pub_ fetch still needs BYO ($9.99) or Hosted ($19.99). Live Hosted message writes need Hosted ($19.99). Test publishable keys work without a paid plan.

Config fields you typically revise: allowDirect, allowGroups, allowAttachments, allowMemberManage, requireAuthorToken, emptyState, allowedOrigins, optional branding. See Configuration.

Related: Configuration · Apps · API overview · Environments · AGENTS.md