Publish board
publish_boardCreate or update a board's public page, optionally changing its expiry, download restriction, or password. Returns the public URL. This is different from share_board — a published board is a standalone public landing page, while share_board returns an invite-style shareable link. Pass template to give the page a designed layout: valid ids are the keys of templates in get_page_elements_catalog (an unknown id is refused with the valid list). A template publish creates the page design that get_page_layout and the page element tools read and edit. Omit template on a board that is NOT live and has no page design yet, and it is published with standard so it is editable straight away (a workspace's own version of that template applies if it has one). A live page, or a board that already has a design, is never given a template implicitly. template_applied in the response names the template this call applied, and is absent when the design was left alone. An explicit template is refused with 409 page_design_exists when the page has stored element edits, rather than overwriting them: republish WITHOUT template to keep that design, and edit it with the page element tools. That refusal does NOT cover a design that is only page settings (background colour, typography set with update_page_settings) — a template publish replaces those. A page still following its template (never edited) switches to the new one. Exposure: this makes the board and its assets publicly accessible on the internet to anyone with the URL.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | Board token, as returned by list_boards, list_board_children or ai_search — the parameter name is `token`, not `board_token` or `collection_token`. | |
| password | No | Password-protect the page; empty string clears it | |
| template | No | Page-design template id: a key of `templates` in get_page_elements_catalog, such as `brand` — not its `display_name`. Omit to keep an existing design, or to get `standard` on a board that is not live and has none. | |
| organization | No | Workspace slug, as returned by list_organizations. Omit it when the account has a single workspace — it is then resolved from your token. Pass it only when the account has several, or when you mean a workspace other than the obvious one. | |
| expiration_date | No | ISO 8601 expiry; empty string clears an existing expiry | |
| disable_downloads | No | Prevent downloads from the published page |