Overview

Schedule and automate YouTube video uploads with visibility settings, comments, likes, and analytics.

Upload and schedule videos to YouTube channels, then moderate comments, like videos, and read analytics through the same connection. There is no text or image post type on YouTube, so publishing always means uploading one video.

Quick Reference

PropertyValue
Title limit100 characters
Description limit5,000 characters
Videos per post1
Video formatsMP4, MOV, AVI, WMV, FLV, 3GP, WebM
Onepostly upload cap256 MB
YouTube native max size256 GB
ShortsVertical 9:16, 3 minutes or shorter, auto-detected
Post typesVideo, Shorts
SchedulingYes, with IANA timezone
Editing published videosNo. Delete and re-upload instead
CommentsYes (list, create, delete)
LikesYes
AnalyticsYes (views, likes, comments, shares)
Daily upload quota~6 uploads per day on default Google quota

Before You Start

YouTube is video-only. Every post requires exactly one video file. Publishing anything else fails with UNSUPPORTED_MEDIA_KIND.

Additional requirements:

  • Onepostly caps publish uploads at 256 MB. YouTube itself allows up to 256 GB, so very large videos must be trimmed or compressed first
  • Google's default quota allows roughly 6 uploads per day. Bursting past it fails until the next day
  • Shorts are auto-detected from duration and aspect ratio. There is no separate post type or flag
  • A suspended channel fails every upload with a 403 error. Check the channel status on YouTube before scheduling batches
  • Unverified channels are limited to 15-minute videos. Verify the channel with a phone number to unlock longer uploads

Connect

Open Dashboard → Connections and connect YouTube.
Complete the Google consent screen with the account that owns the channel. The Google account must already have a YouTube channel.
Grab the account id from the connections list:
const { connections: list } = await connections.listConnections();
const yt = list.find((c) => c.platform === "youtube");
// yt.id is your accountId

If an action fails with PERMISSION_DENIED, the connection is missing the scope. Reconnect YouTube once to grant it.

OAuth Scopes

ScopeWhat it enables
youtube.uploadUpload and manage your videos
youtube.force-sslRead and manage comments, likes, and video details
yt-analytics.readonlyRead YouTube Analytics metrics for your videos

Token Lifetime

TokenLifetimeBehavior
Access token~1 hourRefreshed automatically by Onepostly
Refresh tokenLong-livedAfter revocation in Google account settings, reconnect the account

Capabilities

ActionSupportedNotes
Video uploadYesExactly one URL per destination
ShortsYesVertical 9:16, 3 minutes or shorter, auto-detected
VisibilityYespublic / unlisted / private per destination
ScheduleYesCancel any time before it publishes
Remote deleteYesRemoves the video from the channel
CommentsYesList, create, delete
Like / unlikeYesOn any video, as the connected account
MetadataYestitle, description, tags, categoryId (default "22"), madeForKids (default false), containsSyntheticMedia
AnalyticsYesViews, likes, comments, shares
Text / image / stories / threads / quotesNoNot YouTube concepts

What You Can't Do

These features are not available through Onepostly's YouTube integration:

  • Text-only, image, or multi-image posts
  • Threads, quotes, or reply chains
  • Custom thumbnails (YouTube exposes three auto-generated options only through Studio)
  • Playlists or end screens
  • Community posts, Premieres, or live streams
  • Captions or subtitles
  • Editing a published video's title or description. Delete and re-upload instead

See Also