Reference guide · http-status · Published 2026-08-16 · 3 min read

HTTP 207 multi status explained

HTTP 207 Multi-Status explained: when a batch request returns many statuses, how the WebDAV body works, and how to handle it as a client.

Flat editorial illustration showing a lantern-style status readout with a neat row of stacked directory rails, each rail marked with an abstract tally.
Illustration: this article at a glance.

HTTP 207 Multi-Status is a batch result: a single response that packs multiple independent outcomes into a structured body. It was created for WebDAV (PROPFIND, PROPPATCH, COPY, MOVE), where one request acts on several resources at once, and for that reason it is the response you will almost never meet on a normal website. Your site will not return one, and almost nobody hits it from a browser. Where it matters is API and tooling code that speaks WebDAV.

What 207 means

A 207 tells the client: the request bundled N sub-operations, and each one has its own status, which may differ. The HTTP status line alone cannot say the batch half-succeeded, so the body carries a <multistatus> XML document in the WebDAV shape:

<?xml version="1.0" encoding="utf-8"?>
<d:multistatus xmlns:d="DAV:">
  <d:response>
    <d:href>/files/a.txt</d:href>
    <d:propstat>
      <d:prop><d:getetag>"5d3-2e5"</d:getetag></d:prop>
      <d:status>HTTP/1.1 200 OK</d:status>
    </d:propstat>
  </d:response>
  <d:response>
    <d:href>/files/b.txt</d:href>
    <d:status>HTTP/1.1 507 Insufficient Storage</d:status>
  </d:response>
</d:multistatus>

Why you will not see it on a website

The success family of statuses in a browser is locked to 200; a server that answers 207 wants its own reader. Web pages and CDNs do not emit 207, because there is no web request where one response has to narrate many resources. Where it appears is WebDAV-based sync clients, document management servers, and calendars over CalDAV (which build on WebDAV).

If your API or tooling returns 207

The start of many codes

Putting 2xx semantics over a body applies to more than WebDAV; the family rule is what a response means per resource:

StatusOne resourceBodyReal-world use
200YesThe contentWebsite, API hit
206One resource, a rangePartial bytesVideo, page break
207Many resourcesmultistatus listWebDAV batch

So a 207 with a list is not a bug: it is the batch contract, the same way a 206 is the range contract.

When to involve a professional

If your CMS or file-management plugin suddenly logs a 207 from a WebDAV client, check the client and the storage, not the site. A storage backend that answers 507 Insufficient Storage inside the 207 means the provider quota is the blocker, not a PHP error.

Need a website built, fixed, optimised, migrated or replaced?

This technical resource is written by CSMBAC, a small design and development studio. If you would rather hand the problem to a professional, the website service page explains how we build enquiry-ready websites.

Explore website services