REST API · GET
RuTube Video API
Видео и Shorts с RuTube в нескольких качествах до 1080p: HLS-ссылки по каждому разрешению.
https://api.interapi.dev/api/v1/rutube
Цена запроса: 5 кредитов за успешный ответ. 5xx — бесплатно, 4xx — не больше 1 кредита. Тарифы
Что умеет
Принимает ссылки rutube.ru/video/<id>/ и rutube.ru/shorts/<id>/. RuTube раздаёт видео потоком HLS, поэтому в media приходит по одной ссылке .m3u8 на каждое качество (ext: m3u8, quality и height), от лучшего к худшему, и обложка с quality cover. Плейлист открывается в любом плеере с поддержкой HLS, а в файл MP4 его собирает ffmpeg: ffmpeg -i "<url>" -c copy video.mp4. Также возвращаются title, description, author и duration_sec.
- Видео и Shorts
- До 1080p, все качества
- HLS (.m3u8) на каждое качество
- Название, автор, длительность
Как пользоваться
- Скопируйте ссылку rutube.ru/video/… или rutube.ru/shorts/…
- GET /api/v1/rutube?url=…
- Ответ: media[] со ссылками .m3u8 по качествам, обложка, title и duration_sec.
Параметры
urlstringобязательный- Ссылка на видео RuTube: rutube.ru/video/<id>/ или rutube.ru/shorts/<id>/.
Пример запроса
curl -G "https://api.interapi.dev/api/v1/rutube" \
-H "X-API-Key: YOUR_API_KEY" \
--data-urlencode "url=https://rutube.ru/video/0f774368d3ca94b073c47b6f7536ce8b/"import requests
resp = requests.get(
"https://api.interapi.dev/api/v1/rutube",
params={"url": "https://rutube.ru/video/0f774368d3ca94b073c47b6f7536ce8b/"},
headers={"X-API-Key": "YOUR_API_KEY"},
timeout=60,
)
resp.raise_for_status()
print(resp.json())const params = new URLSearchParams({ url: "https://rutube.ru/video/0f774368d3ca94b073c47b6f7536ce8b/" });
const resp = await fetch(`https://api.interapi.dev/api/v1/rutube?${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(["url" => "https://rutube.ru/video/0f774368d3ca94b073c47b6f7536ce8b/"]);
$ch = curl_init("https://api.interapi.dev/api/v1/rutube?" . $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",
"title": "Синий трактор По полям | Учим цвета и как говорят животные",
"description": "По полям по полям Синий трактор едет к нам…",
"author": "Синий трактор - Песенки и мультики для детей",
"media": [
{
"type": "video",
"url": "https://river-6-603.rtbcdn.ru/hls-vod/…/37f9a4cfe6884173ab170777c282907b.mp4.m3u8",
"quality": "1080p",
"download_url": "https://river-6-603.rtbcdn.ru/hls-vod/…/37f9a4cfe6884173ab170777c282907b.mp4.m3u8",
"height": 1080,
"ext": "m3u8"
},
{
"type": "video",
"url": "https://river-6-603.rtbcdn.ru/hls-vod/…/cf123157ed2540b1b020ef1fb6de0c37.mp4.m3u8",
"quality": "720p",
"download_url": "https://river-6-603.rtbcdn.ru/hls-vod/…/cf123157ed2540b1b020ef1fb6de0c37.mp4.m3u8",
"height": 720,
"ext": "m3u8"
},
{
"type": "photo",
"url": "https://pic.rtbcdn.ru/video/…/7f11fa1b4b6ac3742d4dfe31a7304e68.jpg",
"quality": "cover",
"download_url": "https://pic.rtbcdn.ru/video/…/7f11fa1b4b6ac3742d4dfe31a7304e68.jpg"
}
],
"video_url": "https://river-6-603.rtbcdn.ru/hls-vod/…/37f9a4cfe6884173ab170777c282907b.mp4.m3u8",
"video_hd_url": "https://river-6-603.rtbcdn.ru/hls-vod/…/37f9a4cfe6884173ab170777c282907b.mp4.m3u8",
"music_url": null,
"thumbnail": "https://pic.rtbcdn.ru/video/…/7f11fa1b4b6ac3742d4dfe31a7304e68.jpg",
"duration_sec": 552,
"channel_url": null,
"duration_ms": 860
}duration_ms — время обработки на сервере. Ссылки в примере сокращены.
Проверить запрос
Без ключа — до 30 запросов в час с одного IP. Со своим ключом запрос списывает кредиты по цене API.
Вставьте ссылку и нажмите «Отправить». Ответ появится здесь.