Skip to main content

Using the latest GraphQL product APIs

Legacy

The REST Admin API is a legacy API as of October 1, 2024. All apps and integrations should be built with the GraphQL Admin API. For details and migration steps, visit our migration guide.

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.


Anchor to Key product API changesKey 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.

Anchor to Get started building or migrating your appGet started building or migrating your app


Was this page helpful?