Workflows

API Versioning Change Workflow

Handle breaking API changes with parallel version support, migration windows, and controlled deprecation to avoid client outages.

Who This Is For
  • Teams turning commands into repeatable routines
  • Readers who need sequencing, branch, and sync discipline
Prerequisites
  • Basic understanding of fetch, pull, push, and branches
  • A sense of how and why branches diverge
Common Risks
  • Copying a workflow without checking branch state
  • Choosing the wrong integration path on shared branches

The hard part of API versioning is not shipping v2. The hard part is migrating clients safely without large compatibility incidents.

Breaking-change migration pathIntroduce a new version while old version remains available, migrate clients with visibility, then deprecate on a scheduled window.
Inputs
breaking-change scopeclient inventorydeprecation policy
Outputs
reduced compatibility incidentspredictable migration cadenceenforceable deprecation
Versioning is governance and migration discipline, not just URL design.

Recommended sequence

1. Identify truly breaking deltas

Examples: semantic field changes, auth model changes, default-behavior changes.

2. Provide parallel version support

Keep v1 and v2 concurrently available during migration.

3. Publish migration guide and timeline

Include request/response diffs, errors, examples, and cutoff dates.

4. Track migration progress

Observe by client version, traffic volume, and error rates.

5. Deprecate old version on schedule

Use staged notices, rehearsal, and emergency reopen plans.

Breaking changes without migration windows become production incidents

Even correct API design fails operationally if client upgrade speed is uneven and unmanaged.

Common mistakes

Mistake 1: version number exists but migration plan is missing

Labels without migration execution do not reduce risk.

Mistake 2: assuming all clients can upgrade in sync

Client release cadences vary significantly in real environments.

Mistake 3: never retiring old versions

Long-lived legacy versions accumulate maintenance and security debt.

Draft a migration plan for one breaking API change
  1. List all breaking differences.
  2. Set migration start and end dates.
  3. Define migration-progress dashboard fields.
  4. Define deprecation and emergency reopen policy.

Good follow-up reads

  1. Cross-repository integration workflow
  2. Release train workflow
  3. Feature flag rollout workflow