← All Kiosk problem types

not_found

HTTP 404   title: Not found

What it means

The verb exists and an argument ADDRESSES a resource that does not exist — an order id, a slot id, a SKU, a property_id no property has, a login for a key nobody registered.

The call was well formed and this answer is final: no retry finds it. Distinct from verb_not_found, which is about the NAME of the call rather than about what the call addressed; without that split an assistant cannot tell “there is no such hotel” from “there is no such verb”.

It is also not the answer to a FILTER that matched nothing: a collection that exists and is empty for your query answers 200 with an empty array. An empty list here would assert that the addressed resource exists and merely has no rows, which is a different — and false — statement.

What it carries

What to do next

Stop, and tell your human the thing is not there. Do not re-read the catalogue and do not retry — the verb was right, the id was not, and neither will change on a second call.

If the verb NAME was the problem you get verb_not_found instead, whose hint lists the names that exist. If the name was right and the method was wrong, you get method_not_allowed, carrying Allow.

On the wire

{
  "type":   "https://kiosk.tech/problems/not_found",
  "title":  "Not found",
  "status": 404,
  "detail": "no property with id 'prop_99999'",
  "code":   "not_found"
}

This page documents the RFC 9457 type URI https://kiosk.tech/problems/not_found. 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).