Where to get the spec
The spec is available in two forms:
The two are kept in sync by Akua’s CI: every pull request that changes a public route must update
docs/openapi-public.json or the build fails.
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 CI pipelines that consume the spec, pin to the static snapshot file in this repository and bump it deliberately:Related topics
Introduction
API base URL, conventions, and error envelope.
Authentication
Workspace API tokens and JWT auth.
CLI preview
Akua CLI status and supported automation alternatives.