The social media scheduling API.Your script exits, the post still goes out.
Breakreach's scheduling API queues posts on 15 networks from one request: a scheduledAt read in your workspace's timezone, useNextSlot to take the next free slot of your posting schedule, or draft to wait for a person. Posts publish from Breakreach's servers, with retries, so nothing has to stay running on your side.
Checked against the API code on October 7, 2026. Breakreach is our product.
Scheduling API endpoints6 endpoints, one API key.
- POST
/v1/postsSchedule with scheduledAt or useNextSlot, publish now, or save a draft - GET
/v1/next-slotThe next free slot of the workspace posting schedule, in its timezone and in UTC - PATCH
/v1/posts/:idReschedule, schedule a draft, retry a failed post or move a post back to drafts - DELETE
/v1/posts/:idUnschedule and remove a post - GET
/v1/postsThe queue: filter with status=scheduled, draft, published or failed - GET
/v1/workspacesWorkspaces with their slug and timezone
Base URL https://api.breakreach.com. Every call sends your key as Authorization: Bearer br_…; errors answer { "error": "…" } with a 4xx or 5xx status. Every parameter is in the OpenAPI spec.
The four ways to time a post
| Field | Type | What it does |
|---|---|---|
scheduledAt | string | 2026-10-08T09:00:00 is 9 AM in the workspace timezone. A Z or an offset (+02:00) is honoured as written. A time in the past publishes at once |
useNextSlot | boolean | The earliest future slot of the posting schedule with no post already scheduled at that exact time, up to 14 days ahead |
publishNow | boolean | Publish at once |
draft | boolean | Save without a time, or place it on the calendar with scheduledAt; it publishes only once someone schedules it |
Which networks it coversChecked against the code, not a feature list.
| Scheduling | Next free slot | Drafts | |
|---|---|---|---|
| Yes, With media | Yes | Yes, Media can come later | |
| Yes | Yes | Yes | |
| Yes | Yes | Yes | |
| Yes | Yes | Yes |
Which timezone does scheduledAt use?The workspace's, unless you say otherwise.
Each workspace has a timezone, returned by GET /v1/workspaces. A scheduledAt without an offset is read in it, so 2026-10-08T09:00:00 in a Europe/Paris workspace goes out at 09:00 in Paris, 07:00 UTC in October. Send an ISO string with Z or an offset when your times come from somewhere else.
Responses always carry scheduledAt in UTC. Daylight saving is handled by the timezone database, so a weekly 9 AM post stays at 9 AM local across the change.
How does the next free slot work?A posting schedule per workspace, like a queue.
Every workspace has a posting schedule: weekdays at 11:00 and 16:00 until someone changes it in Settings, Schedule. useNextSlot takes the earliest slot in the future that no scheduled post already holds, looking up to 14 days ahead. Ten posts sent with useNextSlot fill ten slots in a row.
Call GET /v1/next-slot first when you want to show the time before committing. If the workspace has no schedule or the next 14 days are full, both calls answer 404 with the reason, and you can fall back to an explicit scheduledAt.
Can I schedule posts for approval first?Drafts wait for a person.
"draft": true saves the post in Breakreach without scheduling it. A draft needs no time and no media yet, so a CMS, a release script or an AI agent can propose a post and leave the photo to someone else. With a scheduledAt, the draft sits on the calendar at that time until it's approved.
It goes out once someone schedules it in the app, or when your code calls PATCH /v1/posts/:id with scheduledAt, useNextSlot or publishNow. "draft": true on a scheduled post takes it back out of the queue.
What happens at publish time?
Scheduled posts sit in Breakreach's job queue and publish from our servers, so your script, your laptop or your agent's session can be gone. Temporary failures (rate limits, timeouts, 5xx) are retried up to 3 times, 5, 10 and 15 minutes later, only on the accounts that failed.
Rescheduling replaces the queued job, and any pending retry, so a moved post never goes out twice. The post.published and post.failed webhooks tell your system how it went.
What does the scheduling API cost?
The Developer plan costs $5 a month per connected account up to 20, $3 from 21 to 100 and $2 after that, never per call or per post. The API also comes with every regular plan, from Starter at $29 a month for 5 accounts.
Agents get the same calls.As MCP tools, no code to write.
Agents get the same queue: “schedule these three posts in my next free slots” fills three slots in a row, and the times come back in your timezone.
get_next_slotAnswers “when should I post next?” from the posting schedulecreate_postSchedules at a time, the next free slot, or as a draftupdate_postMoves, approves or retries a postlist_postsReads the queue: what's scheduled this week
What the scheduling API doesn't do yetSo you know before you build.
- Recurring posts: send one request per occurrence
- Editing a published post: create a new one
- Changing the posting schedule through the API: it's set in Settings, Schedule
- A best-time suggestion per account: the slots are the ones you set
The rest of the API (webhooks, workspaces per customer, connect links for your users, the price per connected account) is on the developers page.
Questions, answered.
Short answers about the Scheduling API.
Yes. POST /v1/posts with a scheduledAt schedules a post on any of 15 networks, Instagram, TikTok, LinkedIn and X included. Breakreach holds it and publishes it at the time from its own servers.
There is no limit on scheduledAt. useNextSlot looks up to 14 days ahead for a free slot of the posting schedule.
No. Once the API answers scheduled, the post is in Breakreach's queue and publishes with your script, server or agent gone.
PATCH /v1/posts/:id with a new scheduledAt (or useNextSlot) moves it; draft: true takes it out of the queue; DELETE /v1/posts/:id removes it.
Yes. Create them with draft: true. They wait in Breakreach until someone schedules them in the app, or your code schedules them with PATCH.
The workspace timezone, unless the string carries Z or an offset. Responses return scheduledAt in UTC.
Your first call is five minutes away.From $5 a month per account.
Billed per connected account. Cancel anytime.