# validation_error

The request failed the schema; the errors list names each offending field (400).

## Meaning

Written before the handler runs: a parameter or body field violates the operation's
schema, such as a missing required field, a value too long, a wrong format or a value
not allowed. `errors` holds one `{field, code, message}` entry per field, with codes
such as `required`, `too_short`, `too_long`, `pattern`, `invalid_format` and
`not_allowed`.

## Impact

The request did nothing. On the hosted UI or the dashboard the form marks the fields;
for an API caller it is a client bug. `/register` answers it too, so a
`redirect_uris` entry that is not an absolute URI is refused here.

## Diagnosis

1. Read `errors`: each entry names the field and the rule.
2. The refusal is recorded as `http.request.screened` with reason `invalid_request`,
   cause `schema_invalid` and the fields in `violations`.

## Mitigation

- As a user: correct the marked fields.
- As a client developer: fix each field `errors` names, against the OpenAPI document.

## Escalation

Escalate when a value the documentation allows is refused. Open an issue with the
request id, the `errors` list and the server version.

---

[Problem code runbooks](https://www.nauthera.io/docs/v1/runbooks/problems) · Generated from [`internal/runbook/problems.yaml`](https://github.com/nauthera/nauthera-server/blob/main/internal/runbook/problems.yaml) in nauthera-server.
