--- title: Get started migrating and test your app description: >- Helpful tips and guidance for migrating from the REST product APIs to Graphql product APIs source_url: html: >- https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/migrate-and-test md: >- https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/migrate-and-test.md --- ExpandOn this page * [Create a dev store that allows 2,048 variants per product](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/migrate-and-test.md#create-a-dev-store-that-allows-2048-variants-per-product) * [Mapping Product and Product​Variant REST IDs to Graph​QL GIDs](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/migrate-and-test.md#mapping-product-and-productvariant-rest-ids-to-graphql-gids) * [Endpoint and Field differences between REST and Graph​QL](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/migrate-and-test.md#endpoint-and-field-differences-between-rest-and-graphql) * [Get started using the API](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/migrate-and-test.md#get-started-using-the-api) # Get started migrating and test your app 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](https://shopify.dev/docs/api/admin-graphql). For details and migration steps, visit our [migration guide](https://shopify.dev/docs/apps/build/graphql/migrate). There are a number of helpful tips and resources available for migrating from the REST product APIs to the new GraphQL APIs. As you learn with this guide, new questions may come up - we encourage you to post them in [Shopify Community: New GraphQL Product APIs Forum](https://community.shopify.com/c/new-graphql-product-apis/bd-p/new-graphql-product-apis). *** ## Create a dev store that allows 2,048 variants per product By default, stores have a limit of 100 variants for each product. We recommend testing your app with a dev store that allows products with 2,048 variants. You can create and configure a dev store with the **Extended Variants** feature preview by following these steps: 1. Log in to your [Dev Dashboard](https://dev.shopify.com/dashboard). 2. Select **Dev stores** and click **Add dev store**. 3. Enter a unique store name. 4. Select a Shopify plan for your dev store. 5. Select **Test a feature preview on this store**. 6. From the list, select **Extended Variants**. 7. Click **Create store**. You can now test and experiment with the expanded product variant limits in your new dev store. *** ## Mapping Product and Product​Variant REST IDs to Graph​QL GIDs When migrating from REST to GraphQL for products and variants, you don't need to restructure your database to include a GraphQL-specific ID column. Instead, you can create the [GraphQL global ID (GID)](https://shopify.dev/docs/api/usage/gids) using an existing REST ID. The following example shows how the GID format is the existing REST ID prefixed with `"gid://shopify/Product/"` for products and `"gid://shopify/ProductVariant/"` for variants. ##### Product ```ruby - REST ID: 123456 - GraphQL GID: "gid://shopify/Product/123456" ``` ##### ProductVariant ```ruby - REST ID: 654321 - GraphQL GID: "gid://shopify/ProductVariant/654321" ``` *** ## Endpoint and Field differences between REST and Graph​QL A key task will be to map the REST calls your app makes to `/products` and `/variants` to the various queries and mutations in GraphQL, including the selection of fields in GraphQL. The [REST reference documentation](https://shopify.dev/docs/api/admin-rest/latest/resources/product) now includes direct mapping between REST HTTP methods and fields and the corresponding GraphQL reference documentation. *** ## Get started using the API [Retrieve data\ \ ](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/retrieve-data) [Learn how to retrieve product data, including for a large number of variants.](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/retrieve-data) [Add data\ \ ](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/add-data) [Learn how to add product data, including variants and options.](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/add-data) [Edit data\ \ ](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/edit-data) [Learn how to edit product data, including variants and options.](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/edit-data) [Sync data\ \ ](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/sync-data) [Learn how you can sync product data from an external source into Shopify.](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/sync-data) *** * [Create a dev store that allows 2,048 variants per product](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/migrate-and-test.md#create-a-dev-store-that-allows-2048-variants-per-product) * [Mapping Product and Product​Variant REST IDs to Graph​QL GIDs](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/migrate-and-test.md#mapping-product-and-productvariant-rest-ids-to-graphql-gids) * [Endpoint and Field differences between REST and Graph​QL](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/migrate-and-test.md#endpoint-and-field-differences-between-rest-and-graphql) * [Get started using the API](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/migrate-and-test.md#get-started-using-the-api)