Home / Docs / YouTube
Provider
YouTube

YouTube

Upload videos and Shorts to a YouTube channel through the YouTube Data API v3. Postli supports title, description, tags, category, privacy, made-for-kids declaration, and scheduled publish.

Requirements

Spec

Account type
Personal or Brand YouTube channel
Auth
Google OAuth 2.0
Token type
1-hour access token + refresh token (Postli refreshes automatically)
Post types
Video upload, Short (vertical ≤60 s)
Title
Up to 100 characters
Description
Up to 5,000 characters
Tags
Up to 500 characters total
Video
MP4, MOV, AVI, WMV, WebM, FLV, 3GP · ≤256 GB or 12 hours
Privacy
Public, Unlisted, Private (with optional scheduled publish-time)
Auto-comments
Limited — comments require youtube.force-ssl + content-owner approval

Create your Google Cloud project

YouTube uploads go through a Google Cloud project you own — this also gives you your own 10,000-unit / day quota instead of sharing Postli’s pool.

  1. Go to Google Cloud Console → Credentials and create a new project. Name it something like postli-youtube.
  2. Open APIs & Services → Library and enable:
    • YouTube Data API v3
    • YouTube Analytics API
    • YouTube Reporting API
  3. Go to OAuth consent screen. Choose External user type. Fill the app name, support email, and developer contact. Add yourself as a test user.
  4. Add these scopes to the consent screen: youtube.upload, youtube.readonly, youtube, userinfo.email.
  5. Back in Credentials, click Create credentials → OAuth client ID. Pick Web application. Add the Authorised redirect URI:
    https://app.usepostli.com/api/integration/youtube/callback
  6. Copy the generated Client ID and Client Secret.
  7. In Postli, open Settings → Integrations → YouTube, paste both values, and save.
Brand accounts & propagation. If you publish to a Brand channel, set the consent screen to External, register the channel owner as a test user, and allow about 5 hours after publishing the OAuth client before the first connect attempt — Google’s edge caches the old config briefly.

OAuth setup

Once credentials are saved, go to Integrations → YouTube → Connect. Postli launches Google’s OAuth screen. Choose the Google account, then pick the channel (if your account has multiple Brand channels).

Scopes Postli requests:

https://www.googleapis.com/auth/youtube.upload # upload videos https://www.googleapis.com/auth/youtube.readonly # channel info, stats https://www.googleapis.com/auth/youtube # manage own videos https://www.googleapis.com/auth/userinfo.email # identify connected user

Post types in detail

Video

Standard upload — title, description, tags, category, thumbnail. Postli uploads via Google’s resumable upload protocol so even multi-GB files survive flaky connections.

Short

A YouTube Short is just a video that meets the format rules: vertical 9:16, 60 seconds or shorter, with #Shorts in title or description. Postli auto-appends the hashtag if you tick the “Publish as Short” toggle on the YouTube channel tab.

Scheduling

Two layers of scheduling:

Auto-comments

YouTube’s comment-write endpoint requires the https://www.googleapis.com/auth/youtube.force-ssl scope and is gated by Google’s API access review for content-owner accounts. Postli does not currently request this scope; auto-comments are therefore disabled for YouTube. Engagement reads (views, likes, comments count) work normally.

Rate limits & quota

YouTube Data API v3 uses a 10,000 quota-units / day per project system, and uploading a single video costs ~1,600 units. In practice, this caps a single Google API project at roughly 6 uploads per day per account. Postli’s production project quota is significantly higher; queued uploads back off if the per-channel daily upload cap is hit.

Daily upload cap. YouTube also enforces a per-channel cap (usually 100 videos / day for verified channels). Postli respects this and defers excess uploads.

Gotchas & best practices

Webhooks

Postli does not subscribe to YouTube webhooks (Push Notifications). Engagement is polled.