A REST-style URL names a thing, not an action. `/orders/482` identifies a specific order; what you do to it — read it, update it, delete it — is expressed by the HTTP method, not by the URL. This sounds like a small convention, but it's the load-bearing idea the rest of resource modeling depends on: once a URL is a noun, every consumer can predict its shape for any operation without memorizing a separate verb-based endpoint for each one. `GET /orders/482`, `PATCH /orders/482`, `DELETE /orders/482` are all guessable from knowing one of them; `/getOrder/482`, `/updateOrderStatus/482`, `/removeOrder/482` are three separate things to memorize with no shared structure to lean on.
The discipline breaks down in two common ways. The first is verbs sneaking into URLs — `/orders/482/cancelOrder` — which usually means the team reached for an action when a state transition or a sub-resource would model the same thing more consistently. The second is resources that don't map to anything a consumer would recognize as a real, addressable thing — an endpoint like `/processOrderBatch` that isn't really about a resource at all, but a one-off operation dressed up as if it had a URL to identify, when what it actually needs is to be modeled honestly as an action on a genuine resource, which this lesson and the next will both return to.
Getting resource modeling right is worth the up-front thought because URL structure is one of the most visible, most-referenced parts of an API — it appears in every log line, every error report, every piece of documentation, and every conversation between engineers debugging an integration. A confusing resource model doesn't just make the API harder to use; it makes every conversation about the API harder to have.