POST /v1/youtube/searchYouTube Search Scraper API
Search YouTube by keyword: videos, Shorts, channels and playlists with views, publish time, duration and channel. Optional type, popularity sort and upload-date filters.
- Cost
- 1 credit
- Failed requests
- Refunded
- Cache hits
- Free
- Response fields
- 7
- Limits
- Up to 50 results · no date sort
What the YouTube Search Scraper API does
The YouTube Search Scraper API runs a YouTube keyword search and returns videos, Shorts, channels and playlists with titles, view counts, publish time, duration, thumbnails and channel details. Filter by type (all, video, shorts, channel or playlist), sort by relevance or popularity, and restrict recency with upload_date (today, week, month or year). Up to 50 results per request are fetched in pages of about 20. It is built for monitoring what gets published about a topic, discovering creators and feeding research pipelines, without Google Cloud quota planning. Note that YouTube no longer supports sorting by upload date, so use upload_date for recency. Each request costs 1 credit.
What you get
Top-level fields of the response. Every field is typed and documented; nullable fields are null when the platform does not show them.
| Field | Type | Description |
|---|---|---|
query | string | Normalized search query |
type | string | Applied type filter: all, video, shorts, channel or playlist |
sort | string | Applied sort: relevance or popularity |
upload_date | string | null | Applied upload-date filter, null when not set |
results_fetched | integer | Number of results returned |
has_more | boolean | YouTube has more results beyond limit |
results | array<object> (25 fields each) | Results in YouTube's order, max limit. Fields depend on type |
Request example
Send the API key as a Bearer token. The body is a small JSON object.
curl -X POST https://api.scrapeeverything.com/v1/youtube/search \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"query":"lofi hip hop","limit":10}'| Parameter | Required | Description |
|---|---|---|
query | Yes | Search keywords (max 200 characters). |
type | No | Result type: all, video, shorts, channel or playlist. Default all. |
sort | No | relevance or popularity (view_count is accepted as an alias). Default relevance. |
upload_date | No | Only results uploaded within: today, week, month or year. |
limit | No | Maximum number of results to return. |
What it costs
Each successful request costs 1 credit. Your first 100 credits are free. With credit packs, 1,000 requests to this endpoint cost:
Builder pack
$1.56
25,000 credits for $39.00
Growth pack
$1.19
100,000 credits for $119.00
Scale pack
$0.90
500,000 credits for $449.00
See pricing for all packs and rate limits.
Use cases
- Monitor new videos about your brand, product or competitors every day.
- Discover creators in a niche by searching for topics and collecting channels.
- Find Shorts on a topic with type shorts for short-form trend research.
Limitations: Unofficial API: not affiliated with or endorsed by the platform. Public data only, as a logged-out visitor sees it. Counts can be YouTube's rounded figures; comments are top-level only; transcripts exist only for videos with captions.
- Results are fetched in pages of about 20 (up to 3 pages for limit 50).
- Sorting by upload date or rating is not available: YouTube removed those sorts and ignores them. Use upload_date to restrict recency; popularity is YouTube's own ranking, not a strict view-count order.
- With type all, YouTube's Shorts shelves are skipped; use type shorts to get Shorts. Shorts from shelves have no channel, publish time or duration.
Questions
Can I sort by newest?
No. YouTube removed the upload-date sort. Use upload_date (today, week, month or year) to limit results to recent uploads.
How many results do I get?
Up to 50 per request (default 20). has_more tells you whether YouTube has more results.
Are Shorts included?
With type all, Shorts shelves are skipped. Use type shorts to search Shorts specifically.
How much does the YouTube Search Scraper API cost?
1 credit per successful request. Credits are bought in one-time packs and never expire. New accounts get 100 free credits. No payment details needed.
Am I charged for failed requests?
No. If the platform blocks the request, it times out or something fails on our side, the credits are refunded automatically. A definitive answer such as "this account does not exist" is billed because the lookup completed.
Can I re-read a result without paying again?
Yes. Send cache_days (1 to 14) and a repeat request for the same target within that window is served from your cache for free.
More YouTube endpoints
Start with 100 free credits.
Continue with Google, create an API key and send your first request in under a minute.