REST API · GET
YouTube Search API
Поиск видео, музыки, плейлистов, каналов и трансляций на YouTube и YouTube Music.
GET
https://api.interapi.dev/api/v1/youtube/search
Цена запроса: 6 кредитов за успешный ответ. 5xx — бесплатно, 4xx — не больше 1 кредита. Тарифы
Что умеет
Короткий endpoint для поиска по YouTube. Параметр filter работает как фильтры YouTube: video (видео), music (YouTube Music), playlist, channel, live, shorts, all. Каждый результат содержит title, url, author, thumbnail, duration_sec и kind.
- YouTube + YouTube Music
- filter: music, video, live…
- До 99 результатов
- Быстрый поиск (InnerTube + кэш)
- Прямые ссылки на контент
Как пользоваться
- Поисковый запрос в параметре q
- GET /api/v1/youtube/search?q=…&filter=music (video, playlist, channel, live, shorts, all)
- Ответ: массив results[] — title, url, author, thumbnail, duration_sec.
Параметры
qstringобязательный- Поисковый запрос (название, артист, канал)
filterstringнеобязательный- video, music, playlist, channel, live, shorts или all. По умолчанию video.
limitintegerнеобязательный- Сколько результатов вернуть: от 1 до 99, по умолчанию 99.
Пример запроса
curl -G "https://api.interapi.dev/api/v1/youtube/search" \
-H "X-API-Key: YOUR_API_KEY" \
--data-urlencode "q=macan" \
--data-urlencode "filter=music"import requests
resp = requests.get(
"https://api.interapi.dev/api/v1/youtube/search",
params={"q": "macan", "filter": "music"},
headers={"X-API-Key": "YOUR_API_KEY"},
timeout=60,
)
resp.raise_for_status()
print(resp.json())const params = new URLSearchParams({ q: "macan", filter: "music" });
const resp = await fetch(`https://api.interapi.dev/api/v1/youtube/search?${params}`, {
headers: { "X-API-Key": "YOUR_API_KEY" },
});
if (!resp.ok) throw new Error(`HTTP ${resp.status}`);
console.log(await resp.json());<?php
$query = http_build_query(["q" => "macan", "filter" => "music"]);
$ch = curl_init("https://api.interapi.dev/api/v1/youtube/search?" . $query);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ["X-API-Key: YOUR_API_KEY"],
CURLOPT_TIMEOUT => 60,
]);
$data = json_decode(curl_exec($ch), true);
print_r($data);
Пример ответа
{
"status": "success",
"platform": "InterAPI",
"query": "macan",
"filter": "music",
"count": 3,
"results": [
{
"id": "VNHfobG7f1c",
"title": "Macan ii dhunko",
"url": "https://music.youtube.com/…/watch",
"author": "Ilkacase Qays",
"channel_url": null,
"duration_sec": 181,
"thumbnail": "https://yt3.googleusercontent.com/…/B_DLMNMi4c6sDAPWfxN1OR2m",
"kind": "audio",
"is_music": true,
"view_count": null
},
{
"id": "YCef9L3SBZI",
"title": "Shazam",
"url": "https://music.youtube.com/…/watch",
"author": "MACAN",
"channel_url": null,
"duration_sec": 149,
"thumbnail": "https://yt3.googleusercontent.com/…/22GCXdglJSXgz0r8YYFbzoec",
"kind": "audio",
"is_music": true,
"view_count": null
}
],
"duration_ms": 343
}duration_ms — время обработки на сервере. Ссылки в примере сокращены.
Проверить запрос
Без ключа — до 30 запросов в час с одного IP. Со своим ключом запрос списывает кредиты по цене API.
Вставьте ссылку и нажмите «Отправить». Ответ появится здесь.