GET method

GET requests transfer a current representation of the target resource.

  • methods
  • retrieval

Defined meaning

GET asks for transfer of a current selected representation of the target resource. It is safe, idempotent, and cacheable. A range request can ask for only part of the selected representation.

GET /manual HTTP/1.1
Host: example.invalid
Accept: text/html

Expected result: a successful 200 response carries a representation of /manual; a conditional request can instead produce 304, and a range request can produce 206.

Request content

Content in a GET request has no generally defined semantics and can cause some implementations to reject the request because of request-smuggling risk. Do not use a GET body as a portable query mechanism unless a directly participating origin has defined and secured a private contract.

Common mistake

Safety describes the requested semantics, not an absence of incidental effects. Logging and cache population can occur, but a GET target must not assign a destructive meaning to retrieval.

Primary sources