**Shopify has updated the GraphQL product APIs to support raising the variant and option limits for all merchants in 2025.** This change comes with improvements to interfacing with product data and deprecation of APIs as of the `2024-04` releases. Apps using the following deprecated APIs must migrate to in-support GraphQL APIs in the following scenarios: GraphQL Admin API `variants` and `options` fields on the `ProductInput` on version 2024-01 or earlier: - Public apps must migrate by February 2025 - Custom apps must migrate by April 2025 REST Admin API `/products` and `/variants` endpoints on any version: - Public apps must migrate to supported GraphQL APIs by February 2025 - Custom apps must migrate if they're integrated with stores that plan to have products with more than 100 variants. The REST API won't return more than 100 variants for each product and won't write to products with more than 100 variants. ## Key product API changes As of version 2024-04, there are key changes to the product model that are fundamental to scaling variants beyond 100 and options beyond 3: - Variant and option operations are separate from product operations, with targeted APIs for specific workflows - Product options are now a first class citizen in the system. They're managed with new mutations and fields for `options` and `option values` and are separate from product operations. - Webhooks now contain a `variant_ids` field. The Product/update webhook will return a full variant payload for the first 100 records. To support variants 101+, the payload will also include the full list of `variant_ids` with the `updated_at` field. ## Get started building or migrating your app

API updates & the product model

Learn more about the specific API updates that change the approach to interacting with the GraphQL API.

Get started migrating from REST

Get started migrating from the REST API and create a test shop with 2048 variant products.

Migrate to GraphQL

If you're new to using GraphQL at Shopify, then review guides and resources for migrating your app to the GraphQL Admin API from the REST Admin API.