Sonny Labs Docs
Error codes

validation.invalid

Request body parsed but one or more fields failed semantic validation — surfaced as 422 with per-field `errors[]` entries.

validation.invalid is returned at HTTP 422.

When this fires

Returned when the body parses as JSON of the right type but a field violates a higher-level semantic rule the API enforces — for example an enum value outside the allowed set on /v1/labeled-events:append (source must be one of redteam, production_sample, feedback, reviewed), or a cross-field invariant that only becomes evident after the row is interpreted. Distinct from validation.body_invalid (basic bean-validation, 400) and from validation.parameter_invalid (query/path parameter, 400).

What to do

Walk the errors[] array — each entry has a path (JSON pointer to the offending field) and a per-field code describing the rule. Fix the field and retry. The Python and TypeScript SDKs raise ValidationError for this code; branch on it to surface field-level guidance in your UI rather than retrying blindly.

See also

  • SDK reference — the Python and TypeScript SDKs raise typed exceptions for codes in this namespace.
  • Error code index — every code the runtime can return.

On this page