Skip to main content

Versioning

The Automation API uses semantic versioning.

About entire API versioning

Breaking changes are only released in new major versions of the API with the following exceptions:

  • Endpoints that are not yet in use may contain breaking changes in a minor version (1.x).
  • Important security bugs that break backward compatibility fixes may be released in a minor version. All API changes are available in the API changelog

Breaking changes include the following types of changes:

  • Removing an entire operation.
  • Removing or renaming a parameter.
  • Removing or renaming a response field.
  • Adding a new required parameter.
  • Making a previously optional parameter required.
  • Changing the type of a parameter or response field.
  • Removing enum values.
  • Adding a new validation rule to an existing parameter.
  • Changing authentication or authorization requirements.

Any additive (non-breaking) changes will be available in all supported API versions. Additive changes are changes that should not break an integration. Additive changes include:

  • Adding an operation.
  • Adding an optional parameter.
  • Adding an optional request header.
  • Adding a response field.
  • Adding a response header.
  • Adding enum values.

When Kameleoon releases a new major API version, the previous API version will remain supported for at least 3 more months.

Specifying an API version

By default, https://api.kameleoon.com uses the most current API. You can specify a specific API version by including it in the URL. For example, https://api.kameleoon.com/v1/. When released, the next major version of the API will be available at https://api.kameleoon.com/v2.

About API per-endpoint versioning

Some endpoints allow you to specify a specific version of that endpoint to use. For example, you might want to use a newer version of one specific endpoint than the rest of your API calls. Where available, use the version parameter to specify your desired endpoint version.

However, when a new major version is released, all previous versions are removed. For example, if an endpoint has version 1 and version 2 in the 1.0.0 API version, the 2.0.0 API version will only contain the latest version of the endpoint.