Skills Development Setting Up Wispr Flow Voice Transcription API

Setting Up Wispr Flow Voice Transcription API

v20260423
wispr-install-auth
This guide provides comprehensive instructions for integrating the Wispr Flow API for advanced voice-to-text transcription. It details both WebSocket streaming (recommended for low latency) and REST API endpoints, covering authentication setup, API key configuration, and accessing short-lived client access tokens. Ideal for building real-time, voice-powered applications, such as code editors or dictation tools.
Get Skill
60 downloads
Overview

Wispr Flow Install & Auth

Overview

Configure Wispr Flow API for voice-to-text transcription. Supports WebSocket (recommended, lower latency) and REST endpoints. Auth via API key (backend) or access tokens (client-side).

Prerequisites

Instructions

Step 1: Configure API Key

# .env
WISPR_API_KEY=your-api-key-here
WISPR_API_URL=https://api.wisprflow.ai

Step 2: WebSocket Connection (Recommended)

const ws = new WebSocket('wss://api.wisprflow.ai/api/v1/ws', {
  headers: { Authorization: `Bearer ${process.env.WISPR_API_KEY}` },
});

ws.on('open', () => {
  // Send context for better transcription
  ws.send(JSON.stringify({
    type: 'config',
    context: { app: 'code-editor', language: 'en' },
  }));
  console.log('Connected to Wispr Flow');
});

ws.on('message', (data) => {
  const result = JSON.parse(data.toString());
  if (result.type === 'transcription') {
    console.log(`Transcript: ${result.text}`);
  }
});

Step 3: REST API (Simpler, Higher Latency)

import requests, os

response = requests.post(
    f"{os.environ['WISPR_API_URL']}/api/v1/transcribe",
    headers={"Authorization": f"Bearer {os.environ['WISPR_API_KEY']}"},
    files={"audio": open("recording.wav", "rb")},
    data={"language": "en"},
)
print(f"Transcript: {response.json()['text']}")

Step 4: Generate Client Access Token

// Backend: generate short-lived token for client use
const response = await fetch('https://api.wisprflow.ai/api/v1/auth/token', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.WISPR_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ expires_in: 3600 }), // 1 hour
});
const { access_token } = await response.json();
// Send access_token to client for direct WebSocket connection

Error Handling

Error Cause Solution
401 Unauthorized Invalid API key Check key at wisprflow.ai/developers
WebSocket disconnect Network interruption Reconnect with backoff
Empty transcript No speech detected Check audio format and quality

Resources

Next Steps

Proceed to wispr-hello-world for your first transcription.

Info
Category Development
Name wispr-install-auth
Version v20260423
Size 2.97KB
Updated At 2026-04-28
Language