Client libraries
Swift, Kotlin and Dart
Three more clients, generated from the platform's OpenAPI document by one script — so five clients stay one source.
Not published yet. The Swift, Kotlin and Dart clients are generated, not written, and none has reached its registry — the Swift Package Index, Maven Central or pub.dev. This page says how they are made and what they will and will not contain; it will carry install lines the day they ship.
#One source
The JavaScript and Python clients are written by hand, against the API, and tested against
scripted scenarios of it. Three more languages by hand would be three more places for the same
fact to drift, so these are generated from the document the API serves at
https://api.auray.ai/v1/openapi.json — the same document the reference is built
from and the same one a guard holds to the code.
scripts/generate-sdks.mjs in the repository runs
openapi-generator once per language:
node scripts/generate-sdks.mjs # swift5, kotlin, dart → packages/sdk-generated/<language>/
node scripts/generate-sdks.mjs --check # generate to a temporary directory and reportThe generator is a Java program. On a computer without Java the script says so and exits cleanly rather than pretending; continuous integration, which has Java, runs the check on every push.
#What is in them
Every operation of the platform host — the account, the catalogue and each address's contract,
jobs, assets, uploads, webhooks, chat, and the MCP server — typed from the
document, with the Error envelope every refusal shares.
#What is not, yet
The four operations of the queue host — submit, status, result, cancel — are addressed by the
model's name in the path, which OpenAPI's path templating cannot express for a name that
contains slashes. The hand-written clients carry them; the generated ones will once the
generation composes the queue's document in. Until then a Swift, Kotlin or Dart caller submits
with curl or an HTTP client of its own, exactly as Jobs shows, and uses the
generated client for everything after.