OpenAI retires gpt-5.3-codex in April 2027: retired ids on Sume runs

Pin model ids you control. On a Sume Format run, omitting model uses gpt-6-sol, a retired gpt-5.6-sol runs on gpt-6-sol, and the receipt echoes the id that ran.

4 min readSume
All posts

OpenAI's deprecations page lists gpt-5.3-codex, gpt-5.1 and gpt-5.4-nano as removed from its API on April 1, 2027, with gpt-6-sol and gpt-6-luna named as replacements. If your integration passes a model id around, this is the week to find every place it is hard-coded.

On a Sume Format run the model field selects only the LLM that orchestrates the run, and Sume handles a retired id for you: a request for retired gpt-5.6-sol runs on gpt-6-sol, and the receipt's model field says which id actually ran.

What the vendor page and the Sume docs say

The OpenAI rows come from its deprecations page and the Sume rows from the Create a run page (read 2026-10-03).

Retired model ids: OpenAI's API and a Sume Format run (read 2026-10-03)
QuestionOpenAI APISume Format run
What was announcedgpt-5.3-codex, gpt-5.1 and gpt-5.4-nano removed April 1, 2027gpt-5.6-sol is retired
Replacement namedgpt-6-sol for the first two, gpt-6-luna for gpt-5.4-nanogpt-6-sol
If you send the old idPlan a migration before the removal dateThe run uses gpt-6-sol
Where to see what ranYour own request logsThe model field on the receipt
An id that is not in the catalogNot covered here400 invalid_request

Stop hard-coding the id

For Format runs the simplest fix is to omit model. The default is gpt-6-sol, so a Format call needs no model id at all, and image, video and audio models are chosen by the Format's tools rather than this field. If you do send one, record the id from the receipt, not the id you asked for.

curl -sS "https://api.sume.com/v1/format-runs/$RUN_ID" \
  -H "Authorization: Bearer $SUME_API_KEY" | jq '.data.model'

A migration checklist

Search your code for the old ids first, then move the id into one configuration value, and finally make your tests assert on the id the receipt reports rather than the one you sent. Keep the request the same otherwise, since the field does not change image or video generation. For the current default and how it showed up on receipts, see the omitted model default.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume