Core concepts
Media
Some networks can post plain text; others need an image or video. Here's how media attaches to a post, and which networks require it.
How media attaches
Pass a media field on Create a post — a publicly reachable URL to an image or video. Networks fetch the file from that URL when they publish, so it must be openly accessible (no auth, no signed-and-expired links that lapse before publish time). The post’s has_media flag reflects whether a URL was provided.
{
"caption": "New drop is live 🎬",
"platforms": ["instagram", "x", "telegram"],
"media": "https://cdn.yoursite.com/launch.jpg"
}You host the file, for now
Which networks need media
Text-only networks accept a caption alone. Media-first networks can’t publish without a file:
| Requirement | Networks |
|---|---|
| Media required | Instagram, Pinterest, TikTok, YouTube |
| Text works; media optional | X, LinkedIn, Facebook, Threads, Reddit, Bluesky, Discord, Telegram |
Publishing to a media-required network without a media URL won’t deliver on that network, even though a text-only network in the same request will. Plan your platforms list around what you’re sending.
Formats & captions
- Each network adapts the caption to its own limits — X truncates to 280 characters, for instance. The per-network ceilings are listed on each platform guide.
- One
mediaURL attaches per post today — multi-image carousels and native video variants per network aren’t exposed through the API yet.
Match the file to the network