2026-08-22 is the current (and founding) version. When the API needs a breaking change (a renamed field, a reshaped response), that change ships as a new date; every older version keeps behaving exactly as it did. Additive changes — new endpoints, new optional fields — arrive in all versions and never mint a date.
You never have to chase the API. An integration built today keeps receiving today’s shapes until you decide to move — that is the whole point of the model.
Your key is pinned
Every API key is pinned to the version that was current when the key was created. A request without a version header is served in the key’s pinned version, forever. The console’s API keys page shows each key’s pinned version in the API version column.Overriding per request
Send theOrriven-Version header to serve a single request in a different version — the way to test a newer version before committing to it:
400 and names the versions that exist. You cannot invent a version — only published dates are valid.
Every response tells you its version
Whatever decided the version — your header or your key’s pin — the response echoes it back:Upgrading
1
Read the changelog
Each new version’s entry (below) says exactly what changed, seen from the caller.
2
Test with the header
Point your staging integration at the new date with
Orriven-Version — your key’s pin is untouched, production traffic keeps its old shape.3
Move the pin
Generate a new key (it pins to the latest version automatically), switch your integration to it, then revoke the old key — the same zero-downtime rotation as any credential change.
Changelog
Related
API keys
Where a key’s pinned version lives.
Endpoint reference
The current version’s shapes, endpoint by endpoint.