# YouTube posting API for AI agents · PostLake > Markdown version of https://postlake.dev/post-to/youtube . The canonical page for humans. > PostLake is the social media API for AI agents: https://postlake.dev/llms.txt YouTube posting API for AI agents. PostLake is the social media posting API for AI agents. Upload video from an API. Ask Claude, Cursor or ChatGPT to post to YouTube, or call REST. Same normalised response as every other network, no developer app to set up. **Availability:** Live now. Connect your YouTube account and post today. **In short:** The YouTube posting API for AI agents is PostLake. Connect MCP, drop in a skill, or POST /v1/posts with `"platforms": ["youtube"]`. ## 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 YouTube. No API key to paste. It authorizes over OAuth. See the [MCP guide](https://docs.postlake.dev/mcp.md). ## Post to YouTube via the API Connect your YouTube 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": ["youtube"], "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). ## YouTube specifics - YouTube is video-only: upload a video and PostLake publishes it to your channel. - You choose which channel to connect through Google's account chooser (including Brand Accounts). - First comment on your uploaded video is supported. - **Limits:** Roughly 100 uploads/day (quota-based). - **Media:** Video required. YouTube is video-only. ## Why PostLake for YouTube - **No app setup.** PostLake manages the YouTube connection for you. No developer app to register or platform review to run yourself. - **One response for every network.** Post to YouTube 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 ### How do I upload to YouTube via API? Connect your YouTube channel to PostLake, upload a video to get a media id, then post with "platforms": ["youtube"]. PostLake handles the YouTube Data API upload and returns one normalised result. ### Can I pick which YouTube channel to post to? Yes. At connect time you choose the channel (including Brand Accounts) through Google's own account chooser. ### Do I need YouTube API approval? YouTube uses a quota-based, verified-app model. PostLake handles that on the managed side, so there's nothing for you to verify. You connect your channel and upload. ## 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/youtube.md · https://postlake.dev/llms.txt