Skip to content

Drafts and post approvals ​

A draft is a post you saved without sending. An approval is a human check before a draft goes out. In the dashboard, you save a draft in the composer, optionally submit it for approval, and someone with approval rights publishes or rejects it. For the code equivalent, read Drafts.

How do I save a draft in Socifyr? ​

In the composer, click Save Draft. It keeps your text, media, accounts, per-account options, and schedule. Find it on Content with a Draft badge. Click Edit to continue, or Publish to send it now. Drafts can be deleted, and they can be archived.

The composer button reads Update Draft after the first save.

How do I submit a draft for approval? ​

  1. Open the draft from Content (click it).
  2. Click Submit for approval. You need post.create, so every role can.
  3. A toast says "Submitted for approval". The post status becomes pending_approval.

How do I approve or reject a post? ​

Open the pending post. People with post.approve (Owner, Admin, Editor) see two buttons:

  • Approve & publish: toasts "Approved - publishing now" and sends the post to its accounts.
  • Reject: toasts "Sent back to draft". The post returns to Draft so the author can change it.

There is no comment field on reject, so tell the author in your team chat what to fix. The dashboard has no inbox or filter for pending approvals. Open posts from Content to find them, and note that the list's status filter does not include a pending-approval option.

If a post is not pending approval, approving or rejecting it returns a 409 "Content is not pending approval".

How do API keys send posts to approval? ​

Create or edit an API key and turn on Require approval. Every post created with that key lands in pending_approval instead of publishing, and the API response says "This API key requires approval - the post is pending review before it publishes." A teammate reviews it as above. This is how you let an AI agent draft safely. See API keys and guardrails.

Who can do what? ​

ActionPermissionRoles
Create a post or draft, submit for approvalpost.createOwner, Admin, Editor, Contributor
Publish a draft, Publish Now, Retrypost.publishOwner, Admin, Editor
Approve or rejectpost.approveOwner, Admin, Editor
Archive, unarchivepost.archive, post.unarchiveOwner, Admin, Editor
Deletepost.deleteOwner, Admin, Editor

A Contributor can create posts but cannot publish a saved draft or approve. In practice that makes a Contributor a drafter whose work an Editor reviews.

Which surfaces support approvals? ​

SurfaceSubmit for approvalApprove and reject
DashboardYesYes
RESTPOST /api/content/:id/submit-for-approvalPOST /api/content/:id/approve, POST /api/content/:id/reject
CLI, SDK, MCPNot exposed as a command or toolNot exposed

A key with Require approval can only submit posts for approval. The API refuses it if it tries to approve, reject, or publish a draft directly. Approving is a human action.

Common problems ​

SymptomFix
No Approve buttonYou need post.approve. Editors, Admins, and Owners have it.
409 "Content is not pending approval"Someone already approved or rejected it. Refresh.
Agent posts never publishThe key has Require approval on. Approve them, or turn it off.

Next steps ​