Надежный API для
вашего видеоконтента

Простой, быстрый и масштабируемый RESTful API для загрузки, управления и доставки видео. Интегрируйте мощный видеохостинг в ваше приложение за считанные минуты.

Смотреть документацию

API Эндпоинты

Базовый URL: https://api.stream.demo/v1

GET

/videos

Возвращает список всех видео, загруженных текущим пользователем. Поддерживает пагинацию с помощью параметров запроса limit и offset.

Параметры запроса

  • limit (int) - Количество элементов (по умолч. 20)
  • offset (int) - Смещение (по умолч. 0)
200 OK Response
{
  "status": "success",
  "data": {
    "videos": [
      {
        "id": "vid_9k2ls8d7x",
        "title": "Инструкция по API",
        "duration": 145,
        "status": "ready",
        "playback_url": "https://cdn.stream.demo/hls/vid_9k2ls8d7x/master.m3u8",
        "created_at": "2024-10-24T10:30:00Z"
      },
      {
        "id": "vid_3j4mc7v9p",
        "title": "Презентация продукта",
        "duration": 320,
        "status": "processing",
        "playback_url": null,
        "created_at": "2024-10-24T11:15:00Z"
      }
    ],
    "meta": {
      "total": 42,
      "limit": 20,
      "offset": 0
    }
  }
}
POST

/videos/upload

Инициирует загрузку нового видео. Принимает метаданные (название, описание) и возвращает URL для прямой загрузки файла (presigned URL), чтобы избежать нагрузки на ваш сервер.

Тело запроса (JSON)

  • title (string, req) - Название видео
  • description (string, opt) - Описание
201 Created Response
{
  "status": "success",
  "data": {
    "video_id": "vid_8f5ab1c2d",
    "upload_url": "https://upload.stream.demo/v1/store/token_abc123",
    "expires_at": "2024-10-24T12:00:00Z",
    "message": "Используйте upload_url для отправки файла методом PUT"
  }
}
DELETE

/videos/{id}

Удаляет видео и все связанные с ним форматы и миниатюры. Операция необратима. Видео будет немедленно недоступно для воспроизведения.

Параметры пути

  • id (string) - Уникальный идентификатор видео
200 OK Response
{
  "status": "success",
  "message": "Видео vid_8f5ab1c2d успешно удалено"
}