Status Code 102
Processing
The server has received and is processing the request, but no response is available yet.
Category
InformationalSpec URL
102 of RFC 2518Popularity
rare
Recommended
No
Deprecated
No
Common Use Case
WebDAV extended operations
Notes
Primarily for WebDAV; not widely supported.
RFC Reference
Description
The server has received and is processing the request, but no response is available yet.
A typical server response for a 102 Processing status code looks like:
HTTP/1.1 102 Processing Date: Sun, 22 Mar 2026 12:00:00 GMT Server: httperrors.com
This status code sits in the informational range, which means it rarely represents the final outcome of a request. Instead, it helps the client and server coordinate the next step in the exchange.
Historically, HTTP 102 Processing should be read in light of RFC 2518. Standards text tends to focus on precise semantics, while production systems care about retries, user experience, dashboards, proxies, browsers, and documentation. Good engineering joins those two views instead of choosing one over the other. When teams treat a status code as both a protocol message and a product decision, they produce APIs and pages that are easier to operate and easier to trust.
A practical reading of this entry is that the server is communicating something very specific: The server has received and is processing the request, but no response is available yet. In day-to-day work, that meaning should be reflected across controllers, reverse proxies, API gateways, and frontend assumptions. If the server sends HTTP 102, but the response body, cache headers, or application behavior tell a different story, client code starts compensating for inconsistency and the whole stack becomes harder to reason about.
Because HTTP 102 sits in the informational category, developers should think about how the code interacts with frontend behavior, backend instrumentation, CDN layers, and search engine crawlers. A status code is never just a number in the network tab; it becomes part of your application's public contract.
From an engineering standpoint, the key question is whether intermediaries, browsers, SDKs, or proxies in your stack actually preserve the semantics of this response. Informational codes are standards-based, but ecosystem support can vary.
In implementation terms, HTTP 102 Processing should appear at a deliberate decision point in your request handling code. Avoid choosing it late as a cosmetic label after the rest of the response is already formed. Most clients should simply continue the intended flow once the surrounding protocol expectations are met. If your logs show this status frequently, the surrounding context should make it obvious whether the response reflects normal traffic or a design problem.
The example attached to this code, WebDAV extended operations, helps anchor the status in a real workflow. That matters because status codes become easier to remember when they are associated with an operational scenario rather than memorized in isolation.
A useful way to compare HTTP 102 is against final response codes. Informational messages should not be mistaken for the end of the conversation. They are protocol cues, not complete business outcomes. This is one reason protocol precision pays off over time: the better your status taxonomy, the easier it becomes to debug client behavior, build metrics, and explain edge cases to other engineers.
From an operational perspective, HTTP 102 should be visible in logs, metrics, and alerts with enough surrounding metadata to explain why it happened. Popularity for this entry is listed as rare, and that should influence how much defensive documentation and monitoring you add. Because the code is relatively rare, every occurrence is a stronger signal that engineers and support teams will need extra context.
Search crawlers usually do not index informational responses directly because these responses are transitional rather than final. The SEO consequence is indirect: if a crawler receives an informational code but never reaches a stable final response, indexing quality suffers. For HTTP 102, the operational takeaway is that status correctness supports SEO indirectly by making crawl behavior more predictable. Pages, APIs, and edge routes should return this code only when its meaning is exactly true.
Since this code is not marked as recommended, it should usually be treated as a specialist tool rather than a default answer. That does not make it wrong. It means the burden of proof is higher: engineers should be able to explain why this code communicates the situation better than a more conventional alternative.
Because this code is not deprecated, it remains part of the active vocabulary that modern web systems can use. Even so, correctness still depends on discipline. A valid status code becomes harmful if teams reuse it as shorthand for several unrelated situations.
Popularity is marked as rare, which is a useful implementation signal. A common code usually has better client-library support, stronger operator familiarity, and fewer surprises in logs, dashboards, and browser tooling. A rare code can still be the correct choice, but it should be selected intentionally.
The best way to think about HTTP 102 Processing is not as trivia, but as a promise. It tells the caller what happened, what should happen next, and how much confidence the client can place in the current response. The example recorded for this entry is WebDAV extended operations, and the note says Primarily for WebDAV; not widely supported.. Together with the specification link at https://datatracker.ietf.org/doc/html/rfc2518#section-10.1, those details give implementers enough context to use the code intentionally rather than mechanically. That is the standard worth aiming for in production systems.
Other HTTP status codes in the Informational category
The initial part of a request has been received and has not yet been rejected by the server.
Used with Expect: 100-continue header
The server understands and is willing to comply with the client's request to switch protocols.
WebSocket upgrade requests
Used to return some response headers before final HTTP message.
Link preload headers