Skip to content

API Reference

This page renders docs/generated/openapi.json. That file is generated by npm run openapi:generate from the running application and its Zod schemas, verified byte for byte by npm run openapi:check, and never edited by hand — so this page always reflects what the service actually exposes, not a snapshot of it. The same file is served as /openapi.json.

Today that is genuinely small: business routes are served under /api/v1/..., but none are documented here yet, because none exist as running endpoints. The two health probes below stay unversioned and unprefixed on purpose — Railway's healthcheck depends on that exact path, and they are deliberately outside the data envelope.

health


Liveness probe

GET
/health/live

Reports whether the process itself is running, without checking the database. Documented exception to the { data } envelope and to Problem Details (section 3): this route keeps the raw health-check contract and is filtered through ProtocolExceptionFilter instead of the global error filter.

Responses

The Health Check is successful

application/json
JSON
{
  
"details": {
  
  
"additionalProperties": {
  
  
  
"responseTime": 0,
  
  
  
"status": "string",
  
  
  
"additionalProperties": "string"
  
  
}
  
},
  
"error": {
  
  
"additionalProperties": {
  
  
  
"responseTime": 0,
  
  
  
"status": "string",
  
  
  
"additionalProperties": "string"
  
  
}
  
},
  
"info": {
  
  
"additionalProperties": {
  
  
  
"responseTime": 0,
  
  
  
"status": "string",
  
  
  
"additionalProperties": "string"
  
  
}
  
},
  
"status": "ok"
}

Playground

Samples


Readiness probe

GET
/health/ready

Reports whether the process can serve traffic, including a database reachability check. Documented exception to the { data } envelope and to Problem Details (section 3): this route keeps the raw health-check contract and is filtered through ProtocolExceptionFilter instead of the global error filter.

Responses

The Health Check is successful

application/json
JSON
{
  
"details": {
  
  
"additionalProperties": {
  
  
  
"responseTime": 0,
  
  
  
"status": "string",
  
  
  
"additionalProperties": "string"
  
  
}
  
},
  
"error": {
  
  
"additionalProperties": {
  
  
  
"responseTime": 0,
  
  
  
"status": "string",
  
  
  
"additionalProperties": "string"
  
  
}
  
},
  
"info": {
  
  
"additionalProperties": {
  
  
  
"responseTime": 0,
  
  
  
"status": "string",
  
  
  
"additionalProperties": "string"
  
  
}
  
},
  
"status": "ok"
}

Playground

Samples


Powered by VitePress OpenAPI

Last updated:

Application Foundation in progress. Tracked in issue #13.