102 Processing

Long-running server operations that risk client timeouts are addressed by the 102 Processing informational response status code. The server sends this interim response to keep the connection alive until the final response is ready.

Usage

When a server sends the 102 Processing status code, the client maintains the HTTP connection and waits for the final response to arrive. The server must eventually return the final response, or a genuine timeout occurs.

The 102 Processing status code is no longer part of current HTTP specifications, though the code remains registered in the IANA HTTP Status Code Registry with its original WebDAV specification as the reference. Servers still use the code in practice. A well-implemented HTTP client ignores unrecognized informational status messages, so this response does not negatively affect clients without explicit support.

Note

Multiple 102 Processing status updates are sent in advance of the final HTTP response.

Example

The client requests a sample.pdf file, and the server returns a status code indicating processing takes longer than usual. After a short wait, the server sends another processing update. After another delay, the server sends the final response.

Request

GET /sample.pdf HTTP/1.1
Host: www.example.re

Response

HTTP/1.1 102 Processing

<there is a short pause in the transmission>
HTTP/1.1 102 Processing

<there is a short pause in the transmission>
HTTP/1.1 200 OK
Content-Type: application/pdf
Content-Length: 10000

<message body will follow>

Code references

.NET

HttpStatusCode.Processing

Rust

http::StatusCode::PROCESSING

Rails

:processing

Go

http.StatusProcessing

Symfony

Response::HTTP_PROCESSING

Python3.5+

http.HTTPStatus.PROCESSING

Apache HttpComponents Core

org.apache.hc.core5.http.HttpStatus.SC_PROCESSING

Angular

@angular/common/http/HttpStatusCode.Processing

See also

Last updated: April 4, 2026