Delete a post
Permanently delete a post from your publication. The publication is identified by the API key provided in the Authorization header.
Warning: This action is irreversible. The post and all related data (notifications and drafts) will be permanently deleted.
apiKeyAuthorizationBearer <token>API key for authenticating protected endpoints. Pass as Bearer token in Authorization header.
postId*stringUnique identifier of the post to delete
Body
application/json- body
Post deleted successfully
application/json- response
success*trueWhether the deletion succeeded
truecurl -X DELETE "https://example.com/v1/posts/string" \ -H "Content-Type: application/json" \ -d '{}'{ "success": true}Get post by ID GET
Retrieve detailed information about a specific post
Update a post by ID PUT
Update an existing post in your publication. The publication is identified by the API key provided in the Authorization header. **Behavior:** - Only provided fields are updated; omitted fields remain unchanged - When `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 equivalent - Set `status` to `"published"` to publish a draft, `"draft"` to unpublish, or `"archived"` to archive - When editing an already-live post that should remain live, include `status: "published"` in the update and verify the returned post status before telling the writer it is live - Set `scheduledAt` (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. - Set `imageUrl` to update the post's cover/hero image; the URL is fetched, re-hosted, and a placeholder is generated. Pass `clearImage: true` to remove the existing cover. - Set `imageAlt` to describe the cover image for screen readers. It renders everywhere the cover appears, so set it whenever you set `imageUrl`.