Intermediate

REST API Engineering

An API is a contract other people build on.

Resource design, HTTP semantics, validation, an error model clients can code against, pagination, filtering, versioning, idempotency and rate limiting — with Spring MVC as the implementation and OpenAPI as the contract.

8 lessons written1 outlined2 modules~2h reading

After this course you can

  • Design resources and choose methods and status codes that mean what HTTP says they mean
  • Return errors as a consistent model (RFC 9457 Problem Details) from one place
  • Paginate large collections with cursors and know why offsets stop working
  • Make writes idempotent and explain the idempotency key end to end

Curriculum

9 lessons · outlined lessons show their plan