Developer Tools

HTTP 100 Continue

1xx Informational. The server has received the request headers and the client should proceed to send the request body.

Runs in your browser. Your files and text never leave your device - nothing is uploaded.

1xx Informational

What it means

The server has received the request headers and the client should proceed to send the request body.

PropertyDetail
Status class1xx Informational
Defined inRFC 9110, Section 15.2.1
Cacheable by defaultNo. 1xx responses are interim, and RFC 9111 only lets a cache store a final response.
Who needs to actNobody, normally. HTTP libraries handle it; only hand-written client or server code needs to care.

What does HTTP 100 Continue mean?

HTTP 100 Continue is an interim response telling a client that the server has accepted the request headers and is ready for the body. Clients ask for it with an Expect: 100-continue header before a large upload, so a server can reject a bad request early instead of after gigabytes have been sent.

How 100 Continue works

A 100 only appears when the client opts in. A client about to send a large body adds Expect: 100-continue and pauses after the headers. RFC 9110 then gives the server two options: answer at once with a final status such as 401, 405 or 413 if the headers alone rule the request out, or send 100 Continue so the client transmits the body. A server that sends 100 must still send a real final response, such as 200 or 201, once the body has been processed. Clients are not expected to wait forever either: an HTTP/1.0 intermediary cannot relay a 100, so a client that hears nothing should send the body after a short pause.

Example 100 request and response

PUT /uploads/backup.tar HTTP/1.1
Host: files.example.com
Content-Length: 1073741824
Expect: 100-continue

HTTP/1.1 100 Continue

(the client now sends the 1 GB body)

HTTP/1.1 201 Created
Location: /uploads/backup.tar

The 100 arrives before any body bytes leave the client. Had the server answered 413 instead, the client would have skipped the 1 GB transfer entirely.

When servers send 100 Continue

  • A client uploading a large file or request body with Expect: 100-continue. curl, for example, adds the header to large uploads over HTTP/1.1.
  • Object storage and upload APIs that check authentication and size limits before accepting the data.
  • A proxy that forwards the client's expectation to the origin server and relays the 100 back.

How to handle 100 Continue

If you write HTTP client code

  • Send Expect: 100-continue only on requests that actually carry a body; RFC 9110 forbids it otherwise.
  • Wait briefly for the 100, then send the body anyway if nothing arrives, because intermediaries may not relay it.
  • If you receive 417 Expectation Failed, repeat the request without the Expect header, as RFC 9110 advises.

If you run the server

  • Reply with a final error such as 401 or 413 straight from the headers when you can, which saves the client the upload.
  • Do not wait for the body before sending 100; the client is waiting for you.
  • Always follow a 100 with a final status once the body has been processed.

Related status codes

  • 417 Expectation Failed: The server or a proxy cannot meet the Expect header; the client should retry without it.
  • 413 Payload Too Large: The usual early rejection when the announced Content-Length is over the limit.
  • 102 Processing: Also an interim code, but it reports that a slow WebDAV request is still running, not that the body may be sent.

Frequently asked questions

Sources

Other 1xx Informational codes

Reviewed by Raja Jahangir · Last reviewed: October 7, 2026