> Public copy of the ViewStream developer guide (also for AI agents). All guides: https://www.viewstream.co.il/developers/guide/index.md · API reference: https://api.viewstream.co.il/docs/

# ViewStream API — developer guide

For developers who connect a CMS, a newsroom system, a backend or an app to ViewStream. Everything Studio does goes
through this API, so an integration can do the same: register and publish video, run channels and their guide, cut
clips, protect playback, read statistics and receive events.

| Guide | Read it for |
|---|---|
| [getting-started.md](getting-started.md) | Base URL, creating an API key in Studio, the scopes table, the first call |
| [conventions.md](conventions.md) | JSON rules, errors (problem+json), pagination, rate limits, idempotency, async jobs and polling, the event stream, time formats |
| [recipes.md](recipes.md) | `curl` walk-throughs: upload a video, catch-up list and search, playback URLs and signed tokens, clips, statistics and raw export, monitors, webhooks with signature verification, purge and pre-warm |
| [sites-delivery-api.md](sites-delivery-api.md) | The public read API behind ViewStream Sites (`/s/v1`) for your own front end |
| [player-integration.md](player-integration.md) | Embedding the player (share link, iframe, player tag), player configurations, player events, beacons |
| [mcp.md](mcp.md) | The MCP server for AI assistants (Claude, ChatGPT, Cursor): API key and scopes, the tools, connecting a client, raw JSON-RPC, errors |
| [nextjs.md](nextjs.md) | Next.js and Vercel: `@viewstream/next` player components, server helpers with cache tags, the signed webhook route, direct uploads, Connect, the starter site |
| [lovable.md](lovable.md) | Lovable and other browser-only apps: public Delivery API + hosted player, no API key; Studio Headless setting; a prompt to paste |
| [wordpress.md](wordpress.md) | The WordPress plugin: automatic posts from new videos, the ViewStream video block, Connect to ViewStream, direct uploads |
| [versioning.md](versioning.md) | What is versioned, how changes are made, where the changelog is |

## Reference material

- **Interactive API reference:** `https://api.viewstream.co.il/docs/` (Swagger UI; served by
  internal/apidocs). "Try it out" calls production.
- **OpenAPI:** `https://api.viewstream.co.il/openapi.yaml` · `/openapi.json` · Sites Delivery:
  `/openapi/sites-delivery.yaml`.
- Topic notes by the engineering team: webhooks,
  event export, playback tokens,
  player configurations, Sites,
  EPG, DVB EIT,
  catch-up exclusions,
  live-to-VOD, CHANGELOG.
