Lifecycle stages
Every supported version of the API is in one of six stages at any given time.How versions move between stages
The lifecycle is time-driven, with explicit minimum notice periods at each transition. Notice periods are floors, not targets — Primer can stay in any stage for longer than the minimum, but cannot shorten it.- A version in
RCreachesGAno sooner than 30 days after enteringRC. - A version in
GAis given at least 12 months of notice before being deprecated. - A version in
Deprecatedremains there for at least 12 months before reachingEOL.
Current status
This table is updated as versions transition between stages. For per-version changes, see the API changelog.
Machine-readable signals
Three HTTP signals communicate the lifecycle state of each request and response:X-Api-Versionrequest header. Pin every request to a specific API version. If the header is omitted, requests default to the earliest supported version — which means an unpinned client may silently start hitting an older version as new versions ship. Pinning is strongly recommended.Deprecationresponse header. Emitted fromDeprecatedversions. Carries the date the version was deprecated. Standardised in RFC 9745.Sunsetresponse header. Companion toDeprecation. Carries the planned end-of-life date. Standardised in the same RFC. Standardised in RFC 8594
Deprecation and Sunset headers are scheduled for rollout alongside this policy.
End of life behaviour
When a version reachesEOL, calls to that version return 410 Gone:
X-Api-Version header rather than relying on the default.
Vocabulary
Supported is a specific lifecycle stage on this page, not a general adjective. A version in GA is actively supported but is not in the Supported stage. When referring to a version’s state, prefer the badges — GA, Supported, Deprecated, EOL — over prose.
Deprecated and EOL are distinct stages. A Deprecated version still serves traffic, with deprecation signals attached to every response. An EOL version no longer serves traffic and returns 410 Gone.
Related
- API changelog
- SDK lifecycle — the same model applied to the Primer SDKs.