Docs

API — releases and license sync

All endpoints are versioned and additive; v1 will not change shape.

GET /api/v1/updates/check

Query: version, edition, channel (stable|beta). Optional header X-Janus-Instance. No auth. Returns latest release for the channel.

GET /api/v1/releases

Public list of releases (version, channel, published, notes_url, advisory, min_supported, image_digest). Feeds the changelog.

POST /api/v1/license/sync

Header: Authorization: Bearer <license_id>.<sync_token> (embedded in online keys). Body: {"instance_id","site","version","seats_used","nodes"}. Returns {"license": "<signed key>", "status": "active|grace|expired|revoked", "renews": "<date>"}. The gateway installs the returned key if it is newer than the one on disk.

GET /api/v1/license/pubkeys

Current and previous license public keys, informational. The gateway embeds these at build time and does not fetch them.