3.2 Status codes

▶️ Server returns 1 digit status code, must fail

▶️ Server returns 3 digit status code, must fail

▶️ Server returns 19 status code, fail or assume 10

▶️ Server returns 29 status code, fail or assume 20

▶️ Server returns 39 status code, fail or assume 30 and redirect back here

▶️ Server returns 48 status code, fail or assume 40

▶️ Server returns 59 status code, fail or assume 50

▶️ Server returns 69 status code, fail or assume 60 (do NOT create or send a certificate)

▶️ Server returns 99 status code, fail gracefully

Next - 1x (INPUT)

Home

Spec excerpt

Gemini uses two-digit numeric status codes. Related status codes share the same first digit. Importantly, the first digit of Gemini status codes do not group codes into vague categories like "client error" and "server error" as per HTTP. Instead, the first digit alone provides enough information for a client to determine how to handle the response. By design, it is possible to write a simple but feature complete client which only looks at the first digit. The second digit provides more fine-grained information, for unambiguous server logging, to allow writing comfier interactive clients which provide a slightly more streamlined user interface, and to allow writing more robust and intelligent automated clients like content aggregators, search engine crawlers, etc.

The first digit of a response code unambiguously places the response into one of six categories, which define the semantics of the <META> line.