Developers

OpenAPI specification

Asyrx publishes an OpenAPI 3.1 description of every public endpoint, so you can generate a typed client, validate requests in CI, and import the contract into your API tooling.

Open /api/public/v1/openapi.jsonSpecification version 1.0.0

Contract

Endpoints in this specification

Generated directly from the specification served to your tooling — this list cannot drift from the live contract.

MethodPathSummary
GET/api/public/v1/statusService status
GET/api/v1/actionsList assessed actions
POST/api/v1/actions/assessAssess a proposed agent action
GET/api/v1/assessments/{assessment_id}Retrieve an assessment

Tooling

Generate a client

shell

# Fetch the specification
curl -s https://asyrx.com/api/public/v1/openapi.json -o asyrx-openapi.json

# Generate a typed TypeScript client
npx openapi-typescript asyrx-openapi.json -o src/asyrx-types.ts

# Or generate for another language
openapi-generator-cli generate \
  -i asyrx-openapi.json \
  -g python \
  -o ./asyrx-python-client

Versioning

How the contract evolves

  • The major version lives in the path. /api/v1 stays stable for the life of v1.
  • Additive changes — new optional request fields, new response fields, new reason codes — ship within v1.
  • Removing or renaming a field, or changing a field's type, requires a new major version.
  • Score values and reason codes are data, not enums to hard-code exhaustively. Handle unknown values gracefully.
  • Deprecations are announced with a sunset date and a Deprecation response header before removal.

Ready to wrap it in your own client?

See the SDK starter →