DELETE
/v1/posts/{postId}

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.

Authorization

apiKey
headerAuthorizationBearer <token>

API key for authenticating protected endpoints. Pass as Bearer token in Authorization header.

Path Parameters

postId*string

Unique identifier of the post to delete

Request Body

Body

application/json
  1. body

Response Body

Post deleted successfully

application/json
  1. response
success*true

Whether the deletion succeeded

Value intrue
curl -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`.