# Platform Support · PostLake Docs > Markdown version of https://docs.postlake.dev/platforms . The canonical page for humans. > PostLake is the social media API for AI agents: https://postlake.dev/llms.txt The call is identical everywhere, but each network has its own rules. Here's the current picture. And how to read the live limits programmatically. | Platform | Text | Media | Limit | Status | | --- | --- | --- | --- | --- | | **Bluesky** | ✅ | Image ×4 · Video | 300 | Live | | **Threads** | ✅ | Carousel · Video | 500 | Live | | **X / Twitter** | ✅ | Image ×4 · Video | 280 | Live | | **LinkedIn** | ✅ | Image · Video | 3,000 | Live | | **Facebook** | ✅ | Image multi · Video | — | Live | | **Instagram** | caption | Image · Reels | 2,200 | Live | | **TikTok** | caption | Video | 2,200 | Live | | **YouTube** | title+desc | Video | 5,000 | Live | | **Pinterest** | caption | Image ×5 · Video | 500 | Live | On the free plan, **X and TikTok post only from purchased credit packs**: buy a pack or upgrade. ## Read the live capabilities Don't hard-code limits. `GET /v1/platforms` (all) and `GET /v1/platforms/{platform}` (one) return the authoritative, current capability set for each network. Max characters, media rules, posts/day, async-publish behaviour, and the valid `platformOptions`. Agents use this to validate a post before sending it. ``` { "platform": "bluesky", "displayName": "Bluesky", "maxChars": 300, "asyncPublish": false, "media": { "images": 4, "video": true } } ``` ## Quirks worth knowing - **X** is the only network that charges per post, so it costs more credits (and on the free plan is funded only by purchased credit packs). - **TikTok & YouTube** are video-only; a text/image post to them fails that target. - **Pinterest** needs a `boardId` in `platformOptions`. - **Instagram, TikTok, Facebook, YouTube, Pinterest** require business/creator accounts and each platform's app review before going Live.