whisper-1 is a base URL change.
the whole migration
parameter compatibility
why language is ignored
Not laziness — it is the point. Kazakh and Russian share one output vocabulary, so the model is never told which language to expect and a speaker can switch mid-sentence. Forcing one language per utterance is exactly the Whisper limitation this model exists to remove, so honouring language would make the model worse. It stays accepted so existing clients don’t break.
srt and vtt are refused
They return 400 with a reason, rather than silently handing back JSON:
verbose_json returns an empty segments array for the same reason — it is not an error, there is simply nothing truthful to put there. Word timings are on the roadmap.
response shapes
Prefer the native
/v1/transcribe endpoint for new code — same auth and price, but it also returns audio_seconds, credits_charged, and real-time factor, which the OpenAI shape has no room for.