VIUCraft favors stability. This page explains how the API is versioned, what counts as a breaking change, and how deprecations are announced — so you can integrate once and trust it keeps working.
The version
The current contract version is 2025-01 — a dated version. You can read it at runtime:
- The
versionfield of the OpenAPI spec (info.version). - The
api_versionfield returned byGET /api/v1/whoamiandGET /api/capabilities.
A dated version (rather than v1.2.3) makes it obvious how old a contract is and lets us ship additive improvements continuously without churning a number.
Stable surfaces
These are stable and safe to hard-code:
- URL prefixes —
/api/(management),/api/v1/(versioned services), and the root delivery paths (/,/upload). - The delivery URL grammar — see Delivery & Transform URL Grammar.
image_id— a permanent handle; never recycled. See Upload Response Reference.- The error envelope —
{ error: { code, message, status, docs_url, request_id, ... } }.
What is (and isn't) a breaking change
Additive — may ship at any time, not breaking:
- New endpoints, new optional request parameters, new response fields.
- New image operations, new error
codevalues, new enum members.
Write clients that ignore unknown response fields so additions never surprise you.
Breaking — never shipped in place:
- Removing or renaming a field, endpoint, or error code.
- Changing a field's type or an existing parameter's meaning.
- Tightening validation in a way that rejects previously-valid input.
A breaking change ships under a new dated version and a new path prefix (e.g. a future /api/v2/*); the existing surface keeps working.
Deprecation
When something is slated for removal:
- It is announced in the changelog —
GET /api/changelog(and the docs changelog). - It keeps working for at least 6 months after the announcement.
- Where applicable, responses carry a
Deprecationand/orSunsetheader during the window.
Recommendations
- Pin nothing you don't have to; read
api_versionfromwhoami/capabilitiesif you want to assert a minimum. - Use the official
viucraftSDK — it tracks the contract for you. - Subscribe to the changelog (or a webhook) so deprecations reach you before the sunset date.