ByteArk Videos API

Video-on-demand records and playback in ByteArk Stream.

Operations 3

GET /videos List videos #
POST /videos Create video(s) #
GET /videos/{videoKey} Get a video #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/bytark-videos-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

bytark-videos-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ByteArk Live Videos API
  description: 'Representative OpenAPI description of ByteArk''s public developer surfaces: the Stream Video-on-Demand API (create / upload / list / get videos) and the Fleet Live Streaming (live transcode) API. S3-compatible Storage and CDN delivery are documented separately by ByteArk; the Storage service is accessed via standard S3 clients and is not fully re-specified here.'
  termsOfService: https://www.byteark.com/en/terms
  contact:
    name: ByteArk Support
    url: https://www.byteark.com/en/contact
  version: '1.0'
servers:
- url: https://stream.byteark.com/api/v1
  description: ByteArk Stream (Video on Demand)
- url: https://fleet.byteark.com/api
  description: ByteArk Fleet (Live Streaming / CDN)
security:
- bearerAuth: []
tags:
- name: Videos
  description: Video-on-demand records and playback in ByteArk Stream.
paths:
  /videos:
    get:
      operationId: listVideos
      tags:
      - Videos
      summary: List videos
      description: Returns a paginated list of videos in the account, optionally filtered by project and tags. Use `includes` to expand related resources.
      parameters:
      - name: projectKey
        in: query
        required: false
        schema:
          type: string
        description: Filter videos by project key.
      - name: tagIds
        in: query
        required: false
        schema:
          type: array
          items:
            type: string
        description: Filter videos by tag IDs.
      - name: includes
        in: query
        required: false
        schema:
          type: array
          items:
            type: string
            enum:
            - project
            - player
            - tags
            - creator
            - vod.source
        description: Expand the response with related resources.
      - name: page
        in: query
        required: false
        schema:
          type: integer
          minimum: 1
        description: Page index (starts at 1).
      - name: size
        in: query
        required: false
        schema:
          type: integer
        description: Number of results per page.
      responses:
        '200':
          description: A paginated list of videos.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VideoList'
    post:
      operationId: createVideos
      tags:
      - Videos
      summary: Create video(s)
      description: Creates one or more video records within a project. The response includes each video's key and primary HLS playback URL. A source file is then uploaded to the returned video key.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateVideosRequest'
      responses:
        '200':
          description: The created video records.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Video'
  /videos/{videoKey}:
    get:
      operationId: getVideo
      tags:
      - Videos
      summary: Get a video
      description: Retrieves information about a single video by its key.
      parameters:
      - name: videoKey
        in: path
        required: true
        schema:
          type: string
        description: The unique key of the video.
      responses:
        '200':
          description: The video information.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Video'
components:
  schemas:
    CreateVideosRequest:
      type: object
      required:
      - projectKey
      - videos
      properties:
        projectKey:
          type: string
          description: The project the videos belong to.
        videos:
          type: array
          items:
            type: object
            required:
            - title
            properties:
              title:
                type: string
              tags:
                type: array
                items:
                  type: string
    VideoList:
      type: object
      properties:
        total:
          type: integer
        from:
          type: integer
        to:
          type: integer
        currentPage:
          type: integer
        lastPage:
          type: integer
        perPage:
          type: integer
        data:
          type: array
          items:
            $ref: '#/components/schemas/Video'
    Video:
      type: object
      properties:
        id:
          type: string
        key:
          type: string
          description: Unique video key used for uploads and playback references.
        title:
          type: string
        coverImage:
          type: object
          properties:
            sizes:
              type: object
              additionalProperties:
                type: string
        primaryPlaybackUrl:
          type: object
          properties:
            hls:
              type: object
              properties:
                url:
                  type: string
                  format: uri
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'Personal access token passed as `Authorization: Bearer <token>`. Tokens are generated in the ByteArk Personal Access Token settings. Fleet live channel endpoints instead authenticate with a serviceId / apiKey path pair.'