#1 Data Analytics Program in India
₹2,499₹1,499Enroll Now
5 min read
•Question 9 of 28medium

How do you version an API?

Understanding API versioning strategies.

What You'll Learn

  • Why version APIs
  • Versioning strategies
  • Best practices

Why Version?

  • Make breaking changes without breaking clients
  • Support multiple versions simultaneously
  • Gradual migration path

Versioning Strategies

1. URL Path (Most Common)

code.jsJavaScript
GET /api/v1/users
GET /api/v2/users

2. Query Parameter

code.jsJavaScript
GET /api/users?version=1
GET /api/users?version=2

3. Header

code.jsJavaScript
GET /api/users
Accept: application/vnd.api+json;version=1

4. Content Negotiation

code.jsJavaScript
GET /api/users
Accept: application/vnd.company.v1+json

Implementation Example

code.jsJavaScript
// Express.js with URL versioning
const express = require('express');
const app = express();

// Version 1
app.use('/api/v1', require('./routes/v1'));

// Version 2
app.use('/api/v2', require('./routes/v2'));

// Or with a router
const v1Router = express.Router();
v1Router.get('/users', (req, res) => {
  res.json({ version: 1, data: users });
});

Best Practices

  • Use URL path versioning for simplicity
  • Support at least 2 versions
  • Deprecate old versions with notice
  • Document breaking changes