Non Breaking Changes
During APIs development, two types of API changes are expected: non breaking changes or breaking changes.
Inventi never introduces breaking changes. Whenever newly introduced functionality requires breaking changes, a new endpoint is created with increased version prefix number. I.e. v2.
Nevertheless, non-breaking changes are introduced constantly without explicitly notifying the clients. All changes are documented in a Change Logs section.
What is a NON Breaking Change?
- Adding a new optional field in request or response body.
- Changing field from mandatory to optional in request or response body.
- Adding a new endpoint.
- Performance improvements.
- Adding new enum values to the request body.
What is a Breaking Change?
-
Removing or renaming things.
// before
{ "userId": 42 }
// after
{ "id": 42 }
-
Changing data types.
// before
{ "age": 30 }
// after
{ "age": "30" }
-
Making optional things required.
// before, deliveryTime optional
POST /orders
{ "note": "call me" }
// after, deliveryTime required
POST /orders
{ "note": "call me", "deliveryTime": "18:00" }
-
Changing response status code. I.e. from
404 to 400.
-
Changing behavior or meaning.
- Same endpoint, different logic.
- Same field, different interpretation.
Last modified on April 10, 2026