Versions & releases
Versions & releases
Canonical form
<datachain_type>@<YYYY-MM-DD>[-<suffix>]
datachain_type— e.g.ai(today the only shipped type).YYYY-MM-DD— the release's authorship date.- optional
-suffix—-betaduring authoring. Stable releases drop the suffix.
Examples: ai@2026-04-16, ai@2026-04-16-beta.
Status
Every version has a status:
| Status | Meaning | Cache-Control |
|---|---|---|
stable | Immutable. Content is frozen. | public, max-age=86400, immutable |
beta | In-progress authoring. Content may change. | no-store |
Beta versions are served without caching so authoring iterations land immediately. Stable versions are aggressively cached.
Aliases
schemas/index.json ships human-friendly aliases like ai@latest that resolve to whichever canonical id is currently the "latest." Aliases are handy for exploration; they are not guaranteed stable. For production integrations, discover the canonical id via list_schema_versions and pin on it.
Release flow
beta authoring ──► beta preview ──► stable promotion
ai@2026-XX-YY-beta ai@2026-XX-YY
(no-store) (immutable)
Once a version is promoted to stable, its content_hash stops changing. The content hash is the deterministic handle you can use to detect drift.
URL encoding
The canonical form contains an @ which should not require URL encoding, but the API accepts both the raw ai@2026-04-16-beta and the %40-encoded form:
/api/v2/schemas/ai@2026-04-16-beta/manifest
/api/v2/schemas/ai%402026-04-16-beta/manifest
Both resolve to the same version.