Publications
Releasing an asset to a permanent public URL: which version is live, when it is reachable, and from where.
Get a publication
The asset's public life: its permanent URL, which version is live, the availability window, and the distribution rules the edge enforces — including the workspace-wide baseline, which applies whether or not the asset names it.
Requires the module-publication license feature. Without it the request is refused with 403 license_required — see plans and modules.
path Parameters
idHeaders
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
Get a publication › Responses
Success
pub_idpub_filepub_statepub_versionpub_hostnamepub_namepub_sizepub_content_typepub_hashpub_startpub_endpub_copy_statepub_errorpub_denypub_restrictionspub_createdpub_updatedpub_publishedpub_revokedpub_urlpub_stalepub_file_namepub_published_namePublish an asset
Releases the current version to its permanent URL, minting the URL on first publish and reusing it forever after. Publishing again re-copies the bytes only when the file changed; a save that changes rules or dates alone updates the edge policy in place. A copy runs in the background; the publication reports pub_copy_state until it is live.
Requires media:publish, media:edit, document:edit, knowledge-base:write, thread:edit, design:edit, prompt:edit, presentation:edit and task:form:edit together.
Requires the module-publication license feature. Without it the request is refused with 403 license_required — see plans and modules.
path Parameters
idHeaders
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
Publish an asset › Request Body
distributiondenyrestrictionsstartendPublish an asset › Responses
Created
pub_idpub_filepub_statepub_versionpub_hostnamepub_namepub_sizepub_content_typepub_hashpub_startpub_endpub_copy_statepub_errorpub_denypub_restrictionspub_createdpub_updatedpub_publishedpub_revokedpub_urlpub_stalepub_file_namepub_published_nameUnpublish an asset
Deletes the published copy and retires the URL, which then answers 410 rather than 404 so downstream channels can tell a withdrawn asset from one that never existed. The URL is kept, so publishing again revives the same address.
Requires media:publish, media:edit, document:edit, knowledge-base:write, thread:edit, design:edit, prompt:edit, presentation:edit and task:form:edit together.
Requires the module-publication license feature. Without it the request is refused with 403 license_required — see plans and modules.
path Parameters
idHeaders
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
Unpublish an asset › Responses
Success. No content.
List publications
Everything the workspace has released, across every asset. This is the view that answers "what is public right now" as one sortable list.
Requires the module-publication license feature. Without it the request is refused with 403 license_required — see plans and modules.
query Parameters
cursor^[A-Za-z0-9_-]+$limitoffsetpub_filepub_statesearchsort^-?[a-z0-9_]+$Headers
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
List publications › Responses
Success
has_moreWhether more rows exist past this page.
next_cursorPass back as cursor for the next page. Null on the last page.
