Changes to our API
Releasing changes to our API constantly, rather than following a fixed release schedule, allows us to be more responsive and agile in addressing customer needs, security vulnerabilities, and emerging market demands.
This approach enables us to fix bugs, patch security issues, and introduce new features or improvements as soon as they are ready, minimising downtime and enhancing user experience. Additionally, it allows us to gather real-time feedback and make incremental changes, reducing the risk of large, disruptive updates.
Types of changes
Most changes are minor, won’t affect your integration, and are therefore classed as non-breaking changes. Sometimes we’ll release a major change to our API which will require you to do some further integration work. This is classed as a breaking change.
A non-breaking change is part of our continuous update process, which will not interrupt your integration.
Most changes are introduced without prior notification. Please ensure that your application or integration is designed to handle these types of changes.
A breaking change is something that might require you to update your application to avoid interruptions in service.
We’ll always notify you in advance and allow you plenty of time to perform any required updates to your integration.
Here are some specific examples of each type of change and how they will affect your integration with Volt.
API endpoints
Non-breaking change | Breaking change |
---|---|
Adding an endpoint | Removing of an endpoint |
Adding a method to an existing endpoint | Renaming of an endpoint |
Request and response body
Non-breaking change | Breaking change |
---|---|
Adding an optional field to a request body | Adding a required field to a request body |
Adding a field to a response body | Renaming or removing a field in a request or response body |
Changing a field in a request body from required to optional | Changing a field in a request body from optional to required |
Changing the type of a field in a request or response body |
HTTP headers
Non-breaking change | Breaking change |
---|---|
Adding an optional request header | Adding a required request header |
Adding a response header | Removing a response header |
Changing a request header from required to optional | Changing a request header from optional to required |
Query parameters
Non-breaking change | Breaking change |
---|---|
Adding an optional request query param | Adding a required request query param |
Adding a query param to redirect URL | Removing a query param from redirect URL |
Changing a request query param from required to optional | Changing a request query param from optional to required |
Renaming a request query param |
Others
Non-breaking change | Breaking change |
---|---|
Changing a response error message | Changes to existing permissions |
Adding a response status code | |
Extending enum dictionaries (response error codes, validation error types, allowed values for HTTP headers, validation) |
API versioning
Changes policy allows to avoid API versioning, however there might be a situation when such versioning is required.
API version is controlled by X-Volt-Api-Version
HTTP header.
At this moment there is only one version: 1
.
- On this page
- Changes to our API
- API versioning