Update post OAuth Scope: posts:write
Update post OAuth Scope: posts:write
This endpoint is available to publications on the Pro and Enterprise plans.
Update an existing post for a specific publication. Only the fields provided in the request body will be updated — all other fields remain unchanged. For a detailed walkthrough of content methods and working with custom HTML, see the Using the Send API and Create Post Endpoint guide.
To update post content, provide either blocks or body_content (not both). If neither is provided, the existing content is preserved. The same content methods and CSS guardrails described in the create endpoint apply here.
Authentication
Bearer authentication of the form Bearer <token>, where token is your auth token.
Path parameters
Request
Controls how provided blocks interact with the post’s existing content. Defaults to replace. Use append_to_template to preserve template header blocks when updating posts that were created from a template.
The structured content blocks for the post. How these interact with existing content depends on content_merge_strategy (default: full replacement). Supports block types such as paragraph, image, heading, button, html, table, list, columns, and more. Cannot be provided together with body_content.
Raw HTML to replace the post’s current content. The HTML is wrapped in an htmlSnippet block internally. Note that <style> and <link> tags are removed during sanitization — use inline styles for all visual styling. Cannot be provided together with blocks.
A display date that overrides the scheduled_at date shown in the email. Does not affect the actual publish date.
Transition the post’s status. Use confirmed to schedule or publish a draft post. Only the draft → confirmed transition is supported — a confirmed post cannot be moved back to draft.
Custom email headers for this post. Merges with newsletter list and publication headers at send time, with this post’s values winning on a key collision. Set a value to null to suppress a header inherited from the newsletter list or publication. System-managed headers (e.g. List-Unsubscribe, X-SMTPAPI) cannot be overridden.
Custom CSS added to this post’s email <head>, replacing any CSS the post already has. Pass an empty string to remove it. Applies to email only, not the web version.
The utm_source appended to links in this post. Falls back to the newsletter list, then the publication, then a generated default.
The utm_medium appended to links in this post. Falls back to the newsletter list, then the publication, then a generated default.
The utm_campaign appended to links in this post. Falls back to the newsletter list, then the publication, then a generated default.