All platforms13 YouTube endpoints

YouTube scraper API. Forget the quota.

Channels, videos, Shorts, comments and full transcripts as JSON in one request. No Google Cloud project and no daily quota to ration.

No credit card requiredRead the API docs
  • No Google Cloud project
  • Transcripts included
  • Shorts and comments
  • Failed lookups aren't charged
// YouTube profile
const base = "https://api.socialfetch.dev";
const path = "/v1/youtube/channel?handle=MrBeast";

const res = await fetch(`${base}${path}`, {
  headers: { "x-api-key": "YOUR_API_KEY" },
});

const data = await res.json();
{
"handle": "MrBeast",
"displayName": "MrBeast",
"subscribers": 345000000,
"videos": 812,
"verified": true,
"avatarUrl": "https://yt3.ggpht.com/...",
// + 18 more — full schema in docs →
}
99.8% uptime#3 Product of the Day3,200+ developers

Teams running monitoring, research, and enrichment pipelines

We run the YouTube scrapers. You build the product.

Live YouTube data as JSON — proxies, platform changes and consistent output handled for you.

YouTube, plus every other network

One key and one response envelope for YouTube and 24 more platforms — profiles, posts, search, comments and transcripts.

Pricing you can reason about

One request, one credit. Know how far your balance will go before you run your next batch.

Live data on every request

Fetch public data when you ask for it — not from a shared cache.

No scraper maintenance

We handle proxies, browser changes, and platform breakages.

Built for production jobs

Run concurrent workloads with explicit statuses and request IDs.

Regular jobs. Better rates.

Running lookups every month? Get lower per-credit rates with a monthly plan. For occasional projects, choose pay as you go.

Never expires

What YouTube data can you get?

13 endpoints, one API key. Every response comes back as live JSON in the same envelope.

Browse all 13 YouTube endpoints
Use cases

What teams build with YouTube data

Monitoring, enrichment, research and content workflows on YouTube data — the same API as every other platform.

What you can build

Monitor brands and competitors

Find and vet creators

Check reach and engagement before you reach out.

Turn video into searchable text

Transcribe and index video and audio content so you can find the exact moment you need.

Track public communities

Follow the subreddits, groups, and channels where your audience talks.

How it works

Your first request in three steps.

Use TypeScript or your automation tool of choice.

Sources

+ 19 more platforms

One request

Social Fetch API

GET/v1/tiktok/profiles/charlidamelio

x-api-key: sk_live_••••••••

1 request · 1 credit

Same JSON shape

response.json200 OK
{
  "data": {
    "lookupStatus": "found",
    "profile": {
      "platform": "tiktok",
      "handle": "charlidamelio",
      "displayName": "charli d’amelio",
      "verified": true
    },
    "metrics": {
      "followers": 160263648
    }
  }
}
  1. Step 1

    Create your free account

    Get an API key with 100 requests included.

  2. Step 2

    Choose an endpoint

    Pass a username, URL, keyword, or post ID.

  3. Step 3

    Get clean JSON

    Use the response immediately or send it into your pipeline.

Works with your stack

Code, automate, or connect your AI.

Explore integrations

Pricing

Social data, priced simply.

Start with 100 free credits. Monthly plans give you predictable volume and lower per-request rates.

Starter

$29.00

18,000credits

  • Top up from $1.61 / 1k if you run out
  • Up to 25 monitors
Most popular

Growth

$79.00

50,000credits

  • Top up from $1.58 / 1k if you run out
  • 5 team seats
  • Up to 100 monitors

Scale

$225.00

150,000credits

  • Top up from $1.50 / 1k if you run out
  • 25 team seats
  • Up to 250 monitors
  • Cancel anytime
  • 30-day money-back guarantee
  • Price locked while you stay

Need 1M+ credits, invoicing, or volume rates? Talk to us

Trust signals

DevHunt

Product Hunt

Uneed

Customers

Teams building on Social Fetch.

“Our TikTok and Instagram scrapers broke constantly. Social Fetch took us off that rotation — we ship product again.”

Daniel Reeve · Founder, Social Crow
  • “Transcripts at volume from one endpoint. No broken scrapers for our small team to maintain.”

    Marcus Lin · Founder, Voice Gecko
  • “Live profile data on every request. We never flag accounts from a stale cache.”

    Hannah Webb · Founder, Scam Finder
  • “Heavy concurrent load, no rate limits to negotiate. The rare API I haven't wrapped in retries.”

    Owen Pritchard · Founder, IP Flare

YouTube API: common questions

Is there a YouTube scraper API?

Yes. Social Fetch provides twelve REST routes for public YouTube channel, video, Shorts, playlist, comment, community post, search, and transcript data, documented under /docs/api and on this hub's endpoint list.

How is this different from the YouTube Data API v3?

YouTube Data API v3 is Google's official product for channels you manage — it needs a Google Cloud project, keys or OAuth, and a daily quota. Social Fetch is a third-party public-data API: handle, URL, or video link in, a unified { data, meta } envelope out, authenticated with a Social Fetch key only. Use Google's API when you operate the channel; use Social Fetch for public enrichment.

Can I fetch YouTube transcripts via API?

Yes. GET /v1/youtube/videos/transcript takes a public watch, youtu.be, or Shorts URL and returns data.transcript.plainText plus timed segments (text, startMs, endMs) when a caption track exists. It reads existing captions only — there is no speech-to-text fallback, so a not_found lookup means no usable track for that URL.

Do you support YouTube Shorts?

Yes, as their own routes rather than mixed into long-form. GET /v1/youtube/channels/shorts pages one channel's Shorts feed, GET /v1/youtube/shorts/trending returns a platform-wide trending snapshot (no query params, typically ~48 items), and GET /v1/youtube/videos resolves a single Shorts watch URL the same way it resolves a regular video.

How much does the YouTube API cost on Social Fetch?

Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged — that field is the billing source of truth. Each paginated page is a separate billed request.

Can I pull channel videos or comments with pagination?

Yes. GET /v1/youtube/channels/videos, channels/shorts, videos/comments, videos/comments/replies, search, and search/hashtags all expose data.page.hasMore and data.page.nextCursor. Pass nextCursor back as the cursor query param on the next call — the cursor is opaque, so don't parse or reconstruct it.

How do I get replies to a specific YouTube comment?

List top-level comments with GET /v1/youtube/videos/comments, then take the repliesCursor field from a comment that has replies and pass it as cursor to GET /v1/youtube/videos/comments/replies. That endpoint does not accept a video URL directly — it only pages a thread you already located.

Does Social Fetch require a Google Cloud project?

No. Every YouTube route authenticates with a Social Fetch API key (x-api-key) only. There is no Cloud project, OAuth client, or YouTube Data API quota to manage.

Can I look up a YouTube playlist or a community post by URL?

Yes. GET /v1/youtube/playlists takes a playlistId or a URL containing list= and returns playlist metadata plus ordered video rows. GET /v1/youtube/community-posts takes a youtube.com/post/... URL and returns post text, attached images, an optional linked video, and like count.

Is YouTube scraping legal?

Social Fetch returns publicly visible YouTube data — the same pages a signed-out browser can load. You are responsible for how you use it under YouTube's terms, applicable law, and your own compliance review. We do not give legal advice.

The YouTube API in detailHow the YouTube routes work, what they cost, and how they differ from the official API.

Why teams use Social Fetch for YouTube

Get public YouTube data as JSON: channel stats, uploads and Shorts, video details with view and like counts, comment threads, playlists, community posts, search, and transcripts from existing caption tracks.

The YouTube Data API v3 needs a Google Cloud project, an API key or OAuth, and a daily quota you have to budget across jobs. Social Fetch reads public pages with one Social Fetch API key: no Cloud project, no quota math, and no scrapers or proxies of your own to keep working.

Every route is fetched live and costs a flat 1 credit per successful request, in the same envelope used across all 25 platforms. Start with 100 free credits, no credit card required.

How to call the YouTube API

  1. 1. Create a key

    Sign up, copy sfk_…, and spend the 100 free credits on a channel lookup plus a transcript pull against live data.

  2. 2. Call a YouTube route

    Start with GET /v1/youtube/channel?handle=... for identity, then GET /v1/youtube/videos?url=... or GET /v1/youtube/videos/transcript?url=... for a specific upload. Send x-api-key on every request and use the documented query params — cursor, sortBy, order — instead of parsing HTML yourself.

  3. 3. Read the shared envelope

    Branch on data.lookupStatus before writing rows — found can still mean an empty list, and not_found is not an error. Persist meta.requestId for support and bill from meta.creditsCharged, not an assumed flat rate.

What each YouTube route returns

  • Channel lookup by handle, channel ID, or URL — subscriber and identity fields (GET /v1/youtube/channel).
  • Long-form uploads and Shorts as separate paginated lists, each sortable by latest or popular (channels/videos, channels/shorts).
  • Single video or Shorts detail by watch URL — title, duration, chapters, caption tracks, and view/like/comment metrics (GET /v1/youtube/videos).
  • Transcripts as plainText plus millisecond-timed segments for existing caption tracks (GET /v1/youtube/videos/transcript).
  • Top-level comments with sort order plus nested reply threads via a separate cursor (videos/comments, videos/comments/replies).
  • Playlist metadata and ordered video rows from a playlist id or list= URL (GET /v1/youtube/playlists).
  • Community post text, images, and linked video from a youtube.com/post/... URL (GET /v1/youtube/community-posts).
  • Keyword search, hashtag search, and a platform-wide Shorts trending snapshot for discovery jobs.

How much does the YouTube API cost?

Every documented YouTube operation — channel, channel videos, channel Shorts, single video, transcript, comments, comment replies, playlists, community posts, search, hashtag search, and Shorts trending — charges a flat 1 credit per successful completed request in the OpenAPI registry, with no per-route surcharge. The transcript route is flat-rate too: it does not run speech-to-text and has no AI-fallback surcharge the way some other platforms do. Paginated list and search routes bill each page as a separate request. Credits never expire on pay-as-you-go packs. Always trust meta.creditsCharged on the response over any number in this copy.

Social Fetch vs the official YouTube API

YouTube Data API v3 needs a Google Cloud project, API key or OAuth, and daily quota — right for upload management and channel-owner actions. Social Fetch reads public pages with one Social Fetch API key, no Cloud project, no OAuth. Use Data API when you operate the channel; use Social Fetch for public lookup, monitoring, and transcripts on channels you don't control.

Pull your first YouTube data.

Run a live YouTube request in the playground. 100 free credits, no card, JSON back in seconds.

No credit cardSign up in 30 seconds withGoogleGitHub