ProductPublishing
Approved posts publish on schedule,and each network confirms delivery.
Pick a time and Shots publishes the post once. Each post is checked again when it is due and retried safely if a network pushes back. It counts as published only when the network confirms it. Social channels are in early access.
- post_8f2aSCHEDULED → PROCESSING → PUBLISHED
- post_91c4retry 429 → PUBLISHED, once
- post_a07eUNKNOWN_DELIVERY → held for a teammate
Lifecycle
A scheduled post is always in one of seven states,and you can see which one.
Each state has a clear owner. Published means the network confirmed it. Anything uncertain goes to a teammate.
- DRAFT
- scheduleSCHEDULED
- timer fires · one workerPROCESSINGA 429 or 500 goes back to SCHEDULED to retry.
- confirmationPUBLISHEDStored with the provider post ID.
- from SCHEDULED or PROCESSINGCANCELLEDCancelled by a publisher, or no longer eligible at send time. No request sent.
- from PROCESSINGFAILEDA definite failure, such as an expired credential. Nothing was published.
- from PROCESSINGUNKNOWN_DELIVERYOutcome uncertain. Held for a person, never sent again.
| State | Meaning |
|---|---|
| DRAFT | Not scheduled yet. |
| SCHEDULED | Waiting for its time. One workflow holds the timer and the cancel signal. |
| PROCESSING | Claimed by exactly one worker, which checks eligibility again before sending. |
| PUBLISHED | The network confirmed it. The confirmation is saved with the network's post ID. |
| FAILED | A definite failure, such as an expired credential. Nothing was published. |
| CANCELLED | Cancelled by a publisher, or no longer eligible at send time. No network call. |
| UNKNOWN_DELIVERY | The outcome is uncertain. A teammate decides whether to send it again. |
Guarantees
A post goes out onceor not at all.
A duplicate post looks worse than a late one. Every rule below exists to prevent duplicates.
post_<id> · one workflowSurvives restarts
Each scheduled post has its own workflow that holds its timer, cancel signal, and retries. A deploy or a crash doesn't lose it.schedule × 2 → 1 postNo double posts
Scheduling the same post twice still sends it once. The hourly recovery check reuses the same workflow IDs, so it can't start a second one.429 · 500 → retry → 1Safe retries
Rate limits and server errors are retried into exactly one remote post.approval · asset · workspace · destinationChecked at send time
When a post is due, Shots reloads its approval, visual, workspace status, and destination. Private media gets a signed link only then, retries included.CANCELLED · no requestCancel means cancel
A cancelled post makes no network request. Archiving a visual after approval cancels its post.state + audit + eventNothing lost in between
Each state change is saved together with its audit entry and a queued event. Queued events are sent every minute, and any that fail can be replayed.
Channels
X, LinkedIn, Instagram, and email today,with more destinations planned.
Shots handles scheduling, state, retries, and recovery. Each network only receives the final call.
- Early access
X
Scheduled posts with one image. Connection is set up with you.
- Early access
LinkedIn
Scheduled posts with one image. Connection is set up with you.
- Early access
Instagram
Through Instagram Login, or Facebook Login with Page selection.
- Early access
Release email
Release emails to subscribers who opted in, delivered through Resend.
- Planned
Buffer and Post Bridge
More scheduling destinations behind the same delivery guarantees.
- Planned
Post analytics
Performance snapshots at the same post age, feeding the next launch.
Connecting a social channel requires two-factor authentication. During early access, we connect each workspace to its publishing account with you.
Release email
Release email has consent rules built inand the same delivery guarantees as posts.
Release email is built for bulk sending to subscribers who opted in.
01
Consent first, then delivery
- Only approved releases can be emailed
- An empty audience is refused
- One-click unsubscribe for Gmail and Yahoo, plus a footer link
- Bounces and complaints are suppressed separately from unsubscribes
- Each address gets the email exactly once, enforced by the database
- Sends go out in paced batches of 100
Questions
Anything else? Talk to us.
Which networks can I publish to?
Can it post threads or carousels?
Can I cancel a scheduled post?
What happens if a network is down?
Is email marketing included?
Related