API Versioning: Mengubah Tanpa Mematahkan Klien
API yang sudah dikonsumsi sulit diubah. Setiap perubahan bisa mematahkan klien yang tidak Anda ketahui. Versioning memberi ruang untuk berevolusi tanpa kejutan.
Pilih strategi, konsisten
Versioning bisa lewat URI (/v2/), header, atau parameter. Yang penting adalah konsistensi. Bercampur aduk strategi membuat klien bingung dan dokumentasi kacau.
Bedakan breaking vs non-breaking
Tambah field adalah non-breaking: klien lama tetap jalan. Hapus atau ganti tipe field adalah breaking: wajib versi baru. Catat garis ini secara tertulis agar tim sepakat.
Komunikasi sunset
Saat versi lama pensiun, beri waktu cukup dan umumkan. Sunset header dan changelog membantu klien migrasi. Memutus tanpa peringatan merusak kepercayaan selamanya.