Semantic versioning / version negotiation?
Semantic versioning (semver) uses MAJOR.MINOR.PATCH format, e.g., 1.2.0.
- MAJOR version changes break backward compatibility.
- MINOR versions add functionality in a backward-compatible manner.
- PATCH versions are for backward-compatible bug fixes.
Version negotiation allows clients and servers to agree on an API version via headers or
URL. Servers should support multiple versions and respond with supported version info.