YouTube publishing splits into two post types with very different rules:
Shorts (vertical, ≤3 min) and long-form videos (up to 4 hours).
Comments arrive via Google's PubSubHubbub feed.
Capabilities
| |
|---|
| Publish | ✅ Shorts, long-form video |
| Insights | ✅ views (reach + impressions), likes, comments |
| Fetch comments | ✅ |
| Reply to comments | ✅ |
| Like comments | ➖ |
| Send DM | ➖ |
| Delete post | ➖ |
| Comment automation | ✅ (reply) |
Post types & media limits
Shorts
| Constraint | Value |
|---|
| Files | 1 video (required) |
| Max size | 5 GB |
| Duration | max 3 min (180 s) |
| Aspect ratio | 1:3 to 1:1 (vertical or square) |
| Constraint | Value |
|---|
| Files | 1 video (required) |
| Max size | 5 GB |
| Duration | max 4 hours (14,400 s) |
| Aspect ratio | 1:3 to 3:1 |
Fields
title (required): ≤100 characters. Defaults to the caption, truncated
to 100.
privacyStatus: public (default), unlisted, or private.
madeForKids: COPPA designation — set this correctly; it controls
comment availability and data treatment on YouTube.
Text limits
text (title): 100 characters.
How data arrives
YouTube comments are delivered as an Atom feed via Google's PubSubHubbub
hub to /api/youtube/webhook. The hub GETs the URL to verify intent (we echo
the hub.challenge), then POSTs new comment entries. The handler is idempotent
so hub retries are safe. See Webhooks.
Connect notes
- Connects a YouTube channel via Google.
- Scopes include
youtube.upload and youtube.force-ssl. Some are
sensitive and may trigger Google's app-verification process.
- If the channel hits its API quota, quota-exceeded errors are surfaced
verbatim on the affected actions.
- See Connect a channel.