Solutions

YouTube Upload API for Developers

Upload videos and Shorts to YouTube channels from one REST API or MCP server, with the title, tags, playlist and thumbnail in the same request.

Connect with Google

Users sign in with Google and pick the account; brand channels are chosen in Google's own account chooser. Ampost uploads to that account's channel.

Videos and Shorts

Each post is one video. A vertical video up to 3 minutes becomes a Short on its own, with the same request.

Title, Tags and Playlist

The post text is the description. Set the title, tags, category and a playlist in options.youtube, or let the first line of the text be the title.

Custom Thumbnail

Pass a thumbnail URL with the video and Ampost sets it after the upload, on channels YouTube allows custom thumbnails for.

First Comment

Post a comment under the new video right after it publishes, such as links or chapters.

Same Model as Every Platform

Send the same video to YouTube, TikTok, Instagram and the rest with one request and schedule it for later.

Why this page exists

YouTube uploads without the upload plumbing

Uploading to YouTube means resumable uploads, a Google project with its own quota, processing to wait for, and separate calls for the thumbnail, the playlist and a comment.

Ampost does that once. YouTube becomes one more platform in the same request you already send to TikTok, Instagram or LinkedIn.

Use cases

Video tools and editors

Let users publish a finished video to their channel from your product, next to their other platforms.

Clips and Shorts pipelines

Schedule a steady stream of vertical clips as Shorts, and the same clips to TikTok and Reels.

AI agents

Let an agent upload a video with its title, description and tags through MCP, after the user approves it.

Upload to YouTube in one API call

Connect a channel once, then send videos from your backend, workflow tool or agent.

curl -X POST https://api.ampost.io/api/posts \
  -H "Authorization: Bearer amp_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "targets": [{ "platforms": ["youtube"] }],
    "text": "How we cut our deploy time in half.",
    "media": [{
      "url": "https://cdn.example.com/deploys.mp4",
      "type": "video",
      "thumbnailUrl": "https://cdn.example.com/deploys-thumb.jpg"
    }],
    "options": {
      "youtube": {
        "title": "Deploys in half the time",
        "madeForKids": false,
        "tags": ["devops", "ci"]
      }
    },
    "publishNow": true
  }'

YouTube-specific caveats

What developers should know before integrating

One video per post. YouTube takes no image or text-only posts.

Every video needs madeForKids set to true or false, as YouTube requires. Made-for-kids videos take no comments.

Custom thumbnails need a verified channel. If YouTube refuses the thumbnail or the playlist, the video stays published and the note is in warnings.

Uploads are limited per day by YouTube's API quota. Ampost spreads uploads within it and retries after the daily reset.

Build path

Move from YouTube proof of concept to production

Connect a test channel, upload a short video, and open the link from platformPosts[].publishedUrl once YouTube has processed it.

The post stays processing until YouTube finishes; notes from YouTube that did not fail the upload are in platformPosts[].warnings.

FAQ

Common questions about YouTube API integration

Which channel does the video go to?

The channel of the Google account picked when connecting. For a brand channel, pick it in Google's account chooser. A Google account without a channel cannot be connected.

Can I upload YouTube Shorts?

Yes. Upload a vertical video up to 3 minutes long; YouTube makes it a Short. There is no separate option.

Can I schedule YouTube videos?

Yes. Send a future `scheduledFor`; Ampost stores the video and uploads it at that time.

Ready to publish to YouTube via API?

Start building with Ampost today. Use one integration surface for YouTube and the rest of your social publishing workflow.