module_not_served
HTTP 501 title: Module not served
What it means
This operator does not serve the optional module your request reaches — account binding, payment, or KYC. The URL is published and correct; there is simply no such capability at this origin.
Kiosk requires every conformant operator to publish the full auth block whether or not it serves binding, precisely so that the presence of a URL is never mistaken for a capability probe. This code is how such an origin says so out loud instead of leaving you to infer it from a 404.
Why 501 and not 404. The URL is not missing. A 404 would be a false statement about it, and it would put this case back on the same status as the two genuine 404s, recreating exactly the ambiguity this code exists to remove. No 4xx means what is meant: 403 is identity-scoped and this refusal is origin-wide; 410 Gone asserts the capability once existed; 405 is method-scoped. RFC 9110 §15.6.2 defines 501 as “the server does not support the functionality required to fulfill the request”, and makes it cacheable by default — correct, because this is a stable property of the origin rather than of your request.
What it carries
detail— names the module that is not served.hint— the fallback worth taking, when there is one.
What to do next
Do not retry, and do not treat this as a transient server fault. It is a 5xx by HTTP semantics, not by symptom: nothing you can change about the request makes it succeed, and backing off and trying again is wasted time.
Fall back to whatever the module was for. Binding declined → register a fresh assistant account instead. Payment declined → hand the transaction to your human. KYC declined → the attribute-gated actions behind it are simply not on offer here.
On the wire
{
"type": "https://kiosk.tech/problems/module_not_served",
"title": "Module not served",
"status": 501,
"detail": "this operator does not serve account binding",
"code": "module_not_served"
}
This page documents the RFC 9457 type URI
https://kiosk.tech/problems/module_not_served. 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).