← All Kiosk problem types

bad_request

HTTP 400   title: Malformed request

What it means

The request could not be used as sent: an unparseable JSON body, a missing required field, or an argument value outside its domain — not a member of a closed set, a date outside the horizon the verb serves, a category that does not exist.

What to do next

Fix the request and resend. When an argument was outside its domain, detail names the valid values — that is what lets a client recover from a guess without re-fetching the catalogue. Each verb’s input_schema is published at GET <endpoint>/schema.

On the wire

{
  "type":   "https://kiosk.tech/problems/bad_request",
  "title":  "Malformed request",
  "status": 400,
  "detail": "… what went wrong on THIS request …",
  "code":   "bad_request"
}

This page documents the RFC 9457 type URI https://kiosk.tech/problems/bad_request. The URI is an identifier, not a locator a client should fetch: branch on the document’s code member. The normative definition lives in the error vocabulary of the Kiosk specification (§9 of the formal spec).