--- id: speechmatics-batch version: "0.5.0" license: MIT license_treatment: permissive maintenance: active --- # speechmatics-batch — Speechmatics Batch API Client License: permissive · Maintenance: active · Downloads: 75.4K/mo ## What it is and what it does This is an async Python wrapper around the Speechmatics Batch API for speech-to-text transcription. It handles job submission, status polling, and result retrieval with built-in support for speaker diarization, multi-language translation, and summarization. The client manages authentication via environment variables or explicit API keys, including optional JWT token refresh for long-running applications. The package is designed for developers who need to transcribe audio files asynchronously without blocking. It provides a high-level interface (simple transcribe method) for quick jobs and a lower-level API for manual job management, custom polling intervals, and fine-grained configuration. Output is available in JSON, plain text, or SRT subtitle formats. Use it for: - Transcribe a batch of audio files with speaker labels and confidence scores in a single async workflow. - Build a web service that accepts audio uploads and returns transcripts in multiple languages via translation. - Monitor long-running transcription jobs with custom polling intervals and timeout handling. - Generate SRT subtitles from audio for video content with automatic speaker identification. - Integrate speech-to-text into a data pipeline with JWT token refresh for credential security. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Async Python client for submitting audio files to Speechmatics Batch API, monitoring transcription jobs, and retrieving results in multiple formats with support for speaker diarization, translation, and summarization. Yes. The package is actively maintained, has no known vulnerabilities, uses permissive MIT licensing, and offers low install friction. It is well-suited for developers who need async batch transcription with Speechmatics. The only caveat is that it is still in Beta (Development Status 4), so API or behavior changes are possible in future releases. ## Install pip install speechmatics-batch uv add speechmatics-batch poetry add speechmatics-batch ## Installing speechmatics-batch Before you install: Low install friction with a pure-Python wheel distribution. Active maintenance with recent commits and a stable release cadence since June 2025. Dependencies are lightweight async libraries (aiohttp, aiofiles, typing-extensions), all widely used and well-maintained. License in practice: MIT license permits commercial and private use with minimal restrictions—you may use, modify, and distribute this package freely as long as you include the license notice. Quickstart: import asyncio from speechmatics.batch import AsyncClient async def main(): async with AsyncClient() as client: result = await client.transcribe("audio.wav") print(result.transcript_text) asyncio.run(main()) Requires SPEECHMATICS_API_KEY environment variable or explicit api_key parameter; audio file must exist and be readable. Verify before relying: - Whether the package handles very large audio files or has practical size limits in practice. - Performance characteristics and typical latency for job submission and polling cycles. - Exact retry and backoff behavior during transient API failures. ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 75.4K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags speechmatics batch transcription client, async speech-to-text api, audio transcription with diarization, batch speech recognition python, speechmatics api wrapper, async audio processing, transcription job management, async-api, speech-to-text, batch-processing [View on SkillFed](https://skillfed.io/packages/speechmatics-batch) · [View on PyPI](https://pypi.org/project/speechmatics-batch/)