How HTTP Works
4xx · Client errorNon-standard · WebDAV
< HTTP/1.1 424 Failed Dependency

424 Failed Dependency (WebDAV)

424 Failed Dependency means a request failed because another action it depended on failed first. See WebDAV multi-status examples and what to fix.

Reviewed 2 min readintermediate3 sourcesTry itMarkdown
Cacheable
Only with explicit freshness
Retry?
After fixing the failed dependency
Usually sent by
WebDAV server
Spec
RFC 4918 §11.4
On this page

TL;DR: 424 says “I did not do this because something it depends on failed.” It almost always appears inside a WebDAV 207 body next to the entry that holds the real error. Fix that entry and the 424s go away.

What it means

PROPPATCH is atomic: if you set three properties and one fails, none are applied. The server reports the failing property with its real status, and the other two with 424.

PROPPATCH /files/report.pdf HTTP/1.1
Host: dav.example.com
Content-Type: application/xml

<?xml version="1.0"?>
<d:propertyupdate xmlns:d="DAV:" xmlns:x="http://example.com/ns">
  <d:set><d:prop><x:author>Alice</x:author><d:getetag>"forged"</d:getetag></d:prop></d:set>
</d:propertyupdate>
HTTP/1.1 207 Multi-Status
Content-Type: application/xml

<d:multistatus xmlns:d="DAV:" xmlns:x="http://example.com/ns">
  <d:response>
    <d:href>/files/report.pdf</d:href>
    <d:propstat>
      <d:prop><d:getetag/></d:prop>
      <d:status>HTTP/1.1 403 Forbidden</d:status>
    </d:propstat>
    <d:propstat>
      <d:prop><x:author/></d:prop>
      <d:status>HTTP/1.1 424 Failed Dependency</d:status>
    </d:propstat>
  </d:response>
</d:multistatus>

getetag is a protected property (403), so the otherwise valid author update was rolled back and marked 424. Collection operations differ: when a DELETE on a collection fails because one child is locked (423), RFC 4918 section 9.6.1 says the 207 should list only the failing child, not 424 entries for its ancestors, and the collection is left in place.

What to do

  1. Read the whole 207 body, not only the 424 entries.
  2. Locate the non-424 failure and fix it: protected property, lock token missing, permission, conflicting state.
  3. Re-send the request unchanged. Because the operation is atomic, nothing was partially applied.
  4. If you are implementing a WebDAV server, use 424 only for operations skipped due to another failure in the same request, never as a generic “dependency down” error. For that, 502, 503 or 504 are what clients and monitoring understand.

How clients should treat it

The 424 entries are not independent failures, so counting them as separate errors in logs and dashboards overstates the damage. Group them under the entry that caused them. If your client library flattens a multistatus body into a list of per-resource errors, keep the original order: servers list the root cause first, and the dependents follow.

A second trap is retry logic. Retrying only the 424 items does not work, because they were skipped and are waiting on the failed item. Fix the root cause and resend the whole request. For a PROPPATCH, nothing was applied, so a clean retry after fixing the offending property is safe.

Finally, in practice WebDAV servers use 424 for the PROPPATCH case above. If you see 424 on a plain, single-resource request outside WebDAV, the server is using the code in a custom way and its documentation is the only authority.

Try it with curl

424 Failed Dependency normally appears inside the XML body of a 207 Multi-Status response, not as the top-level status. Send a PROPPATCH like the one above with curl and read the <d:status> lines in the body.

curl -i -X PROPPATCH https://dav.example.com/files/report.pdf \
  -H 'Content-Type: application/xml' \
  --data-binary @props.xml

Expect HTTP/1.1 207 Multi-Status, with the property that failed carrying its real status and the others marked HTTP/1.1 424 Failed Dependency.

Frequently asked questions

What does 424 Failed Dependency mean?

The action was not carried out because it depended on another action in the same request that failed. In WebDAV it marks the innocent parts of a request that were skipped because something else, reported with a different code, went wrong.

Where does 424 usually appear?

Inside the XML body of a 207 Multi-Status response from a WebDAV server, almost always a PROPPATCH, where property updates are atomic and one failure marks the rest 424.

How do I fix a 424?

Find the other entry in the multi-status body that carries the real failure (403, 423, 409 and similar) and fix that. The 424 entries resolve themselves once the cause is fixed.

Do non-WebDAV APIs use 424?

Occasionally. Some APIs reuse it for a failed upstream dependency in a pipeline or workflow, but the standardised meaning is the WebDAV one, and clients are not expected to know the custom use.

Sources

  1. MDN Web Docs: 424 Failed Dependencydeveloper.mozilla.org
  2. RFC 4918 Section 11.4: 424 Failed Dependencyrfc-editor.org
  3. RFC 4918 Section 9.2: PROPPATCHrfc-editor.org

Keep going

Browse /search