Skip to main content
These endpoints make a social post the way the dashboard’s Create Post → Generate Automatically does. You send what the business is and the network the post is for; the post producer does the rest, with no one in the loop:
  1. Research: the business (its website and what you send), its competitors on that network, and the headlines and trends its audience is talking about.
  2. Ideas: five post ideas built on the research, and it picks the strongest.
  3. Writing: the tuned writer writes five drafts for the idea and keeps the best. It learns from the posts that did best and worst for accounts like yours on that network, each measured against its own account’s usual post, and follows that network’s craft.
  4. The picture, for an image post: one of your own source_image_urls, or one drawn by AI to go with the words.
That is the difference from a slideshow made with POST /v1/videos, which is written plainly from your sources.

Pricing

What a post costs depends on the plan: A charged post costs what goes into it plus 20%: the writing, its picture, and for a post written for Instagram, reading Instagram for the writer. It is charged once, when the post is made, from your included video credits first, then your prepaid balance, and shows up as ai_video in GET /v1/billing/events, labelled “via API”. Typical prices: An Instagram post costs more because its writer reads Instagram live: about 130 posts and profiles of accounts like yours (41¢ of the 59¢). That read is charged once per post, only if it succeeds. price_cents on the post is that estimate until the post is made, then what it was charged. Posting is free.

Written for

written_for picks the network the post is written for: x, linkedin or instagram. Each rewards a different post, so the research studies competitors on that network only, and the writer follows its craft: On X and LinkedIn, the writer’s five drafts are scored by our post models and the best one is kept. On Instagram there is no post model to score them, so the first draft that passes the writer’s checks is kept. Instagram takes no text-only post: format: text with written_for: instagram is refused with 400. Omit written_for to write one post for X and LinkedIn at once.

Start a post

It runs in the background, so this answers 201 straight away:
Open dashboard_url to watch the producer work: its research, its five ideas, and the post.

Wait for it

Poll GET /v1/optimized-posts/{id} every 15 to 30 seconds. A post usually takes a few minutes, most of it research.

Post it

The finished post is a video record (template slideshow), so it posts like a video: pass its video_id to POST /v1/videos/{id}/posts with the accounts from GET /v1/social-connections, now or at scheduled_for. GET /v1/videos/{video_id} has every detail of it. You can also predict how it will do first with Predictions.

Errors