OpenAI Kills 12 Model APIs Tomorrow (Oct 23) — Check Your Code Tonight
OpenAI Kills 12 Model APIs Tomorrow (Oct 23) — Check Your Code Tonight Tomorrow morning, requests to o1, o4-mini, gpt-4-0613, and nine other OpenAI model IDs start failing. Not warning. Failing. OpenAI announced this
OpenAI Kills 12 Model APIs Tomorrow (Oct 23) — Check Your Code Tonight
Tomorrow morning, requests to o1, o4-mini, gpt-4-0613, and nine other OpenAI model IDs start failing. Not warning. Failing.
OpenAI announced this batch back in April, and the deprecation emails went out months ago — which is exactly why half of us forgot. The Sep 28 batch (babbage-002, davinci-002, gpt-3.5-turbo-1106) already died quietly while everyone was watching this one. This is the big one: the last of the GPT-3.5/GPT-4 names and the whole o-series mini lineup, gone from the API in about 24 hours.
If any of your code calls OpenAI, tonight is the night to check. Here's the list, the map, and the checklist.
What's dying tomorrow
From OpenAI's deprecations page (the April 22 "Legacy GPT model snapshots" batch):
| Dying Oct 23 | OpenAI's replacement |
|---|---|
gpt-3.5-turbo-0125 (+ bare gpt-3.5-turbo) |
gpt-5.6-terra |
gpt-4-0613 (+ bare gpt-4) |
gpt-5.6-sol |
gpt-4-turbo, gpt-4-1106-preview
|
gpt-5.6-sol |
gpt-4o-2024-05-13 |
gpt-5.6-sol |
gpt-4.1-nano-2025-04-14 (+ bare gpt-4.1-nano) |
gpt-5.6-luna |
o1-2024-12-17 (+ bare o1) |
gpt-5.6-sol |
o1-pro-2025-03-19 (+ bare o1-pro) |
gpt-5.6-sol (reasoning mode pro) |
o3-mini-2025-01-31 (+ bare o3-mini) |
gpt-5.6-sol |
o4-mini-2025-04-16 (+ bare o4-mini) |
gpt-5.6-terra |
gpt-image-1 |
gpt-image-2.5-sunburst / gpt-image-2.5-flare
|
Fine-tunes of the above (ft-gpt-3.5-turbo, ft-gpt-4, ft-gpt-4.1-nano, ft-o4-mini...) |
Rebuild on the new base |
Three gotchas that catch people:
-
The bare aliases die too. Code calling
o1instead ofo1-2024-12-17is affected. OpenAI listed both, and the alias dies with the snapshot. This is the one that gets the cron jobs nobody remembers writing. -
Fine-tunes die with their base model. If you fine-tuned
gpt-3.5-turboin 2024, inference on that fine-tune stops tomorrow. Rebuilding a fine-tune takes real time — if you have one, check it first, because this is the item that doesn't fit in an evening. -
gpt-4o-2024-05-13is a GPT-4o snapshot, not GPT-4. If you pinned it for reproducibility — which was the responsible thing to do at the time — you're on this list and you might not realise it.
What's NOT affected: ChatGPT itself, Azure OpenAI (different retirement calendar — check your Azure dates), and the newer 4o snapshots, which live until Jan 14, 2027.
The tonight checklist
Don't read docs. Do this:
- [ ] Grep every repo for the dead IDs. Not just
o1— grep the dated snapshots too. Include config files,.env.examplefiles (they reveal what production expects), Dockerfiles, and Terraform/Helm values. - [ ] Check env vars and secrets managers. The model name often lives in an env var, not in code. Check your secrets manager, your CI variables, and your deployment platform's env panel.
- [ ] Check scheduled jobs and queues. A nightly batch job calling
gpt-4-0613will fail silently and look like "the queue is just slow" until someone checks the backlog. This is the failure mode that costs you a weekend. - [ ] Check prompt-management configs. If you use any prompt versioning tool or template system, the model ID is probably pinned there, not in your application code.
- [ ] Swap and smoke-test. Replace with the mapped model, then run one real request per changed call site before you sleep. Don't trust "the SDK handles it" — the parameter shapes differ slightly between generations, especially
reasoning/ effort params on the o-series replacements. - [ ] Fine-tunes: triage now. If a fine-tune is dying, you cannot fix it tonight. Decide: rebuild on the new base this week, or fall back to the base model temporarily. Either way, know which one before tomorrow.
- [ ] Image pipelines: test
gpt-image-2.5output. Image model swaps change output style. If your product shows these images to users, eyeball a few before committing.
What I'd actually do
If I found gpt-3.5-turbo in one place tonight: swap to gpt-5.6-terra, run a smoke test, go to bed. That's a 20-minute job and it's the most common case.
If I found a pinned gpt-4o-2024-05-13: swap to gpt-5.6-sol, but replay a handful of production prompts against it and diff the outputs. Pinned snapshots were pinned for a reason — behaviour will shift, and "the tests pass" isn't enough when the model is a different generation. Budget an hour.
If I found a fine-tune: accept tonight that it's not getting fixed tonight. Point the call at the base replacement as a stopgap, and schedule the rebuild. The stopgap will be dumber than your fine-tune — tell whoever owns that feature.
And write the model ID into one place this time — a config constant, not twelve string literals across four services. Future-you, staring at the Jan 14 4o shutdown, will be grateful.
The bigger pattern
This isn't a one-off. OpenAI's calendar keeps going: evals go read-only Oct 31, the prompts API and Agent Builder die Nov 30, older image models Dec 1, first-gen GPT-5 snapshots Dec 11, and the rest of GPT-4o on Jan 14. Model IDs are now a maintenance surface, like dependency versions. Pin deliberately, inventory them somewhere, and treat a deprecation email like a CVE notice — because tomorrow, for twelve model IDs, it is one.
Your turn
Go grep. Then come back and tell me — did you find a dead model ID somewhere embarrassing? A cron job? A Terraform file from 2024? I have a feeling the comments on this one are going to be confessional. If this saved you a 3am incident, a reaction helps it reach the next person who hasn't grepped yet.
Originally published by Dev.to AI. Aggregated on AIWithGhost for educational purposes — full credit and traffic to the original publisher.