Skip to content

wave-av/sdk

sdk

Official TypeScript SDK for the WAVE API — 42 API module subpaths covering streaming, production, device management, analytics, content, and monetization behind a single Wave client. Most modules are SDK-side TypeScript surface only; see capability statuses for what has a live fleet backend today.

kind domain lang visibility

docs · npm · repo · Docs · Status

This README is machine-generated from WAVE's grounded Single Source of Truth — every factual claim below traces to a resolver that npm run verify checks against the live repo and live endpoints. Nothing here is asserted without a receipt.


Quick start

npm install @wave-av/sdk
import { Wave } from "@wave-av/sdk";

const wave = new Wave({
  apiKey: process.env.WAVE_API_KEY!,
  organizationId: "org_123",
});

// Create and start a live stream
const stream = await wave.pipeline.create({
  title: "My Live Stream",
  protocol: "webrtc",
  recording_enabled: true,
});
await wave.pipeline.start(stream.id);

// Text-to-speech
const synthesis = await wave.voice.synthesize({
  text: "Hello from WAVE",
  voice_id: "voice_abc",
});

Capabilities

Capability Status
Auto-captions, translation, burn-in via wave.captions lib
Video clips, exports, AI highlights via wave.clips lib
Monetization, subscriptions, tips, payouts via wave.creator (SDK TypeScript surface; no fleet backend yet) planned
Video editing, tracks, transitions, effects via wave.editor lib
Desktop Node fleet management, health, commands via wave.fleet (SDK TypeScript surface; no fleet backend yet) planned
x402 and MPP card-rail agent payments with scope-gate and settlement-guard, shipped at the WAVE gateway; reachable from the SDK today via the base WaveClient request methods (no dedicated wrapper module yet) ga
AI auto-directing (Autopilot), suggestions, overrides via wave.ghost (SDK TypeScript surface; no fleet backend yet) planned
Multi-region failover, replication, topology via wave.mesh (SDK TypeScript surface; no fleet backend yet) planned
Telephony bridging via wave.phone — core features are planned in the fleet SSOT, not yet shipped planned
Live stream lifecycle, protocols, recordings, viewer metrics via wave.pipeline lib
Podcast publishing/distribution via wave.podcast — core features are planned in the fleet SSOT, not yet shipped planned
Virtual Device Bridge (NDI/ONVIF/VISCA/Dante to USB UVC/UAC) via wave.prism (SDK TypeScript surface; no fleet backend yet) planned
Analytics, BI dashboards, revenue metrics via wave.pulse (SDK TypeScript surface; no fleet backend yet) planned
Multi-camera production, scenes, transitions, graphics, audio mixing via wave.studio (SDK TypeScript surface; no fleet backend yet) planned
Transcription with speaker diarization via wave.transcribe lib
Recording storage, VOD, archive policies via wave.vault (SDK TypeScript surface; no fleet backend yet) planned
Text-to-speech via wave.voice.synthesize(); voice-clone methods exist as SDK client surface but are not backed by the wave-voice product yet lib
Agent routing (route/pool) and an OpenAI-compatible proxy for LLM/agent traffic, shipped at the WAVE gateway; reachable from the SDK today via the base WaveClient request methods (no dedicated wrapper module yet) ga

The receipts

Every claim below is checked by npm run verify against the live repo or endpoint — a non-pass verdict fails the gate.

Claim How it's verified
The base WaveClient exposes a generic protected request() method that any endpoint — including gateway/dispatch routes without a dedicated wrapper module — can be reached through resolved by grepping src/client.ts
Documentation surface is docs.wave.online resolved by grepping package.json
Licensed Apache-2.0 resolved by grepping package.json
42 independently-importable API module subpaths are declared under package.json exports, plus the package root resolved by grepping package.json
Requires Node.js >=18.0.0 resolved by grepping package.json
The npm package is published as @wave-av/sdk resolved by grepping package.json
Current package.json version is 2.1.0-next.0 resolved by grepping package.json
Each API module is independently importable via a package.json subpath export (e.g. @wave-av/sdk/pipeline) resolved by grepping package.json
wave.voice.synthesize() implements text-to-speech; the SDK also declares cloneVoice() client methods that are not backed by the wave-voice product resolved by grepping src/voice.ts
A single Wave client class in src/index.ts composes every API module as a readonly property resolved by grepping src/index.ts
Takes zod ^3.22.0 as a peer dependency for runtime validation resolved by grepping package.json

Topics

sdk · typescript · streaming · video · audio · production · webrtc · ndi · srt · clips · voice · transcription · captions · analytics


About

Official WAVE TypeScript SDK — 34 API modules for streaming, production, analytics

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages