Logo
DevUtilsAll-in-one toolkit
Back to all codes
2072xx
2xx — Success

Multi-Status

Conveys information about multiple resources, for situations where multiple status codes might be appropriate.

What it means

The HTTP 207 Multi-Status response code provides status for multiple independent operations. It is an extension used in WebDAV.

The default response body is an XML message containing a `multistatus` element, which in turn contains a series of `response` elements detailing the outcome of each individual operation.

How it works

  • 1The client sends a batch request (like WebDAV PROPFIND).
  • 2The server processes 10 items. 8 succeed, 2 fail.
  • 3The server cannot return a simple 200 or 500. Instead, it returns a 207.
  • 4The XML (or JSON in some modern APIs) body lists each item and its individual status code (e.g., item 1 got 200, item 2 got 403).

Why you're seeing this

  • A batch operation was processed.

How to fix it

  • Clients must parse the response body to determine if the specific item they care about actually succeeded.

Framework Implementations

Express.js

app.post('/bulk-upload', (req, res) => {
  const results = processBulk(req.body);
  res.status(207).json({ responses: results });
});

Real-Life Scenarios

Use this for bulk or batch operations in REST APIs where partial success is possible, and you need to inform the client exactly which items succeeded and which failed.

Bulk Email Sending

An API request to send 100 emails. 99 are sent, but 1 fails due to a malformed address. The server returns 207, listing the 99 success IDs and the 1 error.

HTTP Transaction

1. Client Request

PROPFIND /docs HTTP/1.1
Host: webdav.example.com

2. Server Response

HTTP/1.1 207 Multi-Status
Content-Type: application/xml

<?xml version="1.0" encoding="utf-8" ?>
<D:multistatus xmlns:D="DAV:">
  <D:response>
    <D:href>/docs/file1.txt</D:href>
    <D:status>HTTP/1.1 200 OK</D:status>
  </D:response>
  <D:response>
    <D:href>/docs/secret.txt</D:href>
    <D:status>HTTP/1.1 403 Forbidden</D:status>
  </D:response>
</D:multistatus>

SEO Implications

None. Batch API operations are not crawled.

Related Codes