Versioning Policy
As the Criteo API continuously evolves, API versioning provides predictability and insight into scheduled changes. This helps you control how you choose to handle feature upgrades and deprecations.
To stay informed about the Criteo API and upcoming changes, you can check the Changelog and ensure your contact info stays current.
Release Schedule
A new Criteo API version is released every three months at the beginning of each quarter. The version names are date-based by year and month, such as 2023-04. This helps you to know precisely when your version was released.
Each version is supported for 12 months. When a new stable version is released and contains changes that affect your integration, you have 12 months to test and migrate to the newest version.
Here is an example release schedule:
Version | Release date | Date Support is Expected by |
---|---|---|
2022-04 | April 21st, 2022 | April 1st, 2023 |
2022-07 | July 20th, 2022 | July 25th, 2023 |
2022-10 | October 25th, 2022 | October 31st, 2023 |
2023-01 | January 17th, 2023 | January 30th, 2024 |
2023-04 | April 18th, 2023 | April 30th, 2024 |
2023-07 | July 18th, 2023 | July 31st, 2024 |
2023-10 | October 17th, 2023 | October 31, 2024 |
Suppose your app calls an endpoint on a stable version that is no longer supported, and no breaking changes were introduced between this version and the oldest stable, supported version. In that case, Criteo will fall forward and respond to your request with the same behavior as the oldest supported stable version.
However, if the oldest stable support version introduces a breaking change compared to the version requested, Criteo will respond with an error to that specific call.
Fall Forward
If your app calls an endpoint on a stable version that is no longer supported, Criteo will fall forward and respond to your request with the same behavior as the oldest supported stable version.
If an endpoint has been removed in all stable versions, then calling such an endpoint on an out-of-support version of Criteo API will result in an error.
Breaking vs. Non-Breaking Changes
Each version might include some changes. Here’s what each of them means.
Breaking change
A breaking change is a change to the API that could cause errors or failures when your app calls the API.
Any change that requires you to change the way you call the API is breaking. Another type of breaking change is deprecating any functionality previously available in the API. Bug fixes can also create breaking changes if they require changing how you call the API.
Backward-compatible change
A backward-compatible change is a change that guarantees that any previous requests will still be valid and provide the same output.
Backward-compatible changes include bug fixes or new features that do not interfere with other endpoints or functionality.
Calling an API Version
The Criteo API version is explicitly declared in the URL your app call, such as:
https://api.criteo.com/2020-10
At any time, several supported versions of the API will be available. Specify which version you want to use call by substituting the version name in the URL.
The Criteo API responses will contain the header Criteo-API-Version, which returns the API version used to execute the request. If your app is updated, this will match the API version that's specified in your request. If the returned version is different, your app is outdated and using the default API version.
Two unstable versions are available with the stable versions: the preview and the beta versions.
Unstable Versions
The Criteo API has two unstable versions, including several features that may change before their potential inclusion in an upcoming stable version.
Developers are welcome to explore and test the features available in these versions.
Preview version
The preview version lets you see what changes will likely be released in the next stable version so that you plan accordingly.
The preview version is based on the latest stable version. Generally, new changes will be in the preview version for at least a month before going to a quarterly stable version.
This version can be called using "preview" as the version number:
https://apigateway.criteo.com/preview
While the changes will likely be released in the stable version, there is always a chance that they might not be released. A feature might be added and removed later before making it to the stable version. Because of this, it’s recommended that you do not use the preview version in your production environment.
Check the preview's documentation if you wish to test the version.
Beta version
The beta version contains features and changes that are still in testing. You can use the beta version to test new and exploratory features, but since changes are frequent, the beta version should not be used in production.
This means that both backward-incompatible and backward-compatible changes are made regularly. As a result, beta features may not always be released in future stable versions.
Any beta endpoints will be flagged in the documentation and changelog. If you’d like to test endpoints available in the beta version, contact your Criteo contact to join the API developer program.
Deprecation
After 12 months of stability, each Criteo API will sunset and be deprecated. Developers will receive notices when a version is about to be deprecated. These notices will also be posted on the changelog.
To stay informed on version changes and updates to the Criteo API, follow the changelog here.
Updated over 1 year ago