Model lifecycle

How models are deprecated, and how to migrate before they go away.

Models on Aivene do not live forever. Upstream providers ship newer versions and shut older ones down, and when that happens we deprecate the model on the gateway too. You always get a 10-day heads-up before a model stops working.

Stages

StageRequestsWhat you see
ActiveServed normallyNothing special
Deprecation noticeStill served normallyDeprecated on <date> badge, a banner on the model page, and deprecation headers on every response
DeprecatedRejected with 404Deprecated badge

The notice starts 10 days before the deprecation date. The date in Deprecated on <date> is the day the model stops working, so plan to have migrated before then.

Deprecation happens at 00:00 UTC

Deprecation dates are whole days in UTC. A model marked Deprecated on Oct 17 keeps working until Oct 16, 23:59 UTC.

Deprecation notice

During the notice:

  • The Models page shows a Deprecated on <date> badge next to the model name.
  • The model page shows a banner with the date and, when there is one, the recommended replacement model.
  • Every API response for the model carries two standard headers:
Deprecation: @1792195200
Sunset: Sat, 17 Oct 2026 00:00:00 GMT

Both point at the deprecation date. Deprecation is a Unix timestamp (RFC 9745) and Sunset is an HTTP date (RFC 8594). If you log or alert on these headers, you will catch a deprecation even if nobody on your team checks the Console.

GET /v1/models also returns deprecated_at and replaced_by for the model. See List models.

Deprecated

From the deprecation date on, every request to the model fails with 404 and a message that points to the replacement:

{
  "error": {
    "message": "Model \"qwen3-max\" has been deprecated and is no longer available. Please migrate to \"qwen3.8-max\".",
    "type": "not_found_error"
  }
}

The model stays in GET /v1/models with deprecated: true, so existing integrations can detect it instead of failing on a missing ID.

Migrating

  1. Find the replacement in the banner on the model page or in the replaced_by field of GET /v1/models.
  2. Check the replacement's capabilities on its model page.
  3. Change the model value in your requests. Nothing else in the request needs to change.

Watch the Deprecation header

The simplest safeguard is a log alert on any response that has a Deprecation header. It fires on the first request after a deprecation is announced for a model you use, 10 days before it stops working.

FAQ