Skip to content

Readiness probe with database introspection.

GET
/status
curl --request GET \
--url https://example.com/status
  • None

JSON envelope for a successful status check.

Media typeapplication/json

JSON envelope for a successful status check.

object
database
required

Database connection and version details.

object
connections
required

Active connections and pool utilization.

object
active
required
integer format: int32
max
required
integer format: int32
pool_idle
required
integer format: uint
pool_size
required
integer format: uint32
latency_ms
required
number format: double
name
required
string
server_version
required
string
ssl
required

TLS connection status for the database pool.

object
bits
integer | null format: int32
cipher
string | null
enabled
required
boolean
version
string | null
metadata_path
required
string
status
required
string
Examplegenerated
{
"database": {
"connections": {
"active": 1,
"max": 1,
"pool_idle": 1,
"pool_size": 1
},
"latency_ms": 1,
"name": "example",
"server_version": "example",
"ssl": {
"bits": 1,
"cipher": "example",
"enabled": true,
"version": "example"
}
},
"metadata_path": "example",
"status": "example"
}

JSON envelope for a failed status check.

Media typeapplication/json

JSON envelope for a failed status check.

object
error
required
string
metadata_path
required
string
status
required
string
Examplegenerated
{
"error": "example",
"metadata_path": "example",
"status": "example"
}

Structured error envelope (SPEC-DATA-0006): {"errors": [{"scope", "target", "code", "message"}, ...]}.

Media typeapplication/json

The top-level response body. Wraps a non-empty list of [ErrorEntry].

object
errors
required

The error entries making up the envelope. Always non-empty.

Array<object>

One entry in the error envelope.

Carries an anchoring [ErrorScope], an optional target that disambiguates within the scope, a stable SCREAMING_SNAKE_CASE code, and a human-readable English message. See SPEC-DATA-0006 for the full envelope contract.

object
code
required

Machine-readable, stable, SCREAMING_SNAKE_CASE identifier.

string
location
Any of:

HFX source location for a [DataError::HfxCompileError] entry.

Emitted as the extra location field on the entry JSON when present, per SPEC-UI-0043. The line/column are 1-based. The frame is the offending source line extracted verbatim from the input.

object
column
required

1-based column within the line, measured in UTF-16 code units of the prefix so browser-side editors can consume it directly.

integer format: uint32
frame

The offending source line text, when available.

string | null
line
required

1-based line number within the source text.

integer format: uint32
message
required

Server-authored English message. Not part of the API contract; may change across releases without notice.

string
rule

The key of the ValidationRule that failed, when the code is RULE_FAILED. None for all other codes.

Skipped during serialization when absent so it does not appear on unrelated entries (same pattern as location).

Documented here as a plain string (#[schemars(with = "...")]) rather than a $ref to ValidationRuleKey’s own schema: that type lives in metadata-types, which does not derive JsonSchema yet (tracked by #812). ValidationRuleKey serializes transparently as its inner string (serde’s default newtype-struct behavior), so this is an accurate wire-shape description, not a placeholder.

string | null
scope
required

Anchoring category. Drives client-side rendering.

One of:

Attached to a specific request field. target is the field key.

string
Allowed value: field
target

Field key for field scope, record id for record scope, null otherwise. Always serialized, even when null.

string | null
Example
{
"errors": [
{
"scope": "field"
}
]
}