Версии API управляют через совместимость контрактов, документирование изменений и контролируемую миграцию клиентов; версия в URL или заголовке — только способ маршрутизации.
Как вы управляете версиями API для клиентов?
Версии API управляют через совместимость контрактов, документирование изменений и контролируемую миграцию клиентов; версия в URL или заголовке — только способ маршрутизации.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Версии API управляют через совместимость контрактов, документирование изменений и контролируемую миграцию клиентов; версия в URL или заголовке — только способ маршрутизации.
Добавление необязательного поля часто совместимо, а удаление поля, изменение типа или смысла статуса может ломать клиентов. Для несовместимого изменения вводят новую версию и период поддержки старой, если это нужно продукту. Важно знать реальные версии клиентов и проверять контракты в CI. Объявляйте deprecation и сроки заранее, наблюдайте использование старого API. Не стоит менять поведение под прежним номером и ожидать, что все desktop- или мобильные клиенты обновятся сразу.