Переименование поля в ответе публичного API
Эндпоинт GET /api/v1/orders/{id} отдаёт JSON. Чтобы привести ответ к общему стилю, разработчик переименовал поле client_id в customerId и выкатил изменение. Эндпоинтом пользуются три внешние команды.
Как корректно оценить это изменение?
- Изменение ломающее: старое поле исчезло из ответа. Совместимый путь — добавить новое, какое-то время отдавать оба и согласовать дату отключения старого
- Изменение безопасно: клиенты на Jackson по умолчанию игнорируют неизвестные поля, а лишнее поле никого не ломает
- Изменение безопасно, достаточно обновить описание OpenAPI и уведомить внешние команды сразу после выката
- Любое изменение структуры ответа требует нового пути /api/v2, поэтому и добавление новых полей недопустимо
