Draft: these docs describe OctaVideo as it will be at launch; some features may not be live yet.
OctaVideoDocs

Get a video

GET
/videos/{videoId}

Returns one video, including its processing status. Poll this endpoint after an upload or import: encoding_status moves from queued to processing to ready (or failed), and progress goes from 0 to 100.

Authorization

AccessKey
headerAccessKey<token>

The private key of a library, starting with ovk_. Copy it from API & embeds in the console, keep it on your server, and rotate it there if it leaks.

Path Parameters

videoId*string

ID of the video.

Formatuuid

Header Parameters

AccessKey*string

The library's private key. Same value as the AccessKey security scheme; listed here so code samples include it.

Response Body

The video.

application/json
  1. response
data*
Example Request
curl -X GET 'https://api.octavideo.tech/api/v1/videos/6f1c2b9e-4a7d-4f3e-9b8a-2d5c7e1f0a34' \  -H 'AccessKey: ovk_YOUR_LIBRARY_PRIVATE_KEY'
Example Response
{  "data": {    "id": "6f1c2b9e-4a7d-4f3e-9b8a-2d5c7e1f0a34",    "library_id": "0b8e5d3a-1c2f-4e6a-8b7d-9f0a1b2c3d4e",    "title": "Lesson 1: Introduction",    "description": "",    "encoding_status": "processing",    "progress": 42,    "duration_seconds": 754.2,    "size_bytes": 412337152,    "chapters": [],    "created_at": "2026-10-25T09:30:00Z",    "stage": "transcode"  }}