# TikTok posting API for AI agents · PostLake > Markdown version of https://postlake.dev/post-to/tiktok . The canonical page for humans. > PostLake is the social media API for AI agents: https://postlake.dev/llms.txt TikTok posting API for AI agents. PostLake is the social media posting API for AI agents. Publish video from an API or an agent. Ask Claude, Cursor or ChatGPT to post to TikTok, or call REST. Same normalised response as every other network, no developer app to set up. **Availability:** Live now. Connect your TikTok account and post today. **In short:** The TikTok posting API for AI agents is PostLake. Connect MCP, drop in a skill, or POST /v1/posts with `"platforms": ["tiktok"]`. ## The fastest way: ask your agent Connect PostLake's hosted MCP server to your AI assistant (Claude, ChatGPT, Cursor and others), then just ask it to post to TikTok. No API key to paste. It authorizes over OAuth. See the [MCP guide](https://docs.postlake.dev/mcp.md). ## Post to TikTok via the API Connect your TikTok account, then one call publishes to it (and any other accounts under the profile). Upload media first to get a `med_…` id, then include it: ``` curl -X POST https://api.postlake.dev/v1/posts \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "text": "Hello from PostLake 👋", "platforms": ["tiktok"], "profile": "my-brand", "media": ["med_abc"] }' ``` You get back one normalised shape. A post id plus a `targets` list with the live URL. Full detail in [Publishing a post](https://docs.postlake.dev/publishing.md). ## TikTok specifics - TikTok is video-only: every post needs a video asset. - Publishing is asynchronous. PostLake accepts the post, then a status poller resolves it to published or failed, so your code (or agent) knows the real outcome. - Creator-level options (privacy, comments, duet/stitch) are fetched live so you only offer valid choices. - **Limits:** About 15 posts/day. - **Media:** Video required, TikTok is video-only. ## Why PostLake for TikTok - **No app setup.** PostLake manages the TikTok connection for you. No developer app to register or platform review to run yourself. - **One response for every network.** Post to TikTok and other networks in one call and get back a single normalised shape. Your code never branches per platform. - **Agent-safe.** Idempotency keys mean a retrying agent never double-posts, and analytics come back normalised so an agent can decide what to post next. - **Honest pricing.** A free tier to start, then usage-based credits. One per post (X costs more). You only pay for posts that actually publish. ## Common questions ### Is there an API to post videos to TikTok? Yes. TikTok has a content-posting API and PostLake wraps it. Upload a video to PostLake, then post with "platforms": ["tiktok"]; PostLake handles the async publish and reports the final state. ### Can I schedule TikTok posts via API? Yes. Send a scheduledAt time and PostLake fires the post at the right moment, with a webhook the instant it goes live or fails. ### Do I need TikTok app approval? TikTok requires an app audit before public posting. But PostLake runs the managed app, so there's no audit for you to pass yourself. ## Post to other networks - [Post to Bluesky](https://postlake.dev/post-to/bluesky.md) - [Post to LinkedIn](https://postlake.dev/post-to/linkedin.md) - [Post to X (Twitter)](https://postlake.dev/post-to/x-twitter.md) - [Post to Instagram](https://postlake.dev/post-to/instagram.md) [All platform support](https://docs.postlake.dev/platforms.md) · [Posting API hub](https://postlake.dev/post-to/index.md) Plain markdown for agents: https://postlake.dev/post-to/tiktok.md · https://postlake.dev/llms.txt