Update Post
Change a post's status. Two actions: - "publish": publishes a draft post (enqueues it for delivery). Only works on posts with status "draft". - "cancelled": can
update_post
Change a post's status. Two actions:
- "publish": publishes a draft post (enqueues it for delivery). Only works on posts with status "draft".
- "cancelled": cancels a scheduled or pending post. Cannot cancel already published posts.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
postId | string | yes | The post ID to update. |
status | publish | cancelled | yes | publish = publish a draft post. cancelled = cancel a scheduled or pending post. |
workspaceId | string | no | Workspace ID. Required if your API key accesses multiple workspaces. |
When to use
Edit a post that hasn't been published yet. Drafts and scheduled posts are mutable; anything already queued for delivery or published is not.
Typical edits:
- Fix a typo in a scheduled post before its fire time
- Promote a draft to a scheduled post
- Reschedule a scheduled post to a new time
- Convert a scheduled post into an immediate publish
Editable fields
content— full replacement of the bodymedia— reattach media itemsscheduledAt— move in or out of the futurestatus— transitions:draft → scheduled,draft → publish,scheduled → publish,scheduled → draft
Platform, accountId, and postType are NOT editable. To change those, delete and recreate.
Example
Reschedule:
{
"workspaceId": "wks_01H...",
"postId": "pst_01H...",
"scheduledAt": "2026-04-20T14:00:00Z"
}Promote draft to publish:
{
"workspaceId": "wks_01H...",
"postId": "pst_01H...",
"status": "publish"
}Gotchas
- Editing a scheduled post cancels the outstanding job and re-enqueues. Idempotency is recomputed; if you want to guarantee no double-publish, also pass a new
idempotencyKey. - Updating
contentdoes NOT re-validate against platform rules until the new status ispublishorscheduled. A draft can contain content the platform would reject — only catches at delivery. - Cannot update a post that's already in
queued,publishing,published, orfailed. Those are terminal from a mutation standpoint.
Get Post Status
Returns the current status of a post including delivery details, thread items, and media. Status values: "pending" (queued), "processing" (being sent), "publish
Delete Post
Cancel and remove a scheduled or pending post. Cannot delete already published posts. Same as update_post with status "cancelled".