Palantir

Rethinking CRUD for REST API Designs

Aug 17, 2021Palantir
Rethinking CRUD for REST API Designs
SummaryAI, from the source post

This post critiques the limitations of traditional CRUD for REST API designs, highlighting issues with create-unless-exists semantics, the need to update entire resources for single field changes, and the lack of built-in conflict resolution. It proposes alternative API design patterns: Get-and-Set (omnibus create/update/delete, last-write-wins), Get-and-Patch (updating specific fields), Timestamp-Checked (optimistic concurrency using logical clocks), and Append-Only-Log (for applications with defined edits). It also emphasizes the importance of incorporating Search and Security-Change/Hard-Delete operations early in API design.

More from the User-Minded API Design trail