All connectors
Implemented
Content creation & media
YouTube logo

YouTube

YouTube channels, playlists, videos, comments, captions and Analytics reports, plus video and playlist metadata updates kept private or unlisted. No uploads or deletes.

Report on channel and video performance, keep video titles, descriptions and playlists in step with a CMS or campaign plan, and route comments into support and community flows.

Source actions

14

Destination actions

4

Data types

10

Validation status

Implemented · fixture tested.

Implementation is checked against provider-shaped fixtures for every action, authentication failures, rate limits, pagination and duplicate safety. Provider sandbox and authorised account validation are recorded separately when credential-backed runs are completed.

What you can map

analytics groups
  • List Analytics groups
    Source

    YouTube Analytics groups (custom collections of videos or playlists) owned by the channel.

    analytics_groups.list
analytics reports
  • Run Analytics report
    Source
    Incremental

    YouTube Analytics query (reports.query) for the authorised channel: metrics by dimensions over a date range, one row per record.

    analytics_reports.list
captions
  • List caption tracks
    Source

    Caption tracks on a video: language, name, kind and status. Track files are not downloaded.

    captions.list
channels
  • Get channel
    Source

    One public channel by ID, with statistics.

    channels.get
  • List my channels
    Source

    Channels owned by the authorised account, with statistics and the uploads playlist.

    channels.list
comment replies
  • List comment replies
    Source

    Replies to one top-level comment.

    comment_replies.list
comment threads
  • List comment threads
    Source

    Top-level comments (with reply counts) on one video, or on every video of a channel.

    comment_threads.list
playlist items
  • Add video to playlist
    Destination
    Not retried automatically
    Approval before production

    Adds a video to a playlist, optionally at a position.

    playlist_items.create
  • List playlist items
    Source

    Videos in a playlist, in playlist order. Use a channel's uploadsPlaylistId to list every upload.

    playlist_items.list
playlists
  • Create playlist
    Destination
    Not retried automatically
    Approval before production

    Creates a private (default) or unlisted playlist on the authorised channel.

    playlists.create
  • Get playlist
    Source

    One playlist by ID.

    playlists.get
  • List playlists
    Source

    Playlists of the authorised channel, or of another channel by ID.

    playlists.list
  • Update playlist details
    Destination
    Provider duplicate protection
    Approval before production

    Updates a playlist's title and description (snippet only). Privacy is never changed.

    playlists.update
video categories
  • List video categories
    Source

    Assignable video categories for a region, for use in videos.update.

    video_categories.list
videos
  • Get video
    Source

    One video with details, status and statistics.

    videos.get
  • List videos by ID
    Source

    Up to 50 videos by ID with details, status and statistics.

    videos.list
  • Search my videos
    Source

    Searches the authorised channel's own videos (search.list with forMine). Expensive in quota: prefer playlist_items.list on the uploads playlist for full syncs.

    videos.search
  • Update video details
    Destination
    Provider duplicate protection
    Approval before production

    Updates a video's title, description, tags, category and default language (snippet only). Privacy and publishing settings are never changed.

    videos.update

Authentication

Google OAuth client and refresh token

Plans and access

Any Google account with a YouTube channel. You need your own Google Cloud project with the YouTube Data API v3 (and YouTube Analytics API for reports) enabled and an OAuth client. Each project has a daily quota (10,000 units by default). Apps that are not verified by Google are limited to test users, and refresh tokens for apps in Testing status expire after 7 days.

Test environment

YouTube has no sandbox. Use a test channel (a Brand Account) and keep created playlists private.

Rate limits

YouTube enforces a daily quota per Google Cloud project (default 10,000 units, reset at midnight Pacific time) plus per-minute limits. Lists cost 1 unit, captions.list 50, writes 50; search.list is the expensive call (see videos.search). Quota errors are HTTP 403 with reason quotaExceeded or rateLimitExceeded and are classified as rate limits.

Pagination

Data API lists use pageToken and nextPageToken (maxResults up to 50, comments up to 100). Analytics reports use startIndex (1-based) and maxResults.

Provider events

YouTube offers PubSubHubbub push notifications for new channel uploads; Nexra does not subscribe to them. Nexra event triggers are not yet available; flows run on demand or on a schedule.

Before you build a flow

  • Uploads are not offered: videos.insert needs a binary (resumable) upload, which Nexra recipes do not perform. Caption and thumbnail uploads are excluded for the same reason.
  • Never deletes videos, playlists, playlist items, comments or captions, and never sets anything to public. Video updates change the snippet only (title, description, tags, category, language) and leave privacy untouched; playlists are created private or unlisted.
  • YouTube replaces the whole snippet on update: a description, tag list or default language you do not send is removed. Read the video or playlist first and send every snippet field you want to keep.
  • Comment, reply, rating, moderation, subscription, live-streaming, membership and channel-branding writes are not offered.
  • Caption tracks can be listed but not downloaded: captions.download returns a file and only works for videos the caller owns, and it is excluded as a binary download.
  • There is no updatedSince filter. videos.search accepts publishedAfter for new uploads; playlists and comment threads are full reads.
  • Content-owner (CMS partner) parameters such as onBehalfOfContentOwner are not offered.
  • Quota costs follow Google's quota table as updated 2026-09-15: search.list and videos.insert now have their own bucket of 100 calls per day; earlier documentation listed search.list at 100 units per call. Both readings are noted on videos.search.

Developer reference

  1. Create the Google credentials described above with the narrowest permissions your flows need.
  2. In Nexra, open Connect, then Connections, then New connection, choose YouTube, enter its settings and credentials, and tick only the write actions you need. Connection guide
  3. Test the connection, then use its actions as flow sources and destinations. Flow guide

Machine-readable detail: GET /api/public/connect/connectors/youtube and the Connections API.