HTTP Request Methods Cheat Sheet

The core request methods and their respective purpose

Download as .pdf

API: /api/v1/cheatsheet/http-request-methods-cheat-sheet

Core Methods Overview

Method Purpose Idempotent Safe Body
GET Retrieve data X
POST Create new resource X X
PUT Replace resource X
PATCH Partially update resource X X
DELETE Delete resource X X
HEAD GET without body X
OPTIONS Describe allowed methods X

GET — Retrieve Data

Purpose:

Fetch data from the server.

Example: GET /api/users/1

Characteristics:

  • No side effects (should not modify state)
  • Parameters passed via URL

POST — Create Resource

Purpose:

Send data to create something new.

Example: POST /api/users Body { "name": "Alice" }

Characteristics:

  • Not idempotent (calling twice creates duplicates)
  • Used for form submissions, API creation

PUT — Replace Resource

Purpose:

Replace entire resource.

Example: PUT /api/users/1 Body { "name": "Alice", "age": 30 }

Characteristics:

  • Idempotent (same request = same result)
  • Full replacement

PATCH — Partial Update

Purpose:

Update part of a resource.

Example: PATCH /api/users/1 Body { "age": 31 }

Characteristics:

  • Not necessarily idempotent
  • More efficient than PUT

DELETE — Remove Resource

Purpose:

Delete something.

Example: DELETE /api/users/1

Characteristics:

  • Idempotent (deleting twice = same result)
  • Usually no response body

HEAD — Metadata Only

Purpose:

Same as GET but returns only headers.

Example: HEAD /api/users/1

Use Cases:

  • Check if resource exists
  • Get content length

OPTIONS — Discover Capabilities

Purpose:

Ask server what methods are allowed.

Example: OPTIONS /api/users

Response: Allow: GET, POST, OPTIONS

Used for:

  • CORS preflight requests

Idempotency Explained

Idempotent: Same request → same result

Safe: No side effects

Examples:

  • GET /users/1 → always same result
  • PUT /users/1 → same data replaces resource
  • DELETE /users/1 → deleting again does nothing
  • POST /users → creates new each time

Join the Newsletter

Practical insights on Django, backend systems, deployment, architecture, and real-world development — delivered without noise.

Get updates when new guides, learning paths, cheat sheets, and field notes are published.

No spam. Unsubscribe anytime.



There is no third-party involved so don't worry - we won't share your details with anyone.