Visual RFC.
ALL RFCs / RFC 5789
Read the RFC ↗
RFC 5789 / MECHANISM GUIDE

Failure and verification

05

Invalid syntax, unsupported formats, conflicts, and failed preconditions have different responses.

Related RFCs and changes

“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.

DIAGRAM§ 2.2 ↗
RFC 5789 · § 2.2EXAMPLE
3 / 3
Failure and verificationInvalid syntax, unsupported formats, conflicts, and failed preconditions have different responses.Failure and verificationUnsupported format → 415State conflict → 409Lost response → inspect with GETDo not blindly replay uncertain non-idempotent work
03
Verify uncertain outcome

After a lost response, inspect state rather than blindly replaying a non-idempotent patch.

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
KEY POINT

400 can indicate malformed patch syntax; 415 an unsupported patch format.

  • 400 can indicate malformed patch syntax; 415 an unsupported patch format.
  • 409 can indicate a conflict and 412 a failed explicit precondition.
  • If a response is lost, GET can help inspect current state; authorize changes and protect their transport.
DETAILS

Examples are illustrative. Consult the linked RFC and its errata for implementation details.

Read the RFC section ↗

Diagrams simplify the RFC. Read the linked sections for complete requirements.

Privacy
All chapters in this RFC
  1. Patch versus replacement
  2. Atomic modification
  3. Conditional PATCH
  4. Discover patch formats
  5. Failure and verification
RFC 9700 / CHAPTERS

Chapters

For full details, tables, algorithms, and exceptions, read the original RFC.

RFC status and corrections ↗