1 / 10

System design ยท HTTP, APIs & networking

Safe methods do not request a state change

GET and HEAD are defined as safe: the client does not ask the server to change application state. Logging and metrics may still change as side effects. Safe methods can be retried or prefetched more freely because their requested semantics are read-only.

POST commonly asks the server to process content, but its effect depends on the resource contract.