Versioning promises your API consumers will remember

A practical checklist for what you are actually guaranteeing when you stamp v1 on a public or partner API.

Team collaborating around a table with documents

Stamping /v1/ on a path feels like progress. Consumers treat it as a contract: fields stay, meanings stay, and breaking changes wait for /v2/. In API design advisory sessions we ask teams to write the promise in plain language before the first external client integrates.

Compatible changes

Additive fields, new optional query parameters, and new error codes that old clients can ignore usually keep the peace. Document them anyway. Silence breeds folklore.

Breaking changes

Renaming fields, tightening validation that used to accept lenient input, and changing pagination defaults all break someone. If you must, cut a new version and give a deprecation window measured in consumer release cycles โ€” not in your sprint board optimism.

Header vs. path versioning

Either can work. Pick one house style and stop debating mid-integration. The expensive part is mixed signals across endpoints.

Bring a draft OpenAPI and a list of known consumers to an API design advisory session if you want facilitation while the team settles the rule.

โ† All field notes