The Opkit API is still in development, which means new versions are being released all the time. You can control which major version of the API you are using by modifying the version string that the start of the URL path. For example, major version 1 is accessible at
https://api.opkit.co/v1. Opkit does not provide users with the ability to specify minor or patch versions - however this should not matter since only major versions contain breaking changes.
It’s important to be aware of which API version you are using, as well as new versions that are made available. You can find this information on our Changelog. When a new major version of the API is released, Opkit wll continue supporting older major versions for a period of time. You will be given at least 3 months notice prior to any planned deprecations.
Opkit labels API versions using a method called semantic versioning, or ”semver”. To summarize how semver works:
- A version is identified by a string of three numbers, separated by periods
- The major, minor, and patch version are indicated by the first, second, and third numbers respectively (
- When a new version includes only backwards-compatible bug fixes, the PATCH number is incremented
- When a new version includes new functionality that is implemented in a backwards-compatible manner, the MINOR number is incremented
- When a new version includes backwards-incompatible/breaking changes, the MAJOR number is incremented
Opkit considers the following changes to be backwards-compatible:
- Adding new API resources
- Adding new optional request parameters to existing API methods
- Adding new properties to existing API responses
- Changing the order of properties in existing API responses
- Changing the length or format of opaque strings, such as object IDs, error messages, and other human-readable strings
Here are a few examples of backwards-incompatible changes:
- Removing API resources
- Adding new required request parameters to existing API methods
- Removing required properties from existing API responses
- Changing the data type of properties in existing API responses
Note that this list is not comprehensive!