YouTube API
Home Feed
Get the YouTube homepage feed with algorithmically recommended videos.
POST
$0.01/call/v1/youtube/homeUsage
const res = await fetch('https://api.yepapi.com/v1/youtube/home', {
method: 'POST',
headers: {
'x-api-key': 'YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({ geo: 'US' }),
});
const { data } = await res.json();
console.log(data.data); // array of recommended videoscurl -X POST https://api.yepapi.com/v1/youtube/home \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"geo": "US"}'Request Body
| Parameter | Type | Required | Description | Default |
|---|---|---|---|---|
geo | string | No | Country code (e.g. US) | — |
lang | string | No | Language code (e.g. en) | — |
token | string | No | Continuation token for pagination | — |
Response
{
"ok": true,
"data": {
"filters": [
{ "filter": "All" },
{ "filter": "Music", "continuation": "4qmF..." },
{ "filter": "News", "continuation": "4qmF..." }
],
"continuation": "4qmF...",
"data": [
{
"type": "video",
"videoId": "LhpZJwUboeI",
"title": "Samay Raina - STILL ALIVE (Full Special)",
"channelTitle": "Samay Raina",
"channelId": "UCAov2BBv1ZJav0c_yHEciAw",
"channelHandle": "@SamayRainaOfficial",
"description": "",
"viewCountText": "46M views",
"publishDate": "2026-04-07",
"publishedAt": "2026-04-07T00:00:00Z",
"publishedTimeText": "6 days ago"
},
{
"type": "shorts_listing",
"data": [
{
"videoId": "...",
"title": "Short Title",
"viewCountText": "1.2M views"
}
]
}
]
}
}Response Fields
| Field | Type | Description |
|---|---|---|
ok | boolean | Whether the request succeeded |
data.filters | object[] | Available content category filters (e.g. All, Music, News, Gaming) |
data.filters[].filter | string | Filter label |
data.filters[].continuation | string | Token to fetch results for this specific filter |
data.continuation | string | Token to fetch the next page of results |
data.data | object[] | Mixed array of videos, shorts listings, and video listings |
data.data[].type | string | Content type: video, shorts_listing, video_listing, or ad |
data.data[].videoId | string | Unique YouTube video identifier (for video type) |
data.data[].title | string | Video title as displayed on YouTube |
data.data[].channelTitle | string | Name of the channel that uploaded the video |
data.data[].channelId | string | Unique identifier for the channel |
data.data[].channelHandle | string | Channel handle (e.g. @SamayRainaOfficial) |
data.data[].viewCountText | string | Human-readable view count (e.g. 46M views) |
data.data[].publishDate | string | Publish date in YYYY-MM-DD format |
data.data[].publishedAt | string | Publish date as ISO 8601 timestamp |
data.data[].publishedTimeText | string | Relative publish time (e.g. 6 days ago) |
data.data[].description | string | Video description snippet |