Skip to content

Post actions

All return {"post": {…}} (shape).

Action Body Who
POST /posts/{id}/approve {"publishNow"?: true, "scheduledFor"?: "…"} Signed-in person only
POST /posts/{id}/reject {"reason"?: "…"} Key or person (a key may reject its own post)
POST /posts/{id}/cancel none Key or person
POST /posts/{id}/reschedule {"scheduledFor": "…"} Key or person
POST /posts/{id}/first-comment/retry none Key or person

Approves a needs_approval post. If it has a future scheduledFor it is scheduled for then; otherwise it publishes now. If the time has passed you get 409 schedule_passed with details.choices: send publishNow: true or a new scheduledFor. Keys get 403 approval_requires_human, and a key can never approve its own post (self_approval_forbidden).

Stops a waiting post for good. reason is shown to the author. Keys may reject, including their own posts.

Works while needs_approval or scheduled. Cancelling twice is fine. Otherwise 409 not_cancellable.

New ISO 8601 time with offset. Waiting posts change locally; scheduled ones are moved at the provider. Otherwise 409 not_reschedulable.

Only when firstComment.status is failed; it can’t post twice. Otherwise 409 first_comment_not_failed.

Status Code
403 approval_requires_human, self_approval_forbidden, session_required, cross_site_request
404 post_not_found
409 not_awaiting_approval, schedule_passed, not_cancellable, not_reschedulable, first_comment_not_failed, not_retryable

Common questions

Can my bot approve its own posts?
No. Approval needs a signed-in person, and a key can never approve a post it created.
Can a bot cancel a post?
Yes, while it is waiting or scheduled.
What if the scheduled time passed while waiting for approval?
Nothing was posted. Approve with publishNow: true, or send a new scheduledFor.