YouTube channel stats checker API
Look up available public subscriber counts, video counts and channel metadata.
Make a request
GET /youtube/channel-stats accepts query parameters. POST /youtube/channel-stats accepts the same inputs as JSON. Send your project key in the x-access-key header; keep it on your server.
Credits: 1 credit per successful request.
curl request example
curl --fail-with-body --get 'https://api.fetchfox.net/youtube/channel-stats' \
-H 'x-access-key: YOUR_KEY' \
--data-urlencode 'url=https://www.youtube.com/@YouTube'JavaScript request example
// Run on your server with FETCHFOX_API_KEY set.
const url = new URL('https://api.fetchfox.net/youtube/channel-stats');
url.searchParams.set('url', 'https://www.youtube.com/@YouTube');
const response = await fetch(url, {
headers: { 'x-access-key': process.env.FETCHFOX_API_KEY },
signal: AbortSignal.timeout(130000)
});
if (!response.ok) throw new Error('HTTP ' + response.status);
const result = await response.json();
if (!result.success) throw new Error('Request unsuccessful');
console.log(result.data);Python request example
import json, os
from urllib.parse import urlencode
from urllib.request import Request, urlopen
query = urlencode({"url":"https://www.youtube.com/@YouTube"})
request = Request('https://api.fetchfox.net/youtube/channel-stats?' + query,
headers={'x-access-key': os.environ['FETCHFOX_API_KEY']})
with urlopen(request, timeout=130) as response:
result = json.load(response)
if not result.get('success'):
raise RuntimeError('Request unsuccessful')
print(result['data'])Replace placeholder source IDs with real public URLs. See limits and retries before automating calls.
Inputs and limits
This is a public snapshot. Subscriber counts may be rounded or hidden; audience demographics and private analytics are not available.
Use comparable observations
Save source URLs and your retrieval time with returned data. Public metrics can change and some counts are rounded. Missing metrics remain null, separately from genuine zero. Search and channel lists are samples, not a complete archive or guaranteed ranking feed.
Video duration alone does not establish whether an item is a Short. Returned dates and descriptions depend on source availability; optional full_details enrichment on /youtube/videos is capped at 30 videos.