Versioning
Majors live in the URL. Pin one. There is no latest alias.
Public paths are /{product}/{version}/…, for example /youtube/v1/video/:id. Only majors appear. A caller on v1 stays on v1 until they move to v2.
Additive changes stay in the same major. Removing a field, renaming a parameter, or changing an error
code requires a new major. Missing /v{N} is 404 RESOURCE_NOT_FOUND, never billed.Lifecycle#
| State | Gateway | Billed? |
|---|---|---|
| active | Routes normally. | Per outcome |
| deprecated | Routes normally and stamps Deprecation, Sunset, and Link headers. | Per outcome |
| sunset | 410 Gone before auth. Upstream is not called. | No |
Link headers#
Deprecated responses include RFC 9745 Deprecation (@ + Unix timestamp), RFC 8594 Sunset (HTTP-date), and Link rels deprecation, sunset, and successor-version. After sunset you get VERSION_SUNSET or ENDPOINT_SUNSET.
http
Link: <https://docs.flashapi.io/youtube/v1/deprecation>; rel="deprecation"; type="text/html" Link: <https://docs.flashapi.io/youtube/migrate/v1-to-v2>; rel="sunset"; type="text/html"
YouTube v1 is active. Placeholder pages: deprecation and v1 → v2 migrate.