API 버전 관리 이란
API 버전 관리
API 버전 관리
API 버전 관리는 기존 클라이언트와의 하위 호환성을 유지하면서 API 변경을 관리하는 관행입니다.
버전 관리 전략
| 전략 | 예시 | 설명 | |------|------|------| | URL 경로 | /api/v1/users | URL 경로의 버전 | | 쿼리 파라미터 | /api/users?version=1 | 파라미터의 버전 | | 헤더 | X-API-Version: 1 | 헤더의 버전 | | Content Type | Accept: application/vnd.api.v1+json | 미디어 타입 버전 |
시맨틱 버전 관리
- 메이저 (v1→v2) — 호환성 깨지는 변경
- 마이너 (v1.1→v1.2) — 새 기능, 하위 호환
- 패치 (v1.1.0→v1.1.1) — 버그 수정
모범 사례
- 모든 변경 사항 문서화 (changelog)
- 최소 2개 버전 지원
- 사전에 지원 중단 공지
- sunset 헤더 사용
- 마이그레이션 도구 제공
새 버전이 필요한 경우
- 필드나 엔드포인트 제거
- 응답 형식 변경
- 파라미터 의미 변경
- 인증 변경