HTTP 207 Multi-Status

One response carrying several independent outcomes, for a request that operated on more than one resource. Each element has its own status.

Defined in RFC 4918 §11.1 — 207 Multi-Status · MDN reference

Where you meet HTTP 207 in production

Bulk endpoints: create fifty records, delete a list of ids, dispatch a batch of messages. One request, many outcomes, and no single status that honestly describes all of them.

Why you would test it

The trap is treating the 207 itself as success. Individual operations inside it may have failed, and only the per-item statuses will tell you.

What your client should do about a 207

The response is the assertion, not the status. Walk the per-item results and count successes and failures explicitly. A client that sees 2xx and moves on will silently drop the items that failed, and nothing downstream will know.

207 versus the codes it gets confused with

Endpoints that return 207

2 endpoints in this playground answer with 207. Every one is free, needs no signup, and can be called from the browser or with curl.

Questions about HTTP 207

Is 207 a standard status code?
Yes — it comes from WebDAV (RFC 4918) and is widely reused for batch REST endpoints.
What should the body look like?
An array or map of per-item results, each with its own status and, on failure, its own error.

Other success codes

All HTTP status codes · All 39 mock REST APIs · Getting started guide

Last updated