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.
Per RFC 9110 section 9. Rarely means cacheable only with explicit freshness information.
| Method | Safe | Idempotent | Cacheable | Request body | Response body | Typical use |
|---|---|---|---|---|---|---|
| GET | Yes | Yes | Yes | No defined meaning | Yes | Read a resource |
| HEAD | Yes | Yes | Yes | No defined meaning | Never | Read headers only |
| POST | No | No | Rarely | Yes | Yes | Process or create |
| PUT | No | Yes | No | Yes | Optional | Replace a resource |
| PATCH | No | No | Rarely | Yes | Optional | Partial update |
| DELETE | No | Yes | No | No defined meaning | Optional | Remove a resource |
| OPTIONS | Yes | Yes | No | Optional | Optional | Discover capabilities |
| CONNECT | No | No | No | No defined meaning | None after 2xx (tunnel) | Open a proxy tunnel |
| TRACE | Yes | Yes | No | Not allowed | Echo of the request | Loop-back diagnostics |
| QUERY | Yes | Yes | Yes | Required | Yes | Read with a request body |
HTTP CONNECT opens a TCP tunnel through a proxy so HTTPS can pass untouched. See the exact request and 200 response, 407 proxy auth, and extended CONNECT.
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.
HTTP QUERY is a safe, idempotent method with the query in the body. RFC 10008 status, an example exchange, caching rules, and why GET with a body fails.
HTTP TRACE echoes the request back for diagnostics. Cross-Site Tracing history, why scanners flag "TRACE enabled", and how to disable it in Apache and nginx.
No methods match this search.
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.