Success · 2xx

207 Multi-Status

The response contains a result for multiple sub-operations, each with its own status.

What 207 Multi-Status means

207 Multi-Status is a WebDAV extension. When a single request operates on multiple resources (like a batch update), the response body contains an XML or JSON document where each sub-operation has its own status code. Some non-WebDAV APIs adopt 207 for batch endpoints, though 200 with a JSON body of per-item results is more common.

When servers should return it: Return 207 from batch endpoints where individual items can succeed or fail independently. The response body must enumerate per-item statuses.

Example response

HTTP/2 207
content-type: application/xml
<?xml version="1.0"?>
<d:multistatus xmlns:d="DAV:">
  <d:response><d:href>/a</d:href><d:status>HTTP/1.1 200 OK</d:status></d:response>
  <d:response><d:href>/b</d:href><d:status>HTTP/1.1 404 Not Found</d:status></d:response>
</d:multistatus>

Related status codes

Frequently Asked Questions

Is 207 standard for REST APIs?
No. 207 is a WebDAV code. REST batch endpoints typically return 200 with a JSON array of per-item results.
Can I use 207 with JSON?
Yes, the status code does not require XML. But most clients do not understand 207 by default, so document carefully if you use it.
Defined in: RFC 4918 · Class: 2xx Success

More references

For a one-page reference of all HTTP status codes, see the HTTP cheat sheet. For testing API responses, try the API Tester tool. For inspecting responses on the command line, the curl cheat sheet covers the most common flags.