HTTP Request Methods

Look up any registered HTTP request method: what it does, which specification defines it, and whether it is safe and idempotent. The table covers the nine core methods and the WebDAV, DeltaV and CalDAV extensions.

Runs locally in your browser
MethodDefined inSafe / idempotentPurpose
Core methods
GETRFC 9110 §9.3.1yes / yesRetrieve a representation of the target resource.
HEADRFC 9110 §9.3.2yes / yesRetrieve the response headers without the response body.
POSTRFC 9110 §9.3.3no / noSend data to the target resource for processing; often creates a resource or starts an action.
PUTRFC 9110 §9.3.4no / yesCreate the target resource or replace it with the request content.
DELETERFC 9110 §9.3.5no / yesRemove the target resource.
CONNECTRFC 9110 §9.3.6no / noOpen a tunnel to the target authority, usually through a proxy.
OPTIONSRFC 9110 §9.3.7yes / yesAsk which methods and options the target resource supports.
TRACERFC 9110 §9.3.8yes / yesAsk the server to echo the received request for diagnostics.
PATCHRFC 5789 §2no / noApply the changes described in the request content to the target resource.
WebDAV extensions
PROPFINDRFC 4918 §9.1yes / yesRead the properties of a resource; the Depth header selects the tree.
PROPPATCHRFC 4918 §9.2no / yesSet or remove several properties of a resource in one request.
MKCOLRFC 4918 §9.3no / yesCreate a collection, the folder-like resource of WebDAV.
COPYRFC 4918 §9.8no / yesCopy a resource to the URI given in the Destination header.
MOVERFC 4918 §9.9no / yesMove a resource to the URI given in the Destination header.
LOCKRFC 4918 §9.10no / noTake a write lock on a resource and return a lock token.
UNLOCKRFC 4918 §9.11no / yesRelease a lock with the token from the Lock-Token header.
ACLRFC 3744 §8.1no / yesRead or change the access control list of a resource.
SEARCHRFC 5323 §2yes / yesRun a DASL query over a collection and return the matching resources.
MKCALENDARRFC 4791 §5.3.1no / yesCreate a calendar collection with its calendar properties.
BINDRFC 5842 §4no / yesAdd an existing resource to a collection as a new binding.
UNBINDRFC 5842 §5no / yesRemove a binding from a collection.
REBINDRFC 5842 §6no / yesMove a binding from one collection to another.
ORDERPATCHRFC 3648 §7no / yesChange the position of the members of an ordered collection.
MKREDIRECTREFRFC 4437 §6no / yesCreate a redirect reference resource that points at another URI.
UPDATEREDIRECTREFRFC 4437 §7no / yesChange the target URI of a redirect reference resource.
Versioning extensions (DeltaV)
VERSION-CONTROLRFC 3253 §3.5no / yesPut a resource under version control.
REPORTRFC 3253 §3.6yes / yesAsk for a versioning, property or DAV report about a resource.
CHECKOUTRFC 3253 §8.8no / yesMake a version-controlled resource writable, or create a working resource.
CHECKINRFC 3253 §9.4no / yesSave the changes as a new version and return the resource to read-only.
UNCHECKOUTRFC 3253 §4.5no / yesCancel a checkout and discard the uncommitted changes.
MKWORKSPACERFC 3253 §6.3no / yesCreate a workspace for versioned work.
UPDATERFC 3253 §7.1no / yesApply the changes of one version to another resource.
LABELRFC 3253 §8.2no / yesAdd or remove a label on versions.
MERGERFC 3253 §11.2no / yesMerge the differences between two version histories.
BASELINE-CONTROLRFC 3253 §12.6no / yesTurn a collection into a baseline-controlled collection.
MKACTIVITYRFC 3253 §13.5no / yesCreate an activity that groups changes across resources.
Other registered methods
QUERYRFC 10008 §2yes / yesSend a safe, idempotent query with its parameters in the request content.
PRIRFC 9113 §3.4yes / yesSent only in the HTTP/2 connection preface, before any frame.
Removed from HTTP
LINKRFC 2068 §19.6.1.2no / yesDefined in RFC 2068 to create a link between resources; later HTTP revisions removed it.
UNLINKRFC 2068 §19.6.1.3no / yesDefined in RFC 2068 to remove a link between resources; later HTTP revisions removed it.

How to read this method reference

This page lists every method in the IANA HTTP Method Registry, the register the IETF keeps for HTTP request methods. Each row gives the method name, the specification that defines it, whether it is safe and idempotent, and one line on what it does.

The rows ship with the page: nothing is generated at runtime, no input is required, and no request is sent while you read. The search field only filters the table in your browser.

  1. Filter the table by typing part of a method name, an RFC number or a word from a description into the search field; the counter shows how many entries are still visible.
  2. Read the Defined in column to reach the specification. The section sign points at the clause that defines the method, for example RFC 9110 §9.3.1 for GET.
  3. Check Safe / idempotent before you repeat a request: a safe method is defined as read-only, and an idempotent method can be sent again with the same effect.
  4. Use Copy row when the whole line is needed, or select a single cell. The table is a reference: nothing is converted, stored or uploaded.

What the columns and the registry mean

Safe and idempotent

A method is safe when the specification defines it as read-only: GET, HEAD, OPTIONS, TRACE, PROPFIND, REPORT, SEARCH, QUERY and PRI are marked safe in the registry. Safe describes the intent, not the side effects a server chooses to add — a GET can still be logged, counted or billed.

A method is idempotent when repeating the identical request has the same effect as sending it once. PUT, DELETE and almost every WebDAV and DeltaV method are idempotent; POST, PATCH, CONNECT and LOCK are not, so a client or proxy must not repeat them automatically after a timeout.

The registry is the source of truth

The IANA registry is updated as new methods are published, and this table follows it: the method name, the safe and idempotent flags and the first specification listed. Where the registry records further specifications — MKCOL is extended by RFC 5689, PROPFIND and REPORT by RFC 8144 — the defining RFC is the one shown.

Methods outside the registry exist. UPnP SSDP sends M-SEARCH over UDP, RFC 2774 defines M- prefixed extension methods such as M-GET, and many APIs invent verbs of their own; a server that does not recognise a method answers 405 Method Not Allowed, and a proxy may refuse it outright.

Removed and protocol-specific entries

LINK and UNLINK come from RFC 2068, the first HTTP/1.1 specification, and were removed later: the registry still lists them with their draft reference, but no current HTTP specification uses them.

PRI is sent once per connection, in the HTTP/2 connection preface, before any frame; the registry also lists the asterisk form, used as OPTIONS * to address the server as a whole instead of one resource. Both are easy to misread in a request log.

Recent tools: