Api
10 pages
-
API Design
concept
REST, gRPC, GraphQL exchange format decision; HTTP methods; URL modeling; status codes; OAS; versioning; Postel's Robustness Principle; non-breaking vs breaking changes; implementation-as-de-facto-spec; version translation in controllers; API-first
-
API Gateway
concept
Gateway taxonomy (enterprise/microservices/mesh), capabilities, pitfalls, history
-
API Protocol Selection: REST vs gRPC vs GraphQL
comparison
REST vs gRPC vs GraphQL: decision table by traffic type; trade-off analysis across caching, schema, streaming, browser support, evolution; mixing protocols; chatty API anti-pattern
-
API Testing
concept
Test pyramid, consumer-driven contracts, Pact, component/integration/E2E testing; scope vs size distinction, test double fidelity hierarchy, user journey tests, formal verification with TLA+; EDM topology testing, integration testing strategies, event data sourcing
-
Contracts in Distributed Architecture
concept
Strict/loose contract spectrum; consumer-driven contracts; stamp coupling; event schema evolution (forward/backward/full compatibility); schema registry; event design anti-patterns; Newman: structural vs semantic breakages, expansion changes, dual-version strategies; EIP: Format Indicator (version number/foreign key/embedded schema), Canonical Data Model
-
HTTP
concept
HTTP/1.1 vs HTTP/2 vs HTTP/3 (QUIC); multiplexing; HOL blocking; connection management; relationship to REST
-
Idempotency
concept
Idempotency keys (atomicity requirement, principle of least astonishment), at-least-once delivery, retry safety
-
Mastering API Architecture
source
*Mastering API Architecture* — Gough, Bryant, Auburn
-
OAuth2 and Authentication
concept
OAuth2 roles, JWT, grants (Auth Code, PKCE, Client Credentials), OIDC, refresh tokens
-
Threat Modeling
concept
STRIDE, DREAD, OWASP API Top 10, six-step process, rate limiting strategies