> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://mediakind.ferndocs.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://mediakind.ferndocs.com/_mcp/server.

# VOS overview

VOS is Harmonic's software-based video processing platform. MediaKind acquired
the Harmonic video business in June 2026, and the VOS public API is documented
here alongside mk.io and Beam.

The API surface covers 425 operations across 47 functional areas, versioned with
the VOS build — this reference tracks **1.30.0.0**.

## Functional areas

#### Asset Acquisition

Ingest from file servers, S3, HLS and DASH sources; record from a live
channel; manage source files and segments.

#### Playout Backend

Schedule and control playout, including graphics, logos, and live events.

#### Monitor Service

Service, audio, video, and data profile status, plus the event stream.

#### VCM Variant Channels

Variant channel configuration and delivery prefixes.

#### Scrambling and DRM

CAS and DRM key management, descrambling keys, and SSL certificates.

#### Packaging and origin

OriginEngine, CMAF and DASH packaging, and Syndicate Cloud distribution.

The largest areas by operation count:

| Area                 | Operations |
| -------------------- | ---------- |
| Asset Acquisition    | 49         |
| Playout Backend      | 41         |
| Monitor Service      | 25         |
| VCM Variant Channels | 24         |
| Scrambling DRM       | 21         |
| Syndicate Cloud      | 20         |
| Mux App Configure    | 19         |

## Deployment and base URL

Unlike mk.io and Beam, VOS is deployed **on premises** and addressed per cluster.
Requests go to your own appliance, not a MediaKind-hosted endpoint:

```
https://<your-vos-host>/cluster1/vos-api
```

> **Warning**
>
> The published VOS spec declares no security scheme, so this reference shows no
> auth requirement. Real deployments sit behind your own network controls and
> appliance credentials — confirm the scheme for your cluster with your MediaKind
> contact before writing against it. The SDKs send the standard platform bearer
> token, which you can override per request.

## Using VOS from the SDKs

VOS lives under the `vos` namespace in both SDKs, with its own base URL:

**`TypeScript`**

```typescript title="TypeScript"
import { MediaKind } from "@mediakind/sdk";

const client = new MediaKind({
  apiToken: process.env.MEDIAKIND_API_TOKEN,
  environment: { vos: "https://vos.example.net/cluster1/vos-api" },
});

const status = await client.vos.monitorService.getServiceStatus();
```

**`Python`**

```python title="Python"
import os
from mediakind import MediaKind

client = MediaKind(
    api_token=os.environ["MEDIAKIND_API_TOKEN"],
    environment={"vos": "https://vos.example.net/cluster1/vos-api"},
)

status = client.vos.monitor_service.get_service_status()
```