API Kinescopeдля разработчиков

REST API для загрузки и транскодирования видео, DRM-шифрования, трансляций, вебхуков и аналитики. ИИ-агент работает с видео, эфирами и аналитикой через MCP-сервер, а приложения показывают видео через iframe, IFrame API и библиотеки плеера.

Подключите ИИ-агента к Kinescope

Kinescope MCP Server в публичной бете. Cursor, Claude Desktop, Claude Code и Qwen3 работают с вашей рабочей зоной по запросам на русском языке. Агент действует с правами вашего API-токена, удалять данные через MCP нельзя.

Что умеет агент

  • Видео Поиск по названию, описанию и тегам, правка метаданных и приватности, копирование и перенос между проектами.
  • Проекты Проекты, папки и плейлисты.
  • Аналитика Просмотры, вовлечённость, география зрителей и собственные срезы.
  • Трансляции События, расписание, рестриминг и записи эфиров.
  • Субтитры и главы Добавить файл субтитров, прочитать текст субтитров, расставить главы по таймкодам.
  • Ещё Постеры, дополнительные материалы, запросы на загрузку файлов, комнаты Speak, статистика использования и биллинг.
mcp.json Cursor Claude Code Qwen3
{
  "mcpServers": {
    "Kinescope MCP": {
      "type": "streamable-http",
      "url": "https://api.kinescope.io/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}
Claude Desktop терминал
npx -y @smithery/cli@latest mcp add kinescope/kinescope-mcp --client claude

Попросите агента

  • Найди все видео с тегом «tutorial» за последний квартал
  • Покажи статистику просмотров для всех видео в проекте «Маркетинг» за последний месяц
  • Добавь главы к видео: в 5:30 — «Обзор API», в 12:15 — «Обсуждение тарифов»

От загрузки до защищённого просмотра за три шага

Три примера из документации: API загрузки принимает файл, iframe его показывает, а ваш бэкенд решает, кто смотрит. Подставьте свой API-токен и ID.

  1. 1

    Загрузите

    Импортируйте файл по ссылке, как в примере, отправьте его одним запросом или выдайте ссылку для загрузки клиентскому приложению. Большие файлы грузите частями по протоколу TUS: после обрыва загрузка продолжится с того же места.

    cURL · загрузка по ссылке
    curl -X POST https://uploader.kinescope.io/v2/video \
      -H "Authorization: Bearer $KINESCOPE_API_TOKEN" \
      -H "X-Parent-ID: $PARENT_ID" \
      -H "X-Video-Title: Урок 1" \
      -H "X-Video-URL: https://example.com/urok-1.mp4"
  2. 2

    Встройте

    Kinescope перекодирует загруженный файл в несколько качеств. Вставьте iframe на страницу или управляйте плеером из JavaScript через IFrame API.

    HTML · iframe
    <iframe src="https://kinescope.io/embed/VIDEO_ID"
      width="640" height="360"
      allow="autoplay; fullscreen; picture-in-picture; encrypted-media; gyroscope; accelerometer; clipboard-write; screen-wake-lock;"
      style="border: none;"></iframe>
  3. 3

    Защитите

    Включите DRM-шифрование и укажите адрес своего авторизационного бэкенда. Перед каждым просмотром Kinescope спрашивает ваш сервер: ответ 200 разрешает просмотр, 403 запрещает.

    cURL · авторизационный бэкенд
    curl -X PUT https://api.kinescope.io/v1/drm/auth \
      -H "Authorization: Bearer $KINESCOPE_API_TOKEN" \
      -H "Content-Type: application/json" \
      -d '{"url": "https://api.example.com/drm/authorize"}'
    
    # Зритель приходит из ссылки встраивания: ?drmauthtoken=USER_JWT
    # Ответ 200 разрешает просмотр, 403 запрещает.

Управляйте плеером из своего кода

Это настоящий плеер Kinescope. Каждая кнопка вызывает метод IFrame API, справа видно выполненный код, а в журнале — события, которые плеер присылает в ответ.

currentTime
0
paused
true
playbackRate
1
quality
—
volume
1
muted
false
Воспроизведение
Скорость
Качество
Звук
Субтитры
player.js
import { load } from '@kinescope/player-iframe-api-loader';

const factory = await load();
const player = await factory.create('player', {
  url: 'https://kinescope.io/xAnmZpXPXd1hF1ttWf6Z48',
  size: { width: '100%', height: '100%' },
});

player.on(player.Events.TimeUpdate, ({ data }) => {
  console.log(data.currentTime, data.percent);
});
// Нажмите кнопку слева, чтобы выполнить вызов
События Загрузится, когда вы долистаете сюда
  1. События появятся, когда плеер загрузится.

Все методы и события — в документации IFrame API.

Библиотеки плеера для веба и мобильных приложений

Восемь библиотек с открытым кодом для одного плеера, по числу скачиваний. Команды установки — из документации и README пакетов.

  • JavaScript IFrame API

    @kinescope/player-iframe-api-loader
    npm install @kinescope/player-iframe-api-loader --save
  • React компонент плеера

    @kinescope/react-kinescope-player
    npm install @kinescope/react-kinescope-player --save
  • Flutter плагин плеера

    flutter_kinescope_sdk
    flutter pub add flutter_kinescope_sdk
  • Vue компонент плеера

    @kinescope/vue-kinescope-player
    npm install @kinescope/vue-kinescope-player --save Vue 3 — с версии пакета 2.0.0
  • iOS Swift SDK

    KinescopeSDK
    pod 'KinescopeSDK' или Swift Package Manager
  • Android Kotlin SDK

    io.kinescope:kotlin-kinescope-player
    implementation 'io.kinescope:kotlin-kinescope-player:<version>' Maven Central
  • React Native компонент плеера

    @kinescope/react-native-kinescope-video
    npm install @kinescope/react-native-kinescope-video react-native-video@6.4.2 @react-native-async-storage/async-storage --save затем npx pod-install
  • Angular компонент плеера

    @kinescope/angular-kinescope-player
    npm install @kinescope/angular-kinescope-player --save

Что можно собрать на API

Методы, события и инструменты за плеером. Каждая карточка ведёт в свой раздел документации.

Загрузка и транскодирование

Загружайте видео, ведите проекты и папки и забирайте аналитику запросами к api.kinescope.io/v1 с API-токеном. Каждый загруженный файл Kinescope перекодирует сам, на тарифе «Супер» — до 4K.

Защита просмотра

DRM-шифрование MPEG-CENC, FairPlay и Widevine на тарифе «Супер», список разрешённых доменов и ваш бэкенд, который одобряет каждый просмотр.

Вебхуки

13 событий в JSON: media.update.status об обработке видео, шесть о трансляциях и шесть о звонках в Speak.

Аналитика

Итоги просмотров, таймлайн и топы по странам, городам, устройствам, ОС и браузерам из /v1/analytics/overview, тепловая карта по секундам ролика и потребление ресурсов из /v1/billing/usage.

Субтитры и главы

Загрузите субтитры в VTT или SRT или распознайте речь одним запросом: Kinescope сделает по дорожке на каждый язык. Через MCP-сервер агент читает текст субтитров и расставляет главы.

Отдельного тарифа для разработчиков нет: API-токен входит в тариф. На «Супере» — от 700 ₽ в месяц с оплатой по факту, транскодирование 0,8 ₽ за минуту. Тарифы и калькулятор

FAQ

Не нашли ответ?
Загляните в инструкции для разработчиков.

Есть ли у Kinescope API для видео?

Да. REST API Kinescope принимает загрузку видео (одним запросом, по ссылке для загрузки, по URL файла и по TUS для больших файлов), перекодирует файлы, управляет трансляциями, защитой и плеерами и отдаёт аналитику. Запросы идут на api.kinescope.io/v1 с API-токеном, методы — в справочнике API.

Где взять API-токен?

В личном кабинете Kinescope, раздел «Настройки → API-токены», или сразу по прямой ссылке. Токен в формате UUID передаётся в заголовке Authorization: Bearer и привязан к одной рабочей зоне. Токен держите на сервере: в клиентский код его не передают.

Есть ли MCP-сервер для ИИ-агентов?

Да, в публичной бете. Kinescope MCP Server работает по адресу https://api.kinescope.io/mcp с Cursor, Claude Desktop, Claude Code и Qwen3; десктопный Qwen3 работает из России без VPN. Агент с вашим API-токеном ищет и правит видео, ведёт проекты и плейлисты, забирает аналитику и управляет трансляциями. Удалять данные и загружать файлы через MCP нельзя. Настройка — в доках MCP.

Какие библиотеки плеера есть у Kinescope?

Для веба — пакеты для React, Vue и Angular и загрузчик IFrame API @kinescope/player-iframe-api-loader. Для мобильных приложений — React Native, Flutter, iOS (Swift) и Android (Kotlin). Исходники — на GitHub, описание пяти библиотек — в доках плеера.

Как управлять плеером из JavaScript?

Через IFrame API. Подключите @kinescope/player-iframe-api-loader, создайте плеер и вызывайте методы play(), pause(), seekTo(), setVolume(), подписывайтесь на события Playing, TimeUpdate, Ended. Попробуйте в демо на этой странице или прочитайте список методов.

Как загрузить большой файл через API?

По протоколу TUS. Ваш бэкенд запрашивает ссылку для загрузки через POST /v2/init, а браузер отправляет файл частями прямо в Kinescope, например через tus-js-client. После обрыва связи загрузка продолжается с того же места. Пример на Go и JavaScript — в доках по TUS.

Может ли мой сервер решать, кто смотрит видео?

Да. С авторизационным бэкендом Kinescope перед просмотром спрашивает ваш сервер, можно ли этому пользователю смотреть это видео или трансляцию. Сервер отвечает 200 или 403 по вашим правилам: курсы, подписки, роли. В строгом режиме видео покажут только после ответа 200. Подробно — в инструкции.

Нужен ли свой сервер лицензий для DRM?

Нет. DRM-шифрование встроено в Kinescope: MPEG-CENC, FairPlay и Widevine. Администратор включает его в настройках проекта на тарифе «Супер», и шифрование действует на все файлы проекта. Сайт должен работать по HTTPS, а в атрибуте allow у iframe нужен encrypted-media. Подробно — в доках по DRM.

Из каких программ можно вести трансляцию?

Из OBS Studio, vMix, платного Zoom, мобильных приложений вроде Larix и аппаратных кодеров. Kinescope принимает сигнал по RTMP и RTMPS (порт 1936) на серверах в России, Казахстане, Европе, США, Бразилии и Азии. Задержка — 5–10 секунд. Эфиры создают через API трансляций, а вебхуки сообщают, когда кодер подключился и отключился.

Как приложение узнает, что видео обработано?

Из вебхука media.update.status: Kinescope отправляет POST с JSON на ваш URL при каждой смене статуса обработки, в том числе done и error. Вебхуки настраиваются через API, список событий — в доках.

Сколько стоит API?

Отдельного тарифа для разработчиков нет, API-токен входит в тариф. На тарифе «Супер» — от 700 ₽ в месяц — вы платите по факту: трафик 1,9 ₽ за ГБ для первых 1 000 ГБ и дешевле дальше, хранение 1,9 ₽ за ГБ, транскодирование 0,8 ₽ за минуту исходного видео один раз при загрузке. Расчёт — на странице тарифов.

Получите API-токен и загрузите первое видео

Бесплатный тариф без привязки карты и ограничений по времени.