Skip to content

api-spec

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.

kind domain format visibility license

wave.online · Docs · GitHub · Status


What this is

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.

Quick start

# 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/typescript

Authentication

Most 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

Errors

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.

Repo layout

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

Related packages

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

License

Apache-2.0 — see LICENSE and NOTICE.


About

WAVE API — OpenAPI 3.1 specification for all WAVE streaming endpoints

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages