FlowRunner
PricingContact
Theme
Start Free

Blotato

Social Media

Connect AI agents to Blotato, an AI social content creation and cross-posting tool. Agents host media from a URL, publish a post to one connected account per call, and read billing and account status before a campaign runs.

7 actions API key available
Blotato website ↗ Platform Documentation ↗ Capability data verified 2026-08-06
A scheduled run picks up an approved campaign asset from the content store
Upload Media hosts the image or video on Blotato and returns a Blotato-hosted URL
List Connected Accounts confirms every target account is still connected
Get Credit Balance confirms the workspace can fund the whole fan out
Publish Post runs once per account, carrying that platform's Target Options
Get Post Status resolves each submission id and reports the live URLs back
The YouTube publish waits, because Notify Subscribers cannot be taken back

What This Integration Enables

Blotato is built for teams whose bottleneck is not writing the post. It is getting one approved asset hosted somewhere every platform will accept, then reshaped nine different ways for nine different sets of rules. That is exactly the shape of work a connector should absorb. Upload Media takes a public image or video URL and returns a Blotato-hosted URL, because most platforms refuse third-party media links outright. Publish Post then sends to a single connected account at a time, carrying the Target Options that account's platform demands, so a Facebook send resolves a page, a Pinterest send resolves a board, and a YouTube send carries a title and privacy status. Cross-posting is a loop the flow runs, not a single fan-out call, and that distinction matters: it means each destination is a separate decision point an agent can guard, retry, or stop at.

Blotato publishes no event subscription, so this connector ships no triggers. Nothing here listens. A flow starts from a schedule, from an approved record in another system, or from a person, and List Posts plus Get Post Status are how it learns what happened after a submission was accepted. Get Post Status is the one that matters most, because Publish Post returns a submission id rather than a published URL, so a flow that treats acceptance as publication will report success on posts that later failed. Get Credit Balance and Get Current User answer the questions a campaign should ask before it starts rather than halfway through. Agents can run the entire loop unattended. The reason to put a human-in-the-loop gate in it is that one of these destinations sends a notification nobody can recall.

Without FlowRunner

Media refused at send time A third-party image URL passes the composer and gets rejected by the platform on publish
Per-platform options learned by failing Facebook wants a page, Pinterest a board, YouTube a privacy status, and each requirement surfaces as an error
Balance discovered mid-campaign A run drains the credit pool partway through and leaves some accounts posted and some not

With FlowRunner

Media hosted before anything is queued Upload Media returns a hosted URL that the target platforms will accept
Options resolved per target Target Options are set for each account before the first Publish Post call runs
Balance checked at the front Get Credit Balance runs before the fan out, so a partial campaign becomes a decision rather than a surprise

Use Case Scenarios

One approved asset, nine platform shapes

A campaign asset clears review in the content store. A scheduled flow picks it up, calls Upload Media with the asset URL, and holds the returned Blotato-hosted URL. List Connected Accounts confirms the six target accounts are still authorized, which is the failure that usually goes unnoticed until a send bounces. Get Credit Balance confirms the workspace can fund the whole run. The agent then calls Publish Post once per account, applying the Target Options each platform requires, and collects the submission ids. A follow-up pass calls Get Post Status on each id and writes the resulting public URLs into a row in Google Sheets, so the campaign record holds live links rather than an assumption that everything went out.

Turning a long-form piece into a thread and a carousel

A new article publishes on WordPress. An agent drafts a thread from the article's section headings and a carousel from its figures. Upload Media hosts each figure. Publish Post carries the first post in the Text field and the remainder in Additional Posts, which is how Blotato builds threads on X, Threads, and Bluesky and carousels elsewhere. The same asset set goes to LinkedIn as a single post with a different Target Options block. The article's editor never opens a social composer, and the thread structure comes from the piece itself rather than from someone retyping it at the end of the day.

A campaign that stops itself when the pool runs low

An always-on flow publishes evergreen content on a schedule. Before each batch it calls Get Credit Balance and compares the remaining pool against the number of Publish Post calls the batch will make. If the pool cannot cover the batch, the agent does not publish a partial run and quietly move on. It posts the shortfall to the marketing channel in Slack with the balance, the batch size, and the accounts that would be skipped, and waits. Partial campaigns are a specific kind of automation exception: the system did not fail, it succeeded unevenly, and only a person can say whether uneven is acceptable this week.

Human-in-Loop Highlight

Most of what Blotato publishes is recoverable. A bad post on X can be deleted; a wrong caption on Instagram can be edited or pulled. YouTube is different, and the connector makes the difference explicit: Publish Post requires shouldNotifySubscribers for YouTube targets, and that notification goes out the moment the video publishes. Setting the video private afterwards does not un-send it. So the agent runs the whole fan out unattended, and when the target is a YouTube account it stops before that one call and sends the responsible owner a message in Slack: "Ready to publish 'Q3 platform walkthrough' to the brand YouTube channel with Notify Subscribers on. This alerts the full subscriber list and cannot be recalled. Publish now, publish silently, or hold?" Every other destination in the batch has already gone out. The one with an unrecallable notification is the one that waits.

Agent processes routinely
Detects exception requiring judgment
Clear match Continues automatically
Ambiguous Routes to human via Slack
Human decides
Agent resumes with decision

Agent Capabilities

7 actions

Media

1
  • Upload Media Hosts an external image or video on Blotato's storage by passing its public URL, and returns a Blotato-hosted URL. Use the returned URL in the Media URLs field of Publish Post, because most platforms require media served from Blotato rather than a third-party link. This is the step that quietly prevents most publish failures.

Publishing

3
  • Publish Post Publishes or schedules a post to one connected social account (X/Twitter, LinkedIn, Facebook, Instagram, Pinterest, TikTok, Threads, Bluesky, YouTube, or a webhook). Media must already be hosted via Upload Media. Additional Posts builds threads and carousels, Target Options carries the per-platform requirements, and omitting both Scheduled Time and Use Next Free Slot publishes immediately. Cross-posting means calling this once per account.
  • Get Post Status Retrieves the current status of a previously submitted post by its submission id, returning in-progress, published with the public URL, or failed with the error message. Publish Post returns a submission, not a publication, so this is the action that tells a flow what actually happened.
  • List Posts Lists scheduled, published, and failed posts ordered by post time descending, with cursor-based pagination. Use it for reconciliation runs that check whether the calendar the team believes exists matches the one Blotato holds.

Accounts

2
  • List Connected Accounts Lists the connected social accounts, optionally filtered by platform. Run it before a campaign so a revoked or expired account connection surfaces as a check rather than as a failed send.
  • Get Current User Retrieves the user information for the owner of the API key. Used to confirm which workspace a flow is operating against before it publishes anything.

Billing

1
  • Get Credit Balance Retrieves the remaining credit balance and current pricing for the workspace. Publishing and media operations consume credits, so this is the guard that decides whether a batch runs whole or does not run at all.

Frequently Asked Questions

What can FlowRunner do with Blotato?

FlowRunner agents can run Upload Media, Publish Post, and Get Post Status in Blotato, plus 4 more actions.

Does connecting Blotato to FlowRunner require OAuth?

No. Blotato connects to FlowRunner with an API key, no OAuth flow required.

Can Blotato trigger a FlowRunner workflow automatically?

Blotato doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.

Start building with Blotato

$100 in credits. No card required. Connect in minutes.