Update an existing post in your publication. The publication is identified by the API key provided in the Authorization header.
Behavior:
markdown is provided, it replaces the full content. Rich blocks (embeds, buttons, callouts) created in the editor will be lost — the markdown to editor conversion is lossy for blocks without a markdown equivalentstatus to "published" to publish a draft, "draft" to unpublish, or "archived" to archivescheduledAt (Unix timestamp in milliseconds) to schedule a draft’s first-publish for a future time. Must be in the future and at most 30 days out. Only valid for posts that haven’t been published or already scheduled. Pass scheduledAt: null to cancel a previously scheduled publish (or to reschedule: cancel first, then schedule again with the new time). Set sendNewsletter: true alongside scheduledAt to email subscribers when the post publishes.API key for authenticating protected endpoints. Pass as Bearer token in Authorization header.
Unique identifier of the post to update
Body
Post content in Markdown format. Replaces full content — rich blocks created in the editor will be lost
Title of the post
200Optional subtitle or brief summary
300URL-friendly identifier for the post
1 - 256Preview text for the post
500Category tags for the post. Can also be a comma-separated string.
Set to 'published' to publish, 'draft' to unpublish, or 'archived' to archive
draft, published, archived Unix timestamp (milliseconds) to schedule the post's first publish at a future time. Must be in the future and at most 30 days out. Only valid for draft posts that haven't been published or already scheduled. Cannot be combined with status: 'draft' or 'archived'. Pass null to cancel a previously scheduled publish.
x > 0Whether to send an email newsletter to subscribers when the post publishes. Only meaningful when publishing (status: 'published') or scheduling (scheduledAt set). Default: false
Post updated successfully
Whether the update succeeded
true