Возьмите конечную точку HTTP API, которая выделяет следующую модель ответа:
{
"type": "Dog",
"name": "Jessi",
...
}
type
Поле было описано в документации как один из Dog
, Cat
или Fish
.
Будет ли добавление новой опции, скажем Rat
, рассматриваться как критическое изменение API?
Считается ли добавление опции в конечный список (которую может включить разработчик) расширением или модификацией API?
источник
Он сломался бы, только если «Крыса» могла быть возвращена из существующих операций.
Если существующие операции не могут вернуть «Rat», то добавление этой новой опции не будет иметь никакого эффекта.
источник