OpenAI whisper-1 shutdown Feb 2027: a Sume STT alternative
OpenAI removes whisper-1 on Feb 26, 2027. Sume's STT request names no provider model, takes a public audio URL, and caps reserved duration at 10 minutes.

If you need a Whisper API alternative before February 26, 2027, Sume's speech-to-text endpoint is one option: POST /v1/stt-1.0/transcribe takes a public HTTPS audio_url and has no provider model field, so there is no model id to migrate again when a vendor retires one.
What did OpenAI announce?
OpenAI's deprecations page says that on August 26, 2026 it notified developers using whisper-1, gpt-4o-transcribe, gpt-4o-mini-transcribe and gpt-4o-transcribe-diarize that they will be removed from the API on February 26, 2027. The recommended replacements are gpt-live-transcribe or gpt-transcribe.
What does a migrated call look like?
| Step | On Sume STT 1.0 |
|---|---|
| Model id | None sent; the route is /v1/stt-1.0/transcribe |
| Audio | audio_url: a public HTTPS URL, not an uploaded file |
| Language | language_code hint, or omit for auto-detect |
| Length | duration_seconds 1 to 600 (maximum 10 minutes) |
| Waiting | mode: "async" returns status_url to poll |
Why does the model id matter for a retirement?
A retirement bites where your code names the model: a string such as whisper-1 in config, in a retry path and in an eval harness. Against Sume's request the body is a closed object with audio_url as the only required field, so there is no model string to change on a later vendor removal. What you gain is a stable call shape; what you give up is choosing the underlying model.
How should I handle audio longer than 10 minutes?
Split it before sending and set duration_seconds on each piece. The sync wait is bounded at 30 seconds in the HTTP request, so use mode: "async" and poll status_url rather than resubmitting. For a bulk flow see batch transcription, and for a Korean or mixed-language recording the language hint post.
Sources
Related posts
More in Developers
- OpenCode MCP timeout: 5000 ms tools fetch vs Sume jobs_wait
OpenCode's remote MCP timeout is in milliseconds, default 5000, and covers fetching tools. Sume's jobs_wait holds up to 55 seconds per call, a separate limit.
- OpenRouter video provider.options on Sume: rejected, not dropped
OpenRouter lists provider passthrough configuration. Sume v1 runs one backend per model, so a non-empty provider.options returns 400 unsupported_parameter.
- OpenRouter video seed on Sume: no v1 model accepts it
OpenRouter lists seed for deterministic video generation. On Sume no v1 video model accepts seed: each reports seed false and the field is rejected.
- OpenRouter video size parameter on Sume: 400 unsupported_parameter
On Sume every video model reports supported_sizes null, so a size parameter returns 400 unsupported_parameter. Send resolution and aspect_ratio instead.
Written by Sume