Shopify API versioning
API versioning allows Shopify to continuously evolve the platform while offering third-party developers a predictable path for feature upgrades and deprecations.
To ensure you always know about upcoming API changes, follow the Changelog and always keep your contact information up to date in the Partner Dashboar .
Versioned vs. unversioned APIs
|Versioned APIs||Unversioned APIs|
Shopify releases a new API version every 3 months at the beginning of the quarter. Version names are date-based to be meaningful and semantically unambiguous (for example,
2020-01). Below is an example release schedule for 2020:
|Stable version||Release date||Date stable version is supported until|
|2021-01||January 1, 2021||January 1, 2022|
|2021-04||April 1, 2021||April 1, 2022|
|2021-07||July 1, 2021||July 1, 2022|
|2021-10||October 1, 2021||October 1, 2022|
Stable versions are released at 5pm UTC.
Each stable version is supported for a minimum of 12 months. This means that there are at least 9 months of overlap between two consecutive stable versions. When a new stable version is introduced and contains changes that affect your app, you have 9 months to test and migrate your app to the new version before support for the previous version is removed.
We strongly recommend updating your apps to call the latest stable API version every quarter. However, if your app calls a stable version that is no longer supported, then Shopify falls forward and responds to your request with the same behaviour as the oldest supported stable version. For example, when Shopify removes
2019-07, API requests that call version
2019-07 will be served version
2019-10, because that will be the oldest supported stable version.
If your request doesn't include a version, then the API also defaults to the oldest supported stable version. However, we do not recommend relying on this behaviour for adopting deprecated changes. As you update your app, you should specify the API version with every request. By making your app version aware, you anchor your code to a specific set of features that are guaranteed to behave in the same way for the supported timeframe.
Example version support schedule