Part 2
3 chapters
Designing resources with a contract
Model a domain as resources and express it as an OpenAPI 3.1 contract that CI enforces against both stacks.
Chapter 3
Designing around resources
Model the domain as resources โ nouns not verbs, collections versus items, and why mirroring your database tables produces a chatty, leaky API.
Chapter 4
Contract-first with OpenAPI
Author the bookings and cargo contract as one OpenAPI document, scaffold both stacks to serve it, and wire the CI gate that fails the build when a response drifts from the schema.
Chapter 5
HTTP methods & the idempotency matrix
Which methods are safe, which are idempotent, and why it matters โ with an idempotent PUT and a correct DELETE built and verified in both stacks.