Voice operations API

Build with voice. Ship faster.

Submit any URL or file. Our API handles extraction, transcription, subtitle export, semantic search, and AI repurposing — all through a single clean REST interface.

import { WisprsClient } from '@wisprs/sdk';const client = new WisprsClient({ apiKey: process.env.WISPRS_API_KEY! });// Submit a YouTube URL for transcriptionconst job = await client.transcriptions.create({  source: { url: 'https://youtube.com/watch?v=dQw4w9WgXcQ' },  language: 'en',});// Wait for completion (polls every 2s)const result = await client.jobs.wait(job.id);console.log(result.transcriptText);// Export as SRT subtitlesconst srt = await client.transcriptions.export(job.id, { format: 'srt' });

Everything after the microphone

URL ingestion · async jobs · subtitle exports · searchable corpora · repurposing pipelines

URL Ingestion

YouTube, TikTok, Instagram, podcasts, direct audio/video files. One endpoint, any source.

Async Jobs + Webhooks

Submit a job, get a job ID back immediately. We call your webhook when it's done. HMAC-signed.

AI Repurposing

Summaries, chapters, quote extraction, blog posts, Twitter threads — from any transcript.

SRT / VTT Export

Subtitle-ready formats in txt, srt, vtt, json, md, or docx. One line, any format.

Semantic Search

Search your entire transcript library by meaning, not just keyword. Vector-powered.

MCP Ready

Drop the Wisprs MCP server into any Claude or Cursor workflow. Voice ops for agents.

Built for production from day one.

100%

Video coverage

We extract audio directly from any URL — no dependency on closed captions or platform embeds.

100+

Languages supported

Automatic language detection, or specify the language explicitly for best accuracy.

$0

Base transcription cost

No per-minute transcription fees on our base plan. Pay for API requests, not audio minutes.

Simple, usage-based pricing

Pay for what you use. No minimums, cancel anytime.

Free

$0/mo

  • 100 req / mo
  • Overage: Blocked
  • Audio: 30 min / mo

Basic

$9/mo

  • 1,000 req / mo
  • Overage: $0.009 / req
  • Audio: $0.008 / min
Most popular

Pro

$29/mo

  • 5,000 req / mo
  • Overage: $0.006 / req
  • Audio: $0.006 / min

Ultra

$99/mo

  • 25,000 req / mo
  • Overage: $0.004 / req
  • Audio: $0.004 / min

Need higher volume or SLAs? Talk to us →

The API surface

Every operation is described in a machine-readable OpenAPI 3.1 spec with typed responses.

POST/api/v1/transcriptionsCreate a transcription job from a URL source
GET/api/v1/jobs/{id}Poll job status: queued → processing → completed
GET/api/v1/transcriptions/{id}Fetch transcript text and metadata
GET/api/v1/transcriptions/{id}/exportExport as txt, srt, vtt, json, md or docx
POST/api/v1/transcriptions/{id}/summaryStructured summary of a transcript
POST/api/v1/transcriptions/{id}/repurposeShow notes, threads, blog drafts by mode
GET/api/v1/library/searchSemantic search across your transcript library
GET/api/v1/usageRequest counts and logs for your key

Full spec: openapi.json · openapi.yaml · interactive reference

CLI

@wisprs/cli
npm i -g @wisprs/cli
wisprs transcribe "<url>" --wait

TypeScript SDK

@wisprs/sdk
npm i @wisprs/sdk

MCP server

@wisprs/mcp
npx @wisprs/mcp

Start free. No credit card, no sales call.

Fully self-serve: create an account, generate an API key, make your first call in under two minutes.

1

Create a free account

Sign up on wisprs.co — the Free tier includes 30 transcription minutes per month and 100 API requests, no card required.

Sign up
2

Generate your API key

Self-serve key creation in Dashboard → Settings → API. Keys look like wisprs_sk_… and can be rotated anytime.

Dashboard
3

Make your first call

curl -H "Authorization: Bearer $WISPRS_API_KEY" https://wisprs.co/api/v1/usage — or use the CLI above.

Quickstart

Versioning & deprecation policy

All endpoints live under the current major prefix /api/v1/. Breaking changes ship only under a new major prefix — the previous major stays reachable for at least 6 months after its replacement goes live.

When an operation is deprecated, it is marked deprecated: true in the OpenAPI spec, and live responses carry standard Deprecation and Sunset HTTP headers with the removal date. Removed or renamed response fields are announced on this page and in the changelog before they ship.

Currently there are no deprecated operations. Questions about compatibility: contact us.

Transcription API for Audio & Video | Wisprs