4 min read

Chapter 14: Non-CRUD Operations

When designing a REST API, we often need to perform various manipulations with a resource, including non‑CRUD operations. That’s a challenge in REST, because HTTP methods are primarily designed to map well to CRUD semantics. As a result, non‑CRUD operations have to be modeled in a more specific way.

In practice, every domain operation ultimately results in a state change of a resource. For example, if a client wants to publish an article (or any similar object), it will almost certainly change the resource’s state, such as:

  • published = true
  • publishedAt = 2026-08-12
  • status = published

The full content is available exclusively to premium subscribers.