API
Written By Anton
Last updated 14 days ago
QuickWhisper exposes a local Local REST API that lets you integrate with AI agents, automation tools, and custom scripts. All data stays on your Mac - the server runs locally and never leaves your machine.
API version: 1.1
Getting Started
Open Settings β Developer API
Enable Local API Server
The server starts on
http://127.0.0.1:52778by default
Configuration
Endpoints
All endpoints return JSON with Content-Type: application/json; charset=utf-8.
Status - GET /api/v1/status
Returns server status, app version, and currently active models.
Response
{
"status": "ok",
"version": "3.5.0",
"apiVersion": "v1",
"activeVoiceModel": {
"id": "large-v3-turbo",
"name": "Large V3 Turbo"
},
"activeIntelligenceModel": {
"id": "gpt-4o",
"provider": "OpenAI",
"displayName": "GPT-4o"
}
}
List of Voice Models - GET /api/v1/voice-models
Lists all available voice (transcription) models.
Response
{
"models": [
{
"id": "large-v3-turbo",
"name": "Large V3 Turbo",
"provider": "whisper",
"isActive": true
},
{
"id": "base",
"name": "Base",
"provider": "whisper",
"isActive": false
}
]
}
Active Voice Model - GET /api/v1/voice-models/active
Returns the currently active voice model.
Response
{
"id": "large-v3-turbo",
"name": "Large V3 Turbo",
"provider": "whisper"
}
List of Intelligence Models - GET /api/v1/intelligence-models
Intelligence models are LLM configurations used for transcript summarization.
Response
{
"models": [
{
"modelId": "gpt-4o",
"provider": "OpenAI",
"name": "GPT-4o",
"isActive": true
}
]
}
Active Intelligence Model - GET /api/v1/intelligence-models/active
Returns the currently active intelligence model.
Response
{
"modelId": "gpt-4o",
"provider": "OpenAI",
"name": "GPT-4o"
}
List of transcriptions - GET /api/v1/transcriptions
Lists all transcriptions in your history.
Response
{
"count": 42,
"transcriptions": [
{
"category": "recording",
"date": "2026-02-23T04:22:47Z",
"duration": 36394,
"id": "B2DDF22B-C0B2-4A42-83D4-D1D4A34EC362",
"modified": "2026-02-23T04:22:47Z",
"name": "Recording 2026-02-23 at 15.22.06"
}
]
}Full transcript - GET /api/v1/transcriptions/:id
Returns the full transcript for a specific transcription, including all segments, tags, and metadata.
Response
{
"count": 42,
"transcriptions": [
{
"category": "recording",
"date": "2026-02-23T04:22:47Z",
"duration": 36394,
"id": "B2DDF22B-C0B2-4A42-83D4-D1D4A34EC362",
"modified": "2026-02-23T04:22:47Z",
"name": "Recording 2026-02-23 at 15.22.06"
}
]
}Recent transcript - GET /api/v1/transcriptions/recent
Returns the full transcript for the most recent transcription, including all segments, tags, and metadata.
Response
{
"id": "2025-01-15_14-30-00_Meeting-Notes",
"name": "Meeting Notes",
"category": "recording",
"date": "2025-01-15T03:30:00Z",
"modified": "2025-01-15T04:12:00Z",
"isTranscribed": true,
"language": "en",
"voiceModel": "large-v3-turbo",
"segmentCount": 128,
"segments": [
{
"end": 35920,
"id": "35CFDCDE-827E-4FE7-B237-C3EB8FB72B87",
"label": "Highlight",
"speaker": {
"id": "E51D01F4-E4E2-4D29-A089-C4D814D08287",
"name": "Speaker 2"
},
"start": 26080,
"text": "Sample segment"
}
],
"speakers": [
{
"id": "E51D01F4-E4E2-4D29-A089-C4D814D08287",
"name": "Speaker 2",
}
]
}
Transcript summary - GET /api/v1/transcriptions/:id/summary
Returns the cached AI summary for a transcription (if one exists).
Response
{
"id": "2025-01-15_14-30-00_Meeting-Notes",
"summary": "The team discussed Q1 goals and assigned action items...",
"prompt": "Summarize this meeting transcript",
"inputTokens": 4200,
"outputTokens": 350
}