Api_design terms
Contracts between systems that need to trust each other
A well-designed API is a pleasure to integrate; a poorly designed one is a tax on every team that touches it. This category covers REST principles, GraphQL, versioning strategies, authentication patterns, rate limiting, idempotency, error responses, and the design decisions that make APIs intuitive, stable, and a joy to build against.
API Versioning
Strategies for evolving an API without breaking existing consumers — URI versioning, header versioning, and content negotiation.
1mo ago
api_design intermediate
API Authentication Patterns
Bearer tokens (JWT) for user sessions, API keys for machine-to-machine, mTLS for highest-security internal services — matching authentication method to the use case.
2mo ago
api_design intermediate
Rules for evolving an API without breaking existing clients — additive changes are safe, removals and renames require versioning, and deprecation needs a documented sunset period.
2mo ago
api_design intermediate
API Contract Testing
Consumer-driven contract tests verify that a provider API matches what consumers expect — catching breaking changes before deployment, without end-to-end tests.
2mo ago
api_design advanced
API Documentation
OpenAPI/Swagger for REST APIs, Postman collections for explorability, and Stoplight for design-first workflows — good API docs are the product's user interface for developers.
2mo ago
api_design intermediate
A client-generated unique key sent with non-idempotent requests — the server stores the response and returns it unchanged if the same key is received again, preventing duplicate operations.
2mo ago
api_design intermediate
API Mocking
Prism (OpenAPI mock server), WireMock (HTTP stub server), Mockoon (GUI), and Guzzle MockHandler for PHP unit tests — enabling testing without real API calls.
2mo ago
api_design intermediate
The process of signalling that an API version, endpoint, or parameter will be removed — giving consumers time to migrate while maintaining backwards compatibility.
2mo ago
api_design intermediate
Returning structured, machine-readable error responses using appropriate HTTP status codes — enabling clients to handle errors programmatically without parsing message strings.
2mo ago
api_design intermediate
Strategies for returning large collections in manageable chunks — offset/page-based, cursor/keyset, and hybrid approaches each suit different use cases.
2mo ago
api_design intermediate
Controlling how many requests a client can make in a time window — protecting against abuse, ensuring fair usage, and preventing accidental DoS from misbehaving clients.
2mo ago
api_design intermediate