patternModerate
REST API versioning strategies
Viewed 0 times
API versioningURL versionheader versionbreaking changesbackward compatibility
Problem
API needs to evolve without breaking existing clients. Need a versioning strategy balancing simplicity and maintenance.
Solution
Three approaches: (1) URL path (/api/v1/users) — simplest, most visible. Best for public APIs. (2) Header versioning (Accept header) — clean URLs but less discoverable. (3) Query parameter (?version=2) — easy but pollutes URL. Recommendation: URL versioning for public APIs, header for internal. Version the contract, not every endpoint. Support N-1 versions minimum.
Why
APIs are contracts. Changing response shapes or removing fields breaks clients. Versioning lets you evolve while giving clients time to migrate.
Revisions (0)
No revisions yet.