Shopify API version 2024-04: Now available on all Gadget apps
TL;DR: Shopify API version 2024-04 is now available on all Gadget apps.
It’s time for another of Shopify’s quarterly API upgrades! Every few months, Shopify releases new changes to bring developers a whole new collection of features and resources they can use to build their apps. For those of you building on Gadget, you can upgrade to the latest version in a click.
What’s new in 2024-04?
As of today, you can upgrade your Gadget apps to use Shopify API version 2024-04, which includes the following changes:
1. Checkout resource deprecation — with a twist
The Checkout resource is now deprecated and will sunset April 1, 2025. Shopify has said that 2024-04 is the final stable version where the Checkout APIs will remain available.
The good news though, is Shopify will not be deprecating the <inline-code>checkouts/create<inline-code> and <inline-code>checkouts/update<inline-code> webhooks, which means Gadget will be able to continue supporting the checkout model — exactly as we have been — beyond the April 2025 deprecation date.
For anyone looking to move off of Checkout and build with new functionalities as they’re released, Shopify plans to support the Cart resource in place of Checkout moving forward.
2. Product REST API deprecation
At the 2024 Winter Editions, Shopify announced support for up to 2,000 product variants, and with this change, both the <inline-code>/products<inline-code> and <inline-code>/variants<inline-code> REST API endpoints will be deprecated. Moving forward, developers will be required to use GraphQL. Gadget has already made this change under the hood, so there’s no action needed.
For the REST API endpoint, the full webhook payload will continue to be available for the first 100 variants, but beyond that you will only be able to access the <inline-code>variant_gids<inline-code>. If you wanted to populate the missing data on your own, you would have to manually query the up-to-1900 missing variants using the IDs. Normally, this uses up a large amount of request time, and you run the risk of missing data as it runs. And once you have the data, you’ll still need to manually reformat the payload and save the record to your model.
Thankfully, Gadget automatically fetches variant data for these <inline-code>variant_gids<inline-code> for free so you don’t need to worry about manually fetching the data from Shopify. You’ll save some development time while keeping your variant data up to date, and you won’t even use up your request time.
3. Deprecation of the OrderRisk resource
With the 2024-04 API, the <inline-code>OrderRisk<inline-code> resource and its associated endpoints have been deprecated. Shopify has released a new <inline-code>OrderRiskAssessment<inline-code> and <inline-code>OrderRiskSummary<inline-code> resource to replace it. You can use the new <inline-code>orderRiskAssessmentCreate<inline-code> mutation on the GraphQL Admin API to create new assessments.
There is also a new <inline-code>orders/risk_assessment_changed<inline-code> webhook you will be subscribed to when working with the new OrderRisk models in Gadget.
See the full list of changes in our Shopify API version changelog.