API & MCP reference / REST API

Posts

POST/v1/posts

Create a post. Omit both scheduled_at and use_queue to publish immediately; they are mutually exclusive.

ParameterTypeDescription
social_accountsreqnumber[]Account ids to publish to.
captionstringShared caption. Per-platform overrides win where set.
mediastring[]Media ids from the upload flow.
media_urlsstring[]Public URLs, downloaded server-side.
scheduled_atISO 8601Future timestamp. Timezone priority: explicit > profile > UTC.
use_queuebooleanDrop into the next free queue slot instead of a fixed time.
is_draftbooleanSave without scheduling.
platform_configurationsobjectPer-platform options, keyed by platform id.
account_configurationsobject[]Per-account overrides, keyed by account_id.
Request body
{
  "caption": "shipping day 🚂 #buildinpublic",
  "media_urls": ["https://cdn.example.com/launch.mp4"],
  "social_accounts": [1, 2, 3],
  "scheduled_at": "2026-09-01T14:00:00Z",
  "platform_configurations": {
    "tiktok":    { "draft": true, "video_cover_timestamp_ms": 3000, "is_aigc": true },
    "instagram": { "is_trial_reel": true, "trial_graduation": "SS_PERFORMANCE" },
    "youtube":   { "title": "My Short Title" },
    "pinterest": { "title": "Pin Title", "link": "https://…", "board_ids": ["b1"] }
  },
  "account_configurations": [
    { "account_id": 1, "caption": "a different caption for this one account" }
  ]
}
Response
201 → { "id": "uuid", "status": "scheduled", "scheduled_at": "2026-09-01T14:00:00Z", … }
GET/v1/posts

List posts, newest first.

ParameterTypeDescription
statusstringscheduled · published · failed · draft
platformstringFilter to one platform, e.g. instagram.
limitintegerDefault 50.
offsetintegerDefault 0.
GET/v1/posts/{post_id}

Full post detail, including per-platform configuration.

PATCH/v1/posts/{post_id}

Update a scheduled or draft post. Only the fields you send change. Published posts are immutable.

DELETE/v1/posts/{post_id}

Delete a scheduled or draft post. Published posts cannot be deleted.