WAVE is media infrastructure for the agentic internet: one call shape moves live and on-demand media across every transport, and both kinds of user, people and agents, discover it, call it, and pay for it per call. This repository is the OpenAPI 3.1 specification for that call shape — 229 documented endpoint paths across 181 tag groups (streaming, production, analytics, voice, captions, clips, and more), plus generators for client SDKs.
wave.online · Docs · GitHub · Status
A single-file OpenAPI 3.1 document (openapi.yaml) describing the WAVE Enterprise Streaming Platform
API: 229 endpoint paths grouped under 181 tags. It is the source of truth other WAVE packages generate
from — the @wave-av/sdk TypeScript client is built from
this spec.
# Preview the spec in a browser (Redoc)
npx @redocly/cli preview openapi.yaml
# Lint / validate
npx @redocly/cli lint openapi.yaml
# Generate a client SDK (example: TypeScript fetch client)
npx @openapitools/openapi-generator-cli generate -i openapi.yaml -g typescript-fetch -o ./sdk/typescriptMost documented endpoints require a Bearer token (the x402-payable /render operations —
renderVideo, renderPoll, renderEvents — are the exception; they set security: [] and
authenticate via an x402 payment challenge instead):
Authorization: Bearer YOUR_API_KEY
The spec documents a normalized error envelope used across most endpoints (the x402 payment-challenge and device-authorization-flow responses use their own distinct shapes, noted above and in the spec itself):
{ "error": { "code": "...", "message": "...", "details": { "field": "..." }, "suggestions": ["..."], "did_you_mean": ["..."], "doc_url": "..." } }List endpoints support page / perPage pagination, and requests are subject to rate limiting
(responses include a Retry-After header when throttled) — both per the spec's top-level description.
| Path | What it is |
|---|---|
openapi.yaml |
The spec itself — 14,039 lines, 229 paths, 181 tags |
capabilities.json |
Machine-readable lifecycle metadata (this spec is tagged ga, version 3.0.0) |
scripts/public-repo-guard |
CI check that keeps this public mirror free of internal-only content |
| Package | Description |
|---|---|
| @wave-av/sdk | TypeScript SDK generated against this spec |
| @wave-av/adk | Agent Developer Kit |
| @wave-av/mcp-server | MCP server exposing WAVE APIs as tools |
| @wave-av/cli | Command-line interface |
Apache-2.0 — see LICENSE and NOTICE.
Built by WAVE Online, LLC · wave.online · Docs