Where to get the spec
The canonical public OpenAPI document is always available at:https://api.akua.dev/v1/openapi.json
Use that URL for downloads, codegen, and production pipelines. It always reflects the deployed public API.
For CI builds that must pin to a stable input (instead of fetching the live document), you can optionally vendor a snapshot of the same public spec from this repository’s docs/openapi-public.json. Akua’s CI keeps that file in sync: every pull request that changes a public route must update it or the build fails. Prefer the live URL unless you specifically need a pinned checksum.
Generate a client
Most languages have mature OpenAPI codegen tooling. Pick whichever fits your stack:TypeScript and JavaScript
openapi-typescript generates a single .d.ts file with no runtime dependencies. Pair it with openapi-fetch for a type-safe fetch wrapper.
Go
oapi-codegen generates a strongly typed Go client.
Python
openapi-python-client emits a Pydantic-typed package.
Other languages
The OpenAPI Generator project ships generators for 50+ languages, including Java, C#, Rust, PHP, and Ruby. The Akua spec is plain OpenAPI 3.1 with no vendor extensions, so any compliant generator works.Versioning
The API path includes a version segment (/v1/...). Breaking changes ship under a new version path; the previous version stays available for at least 12 months after a new one launches.
Inside a version, Akua follows additive evolution:
- New endpoints and new optional fields can appear at any time.
- Existing fields are never removed or renamed within a version.
- Validation rules can tighten (rare; flagged in the changelog).
Stay in sync
For most consumers, fetch the live public document and cache it briefly so new endpoints become available as soon as they ship:docs/openapi-public.json from this repository and bump it deliberately:
Related topics
Introduction
API base URL, conventions, and error envelope.
Authentication
Workspace API tokens and JWT auth.
CLI
Discover and run commands generated from this contract.