Search YouTube videos
/v1/tools/youtube.search.videos/calls Needs an API keyReturns the YouTube videos that match a search, with channel, date and views. Use it to see which videos rank for a query.
Tool youtube.search.videos on YouTube. Contract version 1, released 2026-10-27.
Over REST, send the input in the body. Over MCP, pass the same input to call_tool.
Both return the full response: the call's ID, status and cost, with this tool's result in output.
Input
querystringRequiredThe search query.
sortstringOrder of the results: relevance (YouTube's ranking), newest, most_viewed or top_rated.
relevancenewestmost_viewedtop_ratedtime_rangestringOnly videos published in the last hour, day, week, month or year.
hourdayweekmonthyeardurationstringOnly videos of this length: short (under 4 minutes), medium (4 to 20 minutes) or long (over 20 minutes).
shortmediumlongnext_page_tokenstringFetches the next page. Take it from pagination.next_page_token of the previous page, and send the same query, sort, time_range and duration.
Output
A successful call returns these blocks in its output. A field not marked required can be null.
videos
A list of rows. Always present, possibly empty.
idstringRequiredYouTube's identifier of the video. The video is at https://www.youtube.com/watch?v= followed by it.
urlstringAddress of the video on youtube.com.
titlestringsnippetstringAn excerpt of the video's description, as the search shows it.
published_atstringWhen the video was published, in ISO 8601.
duration_msintegerLength of the video, in milliseconds.
preview_image_urlstringAddress of the video's thumbnail.
author_idstringYouTube's identifier of the channel that published the video, which begins with UC.
author_usernamestringThe channel's handle, without the @.
author_namestringThe channel's name.
author_image_urlstringAddress of the channel's profile picture.
author_verifiedbooleanWhether YouTube marks the channel as verified.
view_countintegerNumber of times the video was watched.
pagination
One object. Can be null. How to fetch the next page. Null on the last page.
next_page_tokenstringRequiredSend as next_page_token to fetch the next page.