When should I use PUT instead of PATCH?
Use PUT when the client can send the full intended representation of the resource. Use PATCH when it only knows the fields that changed and should not have to resend everything else.
Reference
Start here when you know what your endpoint should do, but you are not sure which verb makes the contract honest.
Tip: press / to focus search.
Learn how the HTTP DELETE method works, when to use it, and best practices for deleting resources in REST APIs.
Learn how the HTTP GET method works. Understand when to use GET requests, query parameters, caching, and best practices with real-world examples.
Learn how HTTP HEAD requests retrieve resource metadata (headers) without downloading the body. Useful for checking existence, size, and modification dates.
Learn how HTTP OPTIONS requests discover server capabilities, supported methods, and handle CORS preflight checks for cross-origin requests.
Learn how HTTP PATCH requests apply partial modifications to resources. Understand JSON Patch, merge patch formats, and when to use PATCH vs PUT.
Learn how the HTTP POST method works. Understand when to use POST requests, request bodies, form submissions, and API calls with practical examples.
Learn how the HTTP PUT method works, when to use PUT vs POST vs PATCH, and best practices for updating resources in REST APIs.
Most method mistakes come from treating every write as POST. The better question is: what promise does this endpoint make to the caller? Method choice affects retries, caching, browser behavior, and how other developers read your API.
This page is most useful when the route is easy to name but the semantics are still fuzzy.
Use PUT when the client can send the full intended representation of the resource. Use PATCH when it only knows the fields that changed and should not have to resend everything else.
No. POST is the most flexible verb, but that flexibility is also why it is overused. If the operation is clearly a replace, partial update, or delete, PUT, PATCH, or DELETE usually communicates the contract better.
No. DELETE means the target resource should no longer be available in that form. Internally you can soft-delete, archive, tombstone, or queue cleanup work as long as the external contract is clear.