Technical Glossary

API Versioning

Definition: Strategy for managing API changes without breaking compatibility with existing clients, enabling controlled evolution of the public interface.

— Source: NERVICO, Product Development Consultancy

What Is API Versioning

API versioning is the practice of managing different versions of a programming interface to allow its evolution without breaking compatibility with existing clients. When an API needs incompatible changes (breaking changes), a new version is published while maintaining the previous one during a transition period, giving consumers time to migrate.

How It Works

There are three main strategies. URL versioning includes the version in the path (api/v1/users, api/v2/users) and is the most visible and easiest to implement. Header versioning uses a custom HTTP header (Accept: application/vnd.api+json;version=2) to select the version. Query parameter versioning adds the version as a parameter (api/users?version=2). Regardless of strategy, documenting differences between versions, establishing clear deprecation policies, and communicating end-of-life timelines for old versions are essential.

Key Use Cases

  • Evolution of public APIs consumed by external clients who cannot update simultaneously
  • Gradual migration of response schemas in internal APIs between microservices teams
  • Releasing new endpoint versions with improved functionality without affecting existing integrations
  • API lifecycle management in SaaS platforms with multiple mobile client versions in circulation

Advantages and Considerations

Versioning enables evolving APIs safely and predictably, giving consumers control over when to adopt changes. It is especially critical in public APIs and ecosystems with many integrators. The main consideration is the cost of maintaining multiple versions simultaneously, including code complexity, testing, and documentation. Minimizing breaking changes and favoring additive changes that do not require a new version is recommended.

Need help with product development?

We help you accelerate your development with cutting-edge technology and best practices.