Skip to main content

juicer.io/youtube/api

YouTube channel videos, as JSON.

One key returns a channel's videos, hashtag results and channel profiles as the same normalized JSON as 14 other networks, view counts included. No Google Cloud project, no API key rotation, no daily quota to ration.

curl "https://api.juicer.io/v1/data/posts?platforms=YouTube&term=yourchannel" -H "Authorization: Bearer $JUICER_API_KEY"

AI agents ready

Copy this prompt into the agent of your choice and get going right away.

I want to pull YouTube channel data through the Juicer API. Work from the official docs, not from memory.

1. Read https://developers.juicer.io first (or connect its docs MCP server, https://developers.juicer.io/mcp, no auth needed). The Quickstart and Authentication pages explain how to get going without a human signing up: POST /v1/authorize with an email returns a temporary API key, and a free Sandbox plan is available for a permanent one.
2. Then use the Juicer MCP server at https://api.juicer.io/mcp if you can, or the REST API at https://api.juicer.io/v1 with the key as a bearer token.
3. For YouTube: look up a channel's videos with platforms=YouTube and its @handle (term_type=username) or its custom URL slug (term_type=channel), search a hashtag with term_type=hashtag, and resolve a channel's profile with the profiles lookup. Follow the docs for term types and cursor pagination.

Task: resolve the channel <yourchannel>, fetch its 10 latest videos and summarize the view and comment counts.
  • Free Sandbox tier
  • No Google Cloud project
  • Cursor pagination
  • MCP server included

01 / videos

Pull a channel's videos.

Pass the channel's handle and get its recent uploads: title, description, the thumbnail and video URL, view, like and comment counts, publish time and the canonical URL. The same fields Instagram, TikTok and Facebook return, so one parser covers every network.

GET /data/posts in the docs →
GET /v1/data/posts?platforms=YouTube&term=yourchannel
{
  "data": [{
    "platform": "YouTube",
    "message": "How we cut onboarding from 9 days to 1 (full walkthrough)",
    "poster": { "display_name": "Your Channel" },
    "media": [{ "type": "video", "url": "https://www.youtube.com/watch?v=...",
                "thumbnail_url": "https://i.ytimg.com/..." }],
    "view_count": 18240,
    "like_count": 612,
    "comment_count": 48,
    "url": "https://www.youtube.com/watch?v=..."
  }],
  "meta": {
    "platforms": [{ "platform": "YouTube", "success": true, "has_more": true, "next_cursor": "..." }]
  }
}

GET /v1/data/posts 200 1 of 25 videos, 240 ms

Your Channel

How we cut onboarding from 9 days to 1 (full walkthrough)

612 48

02 / hashtags

Search public videos on a hashtag.

Pass a hashtag with term_type=hashtag and get recent public videos that use it, whoever uploaded them: event coverage, product reviews, tutorials from your community. Each video carries its channel, so the JSON tells you who is talking.

term_type in the docs →
GET /v1/data/posts?platforms=YouTube&term=%23yourproduct&term_type=hashtag
{
  "data": [
    { "platform": "YouTube", "poster": { "display_name": "Priya Builds" },
      "message": "I ran #yourproduct for 30 days. Here is what broke and what didn't.",
      "view_count": 9620 },
    { "platform": "YouTube", "poster": { "display_name": "Marcus Dale" },
      "message": "#yourproduct vs the two alternatives, side by side",
      "view_count": 4110 }
  ],
  "meta": { "platforms": [{ "platform": "YouTube", "success": true, "count": 2, "has_more": true }] }
}

GET /v1/data/posts 200 2 videos, 280 ms

  • Priya Builds

    I ran #yourproduct for 30 days. Here is what broke and what didn't.

  • Marcus Dale

    #yourproduct vs the two alternatives, side by side

03 / profiles

Resolve a handle to its channel.

Up to five handles per request. An exact handle match returns that channel with its subscriber, video and total view counts; otherwise you get candidates to disambiguate. Every profile carries every field, null where YouTube exposes nothing.

GET /data/profiles in the docs →
GET /v1/data/profiles?platforms=YouTube&term=yourchannel
{
  "data": [{
    "platform": "YouTube", "term": "yourchannel", "exact_match": true,
    "profiles": [{
      "handle": "@yourchannel",
      "display_name": "Your Channel",
      "url": "https://www.youtube.com/channel/UC...",
      "verified": null,
      "metrics": { "follower_count": 48200, "post_count": 316, "total_view_count": 5120400 }
    }]
  }]
}

GET /v1/data/profiles 200 1 profile, exact match, 210 ms

Your Channel

youtube.com/@yourchannel

Followers
48,200
Posts
316

04 / synced sources

Sync the channels you follow. Get a webhook.

Add a channel, a playlist, a hashtag or a search term as a feed source and Juicer syncs it on a schedule, applies your moderation rules, keeps the history readable for free and calls your webhook when new videos land, live streams included.

Webhooks in the docs →
POST /v1/feeds/{feed_id}/sources
{ "platform": "YouTube", "term": "yourchannel", "term_type": "username" }

// later, on your endpoint
{
  "event": "post.created",
  "feed_id": 458362,
  "post": { "platform": "YouTube", "message": "New this week ...", "url": "https://www.youtube.com/watch?v=..." }
}

POST /v1/feeds/458362/sources 201 source created, first sync running

post.created https://yourapp.com/hooks/juicer delivered 200

Use cases

What teams build on the YouTube API

The same normalized videos serve product features, marketing sites and AI workflows.

Channel videos inside your product

Show a creator's or a customer's latest uploads in your CRM, learning platform or agency dashboard without a Google Cloud project of your own. Add their channel once and read it forever.

Course and resource libraries

Pull a playlist per course or product into a library page, moderated, with the title, description and view count of every lesson kept current as the channel uploads.

Curated walls for events

Pull the hashtag behind an event and the channels of its speakers into one moderated stream and push the keepers to the venue screens, the event site or a recap page.

Monitoring and analytics

Archive videos and their view, like and comment counts for the channels you track, yours and competitors', and chart subscribers, views and upload cadence over time.

YouTube data for AI agents

Give an agent get_data_posts and get_data_profiles through the MCP server and it can research a channel, summarize what a creator has covered or compare how two channels perform on a topic.

Retiring quota juggling

Replace the Google Cloud project, the API key rotation, the 10,000-unit daily quota and the 100-unit search calls with one endpoint that Juicer keeps working. Most teams migrate in a day.

Why use Juicer instead of the YouTube Data API directly?

YouTube's own API is public, which is the good news. Then comes the Google Cloud project, the key, the 10,000-unit daily quota that a few search calls burn through, the playlist-items indirection for a channel's uploads, the quota extension form, and a parser per network when YouTube is not the only one you need. Juicer carries all of it behind one normalized endpoint.

Build it yourself

A cloud project, a quota, and a pager.

  • Google Cloud project and key
  • 10,000 units a day, 100 per search
  • Uploads playlist indirection
  • Thumbnail sizes and video metadata
  • Quota extension applications
  • Moderation
  • Webhook plumbing
  • A second parser per network

Days to first video. Forever to maintain.

Juicer handles the heavy lifting.

With the Juicer API

One key. Same JSON as 14 other networks.

  • No Google Cloud project
  • No quota to ration
  • Any public channel, playlist or hashtag
  • Channel profiles with subscriber and view counts
  • View counts on every video
  • Moderation applied before you read
  • Webhooks on new videos
  • MCP server for agents
Start with one API call

Questions

Frequently asked questions

What developers ask before pulling YouTube data through Juicer.

  • Do I need a Google Cloud project or a YouTube API key?
    No. API lookups run against Juicer's own infrastructure: you pass a channel handle, a custom URL slug or a hashtag and get JSON back. There is no Google Cloud project, no key of your own, no OAuth consent screen and no quota to apply for.
  • Which YouTube lookups are supported?
    On GET /data/posts, YouTube accepts term_type=username (a channel's uploads, by its @handle, channel ID or legacy username), term_type=channel (a channel by its custom URL slug) and term_type=hashtag (public videos on a hashtag). GET /data/profiles resolves handles to channels with subscriber, video and total view counts. Playlists and search terms are feed source types: add them to a feed and read them through GET /feeds/{id}/posts.
  • Does the JSON include view counts?
    Yes. YouTube videos carry view_count alongside like_count and comment_count, the same fields TikTok returns, so a cross-network leaderboard needs no special case. Fields a platform does not expose are omitted rather than zeroed.
  • How does pagination work?
    Each call returns one upstream page of results. meta.platforms[] carries has_more and an opaque next_cursor per platform; repeat the same request with cursor=<value> to continue. Cursors are per platform, so a multi-platform request paginates each network independently.
  • How current is the data?
    API lookups fetch fresh results at request time. Synced sources sync on the schedule you choose, from daily to every few minutes, and a live stream reaches the feed on the next sync after it starts. More frequent syncs spend credits proportionally faster, and reads of what has already been synced are free.
  • What does YouTube cost in credits?
    Reads of already-synced videos are free. A YouTube source costs 1 credit per sync, whether connected or premium. Sandbox is free; Launch is $59 a month for 400 credits, Builder $99 for 750, Scale $499 for 4,500, Platform Partner from $2,500. The API pricing page has the calculator.
  • Is there an MCP server?
    Yes. Juicer's MCP server exposes the YouTube lookups as get_data_posts and get_data_profiles, next to feed, source, moderation, analytics and webhook tools, so an AI agent can pull YouTube content without a Google Cloud project or quota math. It is available on every API plan, including the free Sandbox. The full reference lives at developers.juicer.io.
  • Can I display the videos instead of building a UI?
    Yes. The same account gives you the YouTube feed widget: add the channel, pick a layout and paste one embed code, and the videos play in place. Many teams use both, the widget for the marketing site and the API for the product.

Ready to build?

Start pulling YouTube data in minutes

A preview of a Juicer feed widget showing real social media posts