YouTube Channel API
Channel overview by handle or channelId: title, description, subscriber and video counts, banner.
$0.45/1k req, pay per request, no subscription.
{"channelId": "UCBJycsmduvYEL83R_U4JriQ","handle": "@mkbhd","title": "Marques Brownlee","description": "Quality Tech Videos.","subscribers": 19600000,"videos": 1680,"views": 4120000000,"avatarUrl": string,... 2 more fields}
Pricing and providers
YouTube Channel API pricing: one API, 5 interchangeable providers
The cheapest provider serves first. If it fails, the next one takes over in the same call.
Try it
Get YouTube channel in one request
This sample shows 9 of 15 fields. See every field
{
"found": true,
"data": {
"channelId": "UCBJycsmduvYEL83R_U4JriQ",
"handle": "@mkbhd",
"title": "Marques Brownlee",
"description": "Quality Tech Videos.",
"subscribers": 19600000,
"videos": 1680,
"views": 4120000000
}
}Full parameter and response reference - every field, type, and example for this endpoint.
Reference
One request, one response shape.
Every field you send and every field you get back, each with a real example.
Last verified 2026-10-31 · uptime and latency measured over 30d
Request body
JSON, posted to this endpoint.
- channelIdstring
YouTube channel ID (UC...). Pass it directly when you have it: some sources accept only the ID and otherwise look up the handle first, which adds a step.
- handlestring
@mkbhd
YouTube channel handle.
- requireFieldsarray
Optional; omit it and routing is unchanged, with the cheapest source serving. Name the output fields this request must be able to return, for example `views`, and it is served only by a source that returns every one of them. Fields you do not name are still returned whenever the serving source has them. This can raise your price: when the cheapest source cannot return a named field, a dearer source serves, and you are quoted and charged its price. A named field can still be absent on a record that genuinely lacks it. Naming a combination that no single source returns together is refused as invalid input, with no charge.
Response
JSON, one example value per field.
- avatarUrlstring
- channelIdstring
UCBJycsmduvYEL83R_U4JriQ
Populated whenever the provider has data for the entity.
- descriptionstring
Quality Tech Videos.
Populated whenever the provider has data for the entity.
- handlestringcan require
@mkbhd
The channel's @handle, for example "@mkbhd".
- subscribersinteger
19600000
- titlestring
Marques Brownlee
Populated whenever the provider has data for the entity.
- urlstring
Canonical URL of the channel page, tracking query parameters stripped.
- videosintegercan require
1680
- viewsintegercan require
4120000000
Lifetime view count across the channel's videos, or null when the serving source does not report it.
The links the channel lists in the Links section of its About page, in the order shown. Empty when the channel lists none, and absent when the serving source does not report links; name `links` in requireFields to be served only by a source that does.
- titlestring
The label the channel gave the link, when the serving source reports it.
- urlstring
The link's address, starting with https://.
- foundboolean
true
- reason"not_found"
Present only when `found` is false, and says why there is no result. `not_found`: the source states the target does not exist, or returned nothing for it. A `found: false` answer is a successful call, not an error, and `costUsd` is what it actually cost.
FAQ
About the YouTube Channel API
The AnyAPI YouTube Channel API returns YouTube channel data as normalized JSON from one POST call to /v1/run/youtube.channel. Channel overview by handle or channelId: title, description, subscriber and video counts, banner. AnyAPI routes each request across 5 sources and falls back automatically when one fails. It costs from $0.45 per 1,000 requests, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 100.0% of YouTube channel calls through AnyAPI succeeded, with a median response time of 1.3 seconds across 27,292 measured calls.