canonical: https://jentic.com/apis/developer.vonage.com/vonage

# Vonage Video API (formerly OpenTok/TokBox)

The Vonage Video API, formerly OpenTok, powers real-time video sessions and everything around them. You create sessions, send signals, inspect connections and streams, and mute streams or whole sessions. You record sessions as archives with custom layouts and storage, run live broadcasts, dial SIP endpoints into a session, add live captions, and start render and audio-connector jobs. Account endpoints manage projects and their secrets, so an integration can provision and run video end to end.

## For AI agents

Create and manage Vonage Video (OpenTok) sessions: signal and mute participants, record sessions as archives, run live broadcasts, dial SIP, add captions, and manage projects. Covers real-time video from session creation to recording and streaming.

## Scope

Does not handle standalone SMS, voice-call billing, or phone-number provisioning. Use for Vonage Video sessions, archives, broadcasts, and related media only.

## Capabilities

- Create video sessions and send signals to a session or a single connection
- List and inspect connections and streams, and mute individual streams or a whole session
- Record sessions as archives with custom layouts, storage, and stop control
- Run live broadcasts and control their layout and streams
- Dial SIP endpoints into a session, send DTMF, and add live captions
- Manage projects, their secrets, and render and audio-connector jobs

## Use cases

### Agent-Driven Video Session Orchestration

An AI agent sets up a video call by creating a session, then manages it in flight: muting a disruptive stream, sending a signal to a connection, and starting an archive to record the call. Because every control is an API call, an assistant can run a moderated session without a human in the console.

Example prompt: Create a session, start an archive recording, then mute a named stream when asked and stop the archive at the end

### Session Recording and Storage

Record video sessions as archives, apply a custom layout, and route the output to configured storage. A content team can capture every session, list past archives, and fetch a specific archive by id for later processing.

Example prompt: Start an archive for a session with a custom layout, then list the project's archives and fetch the new one by id

### Live Broadcast and SIP

Stream a session to a live audience and bring phone participants in over SIP. The broadcast endpoints start, stop, and lay out the stream, while the dial endpoint connects a SIP endpoint and DTMF carries keypad input into the session.

Example prompt: Start a live broadcast for a session, dial a SIP endpoint into it, and stop the broadcast when the session ends

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/session/create` | Create a video session |
| POST | `/v2/project/{apiKey}/session/{sessionId}/signal` | Send a signal to a session |
| GET | `/v2/project/{apiKey}/session/{sessionId}/connection` | List connections in a session |
| POST | `/v2/project/{apiKey}/archive` | Start an archive recording |
| GET | `/v2/project/{apiKey}/archive/{archiveId}` | Fetch an archive by id |
| POST | `/v2/project/{apiKey}/broadcast` | Start a live broadcast |
| POST | `/v2/project/{apiKey}/dial` | Dial a SIP endpoint into a session |
| POST | `/v2/project/{apiKey}/render` | Start an experience render job |

## Key resources

- **Sessions** — Video sessions with signals, connections, streams, mute, and migrate controls
- **Archives** — Session recordings with layout, storage, and stop control
- **Broadcasts** — Live streams of a session with layout and stream control
- **SIP and Captions** — SIP dial, DTMF, live captions, render, and audio-connector jobs
- **Projects** — Account projects and their secrets

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 57 / 100
- **Maturity:** Foundational
- **Dimensions:**
  - Foundational Compliance: 61 / 100
  - Developer Experience & Jentic Compatibility: 58 / 100
  - AI-Readiness & Agent Experience: 42 / 100
  - Agent Usability: 94 / 100
  - Security: 50 / 100
  - AI Discoverability: 63 / 100
- **View full report:** https://jentic.com/apis/developer.vonage.com/vonage/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** By hand you provision project credentials, build the X-OPENTOK-AUTH token, learn the session, archive, and broadcast models, and wire your own polling for recordings before a call runs. Through Jentic you connect once from the API Directory and your agent calls the operations by intent.
- **Permission scoping:** You grant your agent only the operations it needs, such as creating sessions and recording archives while withholding project secret management. The project key and session id travel in the URL path, so a rule can bind the agent to a single project's operations.
- **Credential handling:** Your Video credential is stored encrypted on your own Jentic One instance and injected into the X-OPENTOK-AUTH header at execution time, never placed in the agent's prompt, logs, or context. You rotate or revoke it in one place.
- **Discovery method:** Agents search Jentic by intent such as 'create a video session' or 'start an archive', and Jentic returns the matching Vonage Video operation with its input schema so the agent calls the right endpoint without reading the reference docs.

## Related APIs

- **Twilio Video** — A programmable video platform with rooms, recordings, and compositions.
- **Agora** — Real-time voice and video SDKs and APIs for interactive sessions.
- **Zoom Video SDK** — Embeddable video sessions built on Zoom's media infrastructure.
- **AssemblyAI** — Transcribe recorded session archives into searchable text.

## FAQ

### What authentication does the Vonage Video API use?

The spec declares an apiKey scheme that sends a token in the X-OPENTOK-AUTH header, so every request carries that credential. Through Jentic, your own Jentic One instance stores it encrypted and attaches it to each call rather than exposing it to the agent.

### Can I record a video session with the Vonage Video API?

Yes. You start an archive for a session, optionally apply a custom layout, and route the output to configured storage, then stop the archive when the session ends. You can list a project's archives and fetch any one by its id.

### What are the rate limits for the Vonage Video API?

The OpenAPI spec does not state rate limits. Check the official Vonage Video documentation at https://developer.vonage.com/en/video/ for current limits before scaling up sessions and recordings.

### How do I run Vonage Video through Jentic?

Add the Vonage Video API from the Jentic API Directory and connect your credential once. Your agent then searches by intent such as 'create a video session' and calls the matching operation. To run it on your own infrastructure, install Jentic One from its GitHub repo.

### Can I restrict which Vonage Video operations my agent is allowed to call?

Yes. You grant your agent only the operations it needs, such as creating sessions and recording archives while withholding project secret management. The project key and session id sit in the URL path, so a rule can pin the agent to a specific project's operations, and every call is logged.

### Is there a Vonage Video API MCP server?

You don't need an MCP server to use the Vonage Video API with your agent. Jentic connects it directly from the API Directory: import it, connect your credential once, and your agent can create and manage sessions without another server loading tool definitions into its context.
