{"name":"youtube-search","id":"sfoln/youtube-search","title":"YouTube Search Scraper","description":"Search YouTube by keyword with upload date, sort, type, duration and country filters: title, URL, channel, views, duration, publish date and Shorts or live flags, one JSON record per result. $0.40 per 1,000 results + $0.003 per page of ~20. No API key needed.","version":"0.1","status":"ready","family":{"id":"social-media-data","name":"Social media data","description":"Profiles, posts, comments, followers and account audits from X, Instagram, TikTok, YouTube, Reddit, Threads, LinkedIn, Facebook, Bluesky, Telegram, Hacker News and Substack.","actors":31},"categories":["SOCIAL_MEDIA","VIDEOS","AUTOMATION"],"availability":"on_request","seoTitle":"YouTube Search Scraper API – $0.40 per 1,000 results","seoDescription":"YouTube search scraper API: find videos and Shorts by keyword with date, sort and duration filters, as JSON. $0.40 per 1,000 results. No API key.","summary":"YouTube Search Scraper searches YouTube by keyword and returns one clean dataset record per video result: video ID, URL, title, channel (name, ID, handle, URL), views, duration, publish date, thumbnail and Short / live flags. You can filter by upload date, sort by relevance or popularity, limit results to videos or Shorts, filter by duration and search from a specific country. It's built for content research, SEO and keyword tracking, trend monitoring, influencer discovery and AI agents that need YouTube search results as JSON.","pricing":{"model":"pay-per-event","currency":"USD","billedBy":"Apify","freePlanMaxItemsPerRun":10,"events":[{"name":"youtube-search-result","title":"YouTube search result","description":"Charged once per video result (video, Short or live stream) delivered as a dataset record. Query summary records are never charged.","priceUsd":0.0004},{"name":"youtube-search-query","title":"YouTube search page","description":"Charged once per page of search results fetched for a query (about 20 results per page) that delivered at least one result, or that the provider billed although it had no new results (e.g. a query with no results). Covers the per-request upstream fee.","priceUsd":0.003}]},"input":{"description":"Enter one or more search queries. Each query returns one dataset record per video result (videos, Shorts, live streams) plus one summary record per query.","required":["queries"],"fields":[{"name":"queries","title":"Search queries","type":"array","required":true,"description":"One query per line, exactly as you would type it into YouTube search. YouTube operators such as intitle:\"…\" work. Duplicates are removed. Accounts on the Apify free plan can process up to 10 queries per run.","prefill":["lofi hip hop"],"editor":"stringList"},{"name":"maxResultsPerQuery","title":"Max results per query","type":"integer","required":false,"description":"How many video results to return per query (1–200). Results are fetched in pages of about 20; each delivered result is one charged event, plus one page event per page.","default":20,"prefill":10,"minimum":1,"maximum":200},{"name":"uploadDate","title":"Upload date","type":"string","required":false,"description":"Only return videos uploaded within this period.","default":"any","enum":["any","today","this_week","this_month","this_year"],"editor":"select"},{"name":"sortBy","title":"Sort by","type":"string","required":false,"description":"relevance (YouTube's default ranking) or popular (most viewed).","default":"relevance","enum":["relevance","popular"],"editor":"select"},{"name":"type","title":"Result type","type":"string","required":false,"description":"all = videos, Shorts and live streams as YouTube mixes them; videos = regular videos only; shorts = Shorts only.","default":"all","enum":["all","videos","shorts"],"editor":"select"},{"name":"duration","title":"Duration","type":"string","required":false,"description":"Filter regular videos by length (does not apply to Shorts).","default":"any","enum":["any","under_3_min","between_3_and_20_min","over_20_min"],"editor":"select"},{"name":"region","title":"Region","type":"string","required":false,"description":"Optional 2-letter country code (e.g. US, GB, DE) to search as a viewer from that country.","editor":"textfield"},{"name":"maxQueries","title":"Max queries","type":"integer","required":false,"description":"Safety cap on the number of queries processed in this run.","default":100,"minimum":1,"maximum":1000},{"name":"concurrency","title":"Concurrency","type":"integer","required":false,"description":"How many queries are searched in parallel (1–8).","default":4,"minimum":1,"maximum":8},{"name":"itemTimeoutSecs","title":"Time limit per input (seconds)","type":"integer","required":false,"description":"Pagination for one query stops cleanly shortly before this limit (60–3600). Raise it for very large per-input limits.","default":600,"minimum":60,"maximum":3600},{"name":"includeRaw","title":"Include raw upstream response","type":"boolean","required":false,"description":"Attach the unmodified provider result object to each result record.","default":false}]},"exampleInput":{"queries":["lofi hip hop"],"maxResultsPerQuery":10},"outputFields":[{"name":"input","type":"string | object","title":"Input","description":"The search query as provided."},{"name":"recordType","type":"string","title":"Record type","description":"result (one per video result, charged) | query (one summary per query, never charged)","example":"result"},{"name":"query","type":"string","title":"Query"},{"name":"position","type":"integer","title":"Position","description":"1-based position in the delivered results for the query (videos, then live, then Shorts within each page)."},{"name":"videoId","type":"string | null","title":"Video ID"},{"name":"url","type":"string | null","title":"URL"},{"name":"type","type":"string | null","title":"Type","description":"video | short | live"},{"name":"title","type":"string | null","title":"Title"},{"name":"description","type":"string | null","title":"Description snippet","description":"Usually null (YouTube search does not return descriptions)."},{"name":"channelName","type":"string | null","title":"Channel name"},{"name":"channelId","type":"string | null","title":"Channel ID"},{"name":"channelHandle","type":"string | null","title":"Channel handle"},{"name":"channelUrl","type":"string | null","title":"Channel URL"},{"name":"publishedAt","type":"string | null","title":"Published at","description":"ISO 8601, approximate (derived from YouTube's relative time)."},{"name":"publishedTimeText","type":"string | null","title":"Published (relative)","description":"e.g. \"2 years ago\"."},{"name":"durationSecs","type":"number | null","title":"Duration (s)"},{"name":"durationText","type":"string | null","title":"Duration"},{"name":"viewCount","type":"number | null","title":"Views"},{"name":"viewCountText","type":"string | null","title":"Views (text)"},{"name":"likeCount","type":"number | null","title":"Likes","description":"Usually null in search results."},{"name":"commentCount","type":"number | null","title":"Comments","description":"Usually null in search results."},{"name":"thumbnailUrl","type":"string | null","title":"Thumbnail URL"},{"name":"isShort","type":"boolean | null","title":"Is Short"},{"name":"isLive","type":"boolean | null","title":"Is live"},{"name":"badges","type":"array","title":"Badges"},{"name":"filters","type":"object","title":"Filters","description":"query records only: the filters applied."},{"name":"resultsDelivered","type":"integer","title":"Results delivered","description":"query records only."},{"name":"pagesFetched","type":"integer","title":"Pages fetched","description":"query records only."},{"name":"pagesCharged","type":"integer","title":"Pages charged","description":"query records only: number of youtube-search-query events."},{"name":"reachedEnd","type":"boolean","title":"Reached end","description":"query records only."},{"name":"stopReason","type":"string","title":"Stop reason","description":"query records only: limit | end | budget | deadline | max_pages | empty_pages | error"},{"name":"status","type":"string","title":"Status","description":"ok | not_found | error | skipped_invalid | skipped_budget | skipped_free_plan","example":"ok"},{"name":"charged","type":"boolean","title":"Charged","description":"Result records: charged youtube-search-result. query summary records are never charged themselves: the youtube-search-query page fees charged for the input (including empty pages the provider billed) are counted in pagesCharged."},{"name":"chargedEvent","type":"string","title":"Charged event"},{"name":"error","type":"object","title":"Error"},{"name":"warnings","type":"array","title":"Warnings"},{"name":"source","type":"string","title":"Source"},{"name":"fetchedAt","type":"string","title":"Fetched at"}],"outputExample":{"input":"lofi hip hop","recordType":"result","query":"lofi hip hop","position":1,"videoId":"BzSzwqb-OEE","url":"https://www.youtube.com/watch?v=BzSzwqb-OEE","type":"video","title":"NF - RUNNING (Audio)","description":null,"channelName":"NFrealmusic","channelId":"UCoRR6OLuIZ2-5VxtnQIaN2w","channelHandle":null,"channelUrl":"https://www.youtube.com/channel/UCoRR6OLuIZ2-5VxtnQIaN2w","publishedAt":"2023-05-28T17:08:46.499Z","publishedTimeText":"2 years ago","durationSecs":254,"durationText":"4:14","viewCount":14860541,"viewCountText":"14,860,541 views","likeCount":null,"commentCount":null,"thumbnailUrl":"https://i.ytimg.com/vi/BzSzwqb-OEE/hq720.jpg","isShort":false,"isLive":false,"badges":[],"status":"ok","charged":true,"chargedEvent":"youtube-search-result","source":"scrapecreators","fetchedAt":"2026-10-14T10:00:00.000Z"},"faq":[],"mcpExamplePrompt":"Search YouTube for \"lofi hip hop\" videos uploaded this week, sorted by popularity, and list the top 10 with their channels and views.","related":["youtube-video-lookup","youtube-channel-videos","youtube-video-comments","youtube-transcript-summary","tiktok-search"],"urls":{"site":"https://www.sfoln.com/actors/youtube-search/","siteJson":"https://www.sfoln.com/actors/youtube-search.json","siteMarkdown":"https://www.sfoln.com/actors/youtube-search.md","runSync":"https://api.apify.com/v2/actors/sfoln~youtube-search/run-sync-get-dataset-items","runAsync":"https://api.apify.com/v2/actors/sfoln~youtube-search/runs","mcp":"https://mcp.apify.com?tools=sfoln/youtube-search","requestAccess":"mailto:contact@sfoln.com?subject=Access%20request%3A%20YouTube%20Search%20Scraper%20(sfoln%2Fyoutube-search)&body=Please%20publish%20youtube-search.%20What%20we%20plan%20to%20use%20it%20for%3A"},"publisher":{"name":"SFOLN LLC","apifyUsername":"sfoln","url":"https://www.sfoln.com","apifyProfile":"https://apify.com/sfoln","email":"contact@sfoln.com"},"generatedAt":"2026-10-22T04:28:58.477Z"}