# Product Variant <div class='note note-caution'> <h4>Important</h4> <p>Listing, creating, updating, and deleting product variants is deprecated as of REST API 2024-04. For more information, refer to the <a href="/docs/api/admin/migrate/new-product-model">guide to the new product model</a>.</p> </div> <div class='note note-caution'> <h4>Important</h4> <p>Apps can no longer set inventory using <code>inventory_quantity</code>. For more information, refer to the <a href="/api/admin-rest/latest/resources/inventorylevel"><code>Inventory Level</code></a> resource.</p> </div> A variant can be added to a Product resource to represent one version of a product with several options. The Product resource will have a variant for every possible combination of its options. Each product can have a maximum of three options and a maximum of 100 variants. ## Resource Properties ### Product Variant * barcode: The barcode, UPC, or ISBN number for the product. * Type: x-string * Example: "1234_pink" * compare_at_price: The original price of the item before an adjustment or a sale. * Type: x-string * Example: "299.00" * created_at: The date and time (<a href="https://en.wikipedia.org/wiki/ISO_8601">ISO 8601 format</a>) when the product variant was created. * Type: x-string * Example: "2012-08-24T14:01:47-04:00" * fulfillment_service: The handle of a fulfillment service that stocks a product variant. <p></p> <p> This is the handle of a third-party fulfillment service if the following conditions are met: <ol> <li>The product variant is stocked by a single fulfillment service.</li> <li>The <a href="/api/admin-rest/latest/resources/fulfillmentservice">FulfillmentService</a> is a third-party fulfillment service. Third-party fulfillment services don't have a handle with the value <code>manual</code>.</li> <li>The fulfillment service <a href="/changelog/fulfillment-service-sku-sharing">hasn't opted into SKU sharing</a>.</li> </ol> If the conditions aren't met, then this is <code>manual</code>. </p> <p> The <a href="/changelog/fulfillment-service-sku-sharing">relationship between a product variant and a fulfillment service was changed in the <code>2022-07</code> API version</a>. A <a href="/api/admin-rest/latest/resources/product-variant">ProductVariant</a> can be stocked by multiple fulfillment services. As a result, we recommend that you use the <a href="/api/admin-rest/latest/resources/inventorylevel">InventoryLevel</a> resource if you need to determine where a product variant is stocked. </p> <p> If you previously set this field, then we recommend that you instead <a href="/api/admin-rest/latest/resources/inventorylevel#post-inventory-levels-connect">connect an inventory item to a location</a>. Each <a href="/api/admin-rest/latest/resources/location">Location</a> is associated with a single <a href="/api/admin-rest/latest/resources/fulfillmentservice">FulfillmentService</a>. The value of this field after setting it will be as described above. </p> <p> If you need to determine whether a product is a gift card, then you should continue to use this field until an alternative is available. </p> <p> Learn more about <a href="/apps/fulfillment/inventory-management-apps/quantities-states">managing inventory quantities and states</a>. </p> * Type: x-string * Example: "manual" * grams: The weight of the product variant in grams. * Type: x-string * Example: 567 * id: The unique numeric identifier for the product variant. * Type: x-string * Example: 808950810 * image_id: The unique numeric identifier for a product's image. The image must be associated to the same product as the variant. * Type: x-string * Example: 434522 * inventory_item_id: The unique identifier for the inventory item, which is used in the Inventory API to query for inventory information. * Type: x-string * Example: 342916 * inventory_management: The fulfillment service that tracks the number of items in stock for the product variant. Valid values: <ul> <li><code>shopify</code>: You are tracking inventory yourself using the admin.</li> <li><code>null</code>: You aren't tracking inventory on the variant.</li> <li>the handle of a <a href="/docs/admin-api/rest/reference/shipping-and-fulfillment/fulfillmentservice">fulfillment service</a> that has inventory management enabled: This must be the same fulfillment service referenced by the <code>fulfillment_service</code> property.</li> </ul> * Type: x-string * Example: "shopify" * inventory_policy: Whether customers are allowed to place an order for the product variant when it's out of stock. Valid values:</p> <ul> <li><code>deny</code>: Customers are not allowed to place orders for the product variant if it's out of stock.</li> <li><code>continue</code>: Customers are allowed to place orders for the product variant if it's out of stock.</li> </ul> Default value: <code>deny</code>. * Type: x-string * Example: "continue" * inventory_quantity: An aggregate of inventory across all locations. To adjust inventory at a specific location, use the <a href='/docs/admin-api/rest/reference/inventory/inventorylevel'>InventoryLevel</a> resource. * Type: x-string * Example: 10 * old_inventory_quantity: This property is deprecated. Use the <a href='/docs/admin-api/rest/reference/inventory/inventorylevel'>InventoryLevel</a> resource instead. * Type: x-string * Example: 5 * option: The custom properties that a shop owner uses to define product variants. You can define three options for a product variant: <code>option1</code>, <code>option2</code>, <code>option3</code>. Default value: <code>Default Title</code>. The <code>title</code> field is a concatenation of the <code>option1</code>, <code>option2</code>, and <code>option3</code> fields. Updating the <code>option</code> fields updates the <code>title</code> field. * Type: x-string * Example: {"option1"=>"Pink"} * presentment_prices: A list of the variant's presentment prices and compare-at prices in each of the shop's enabled presentment currencies. Each price object has the following properties: <ul> <li><code>currency_code</code>: The three-letter code (<a href="https://en.wikipedia.org/wiki/ISO_4217">ISO 4217</a> format) for one of the shop's enabled presentment currencies.</li> <li><code>amount</code>: The variant's price or compare-at price in the presentment currency.</li> </ul> Requires the header <code>'X-Shopify-Api-Features': 'include-presentment-prices'</code>. * Type: x-string * Example: {"presentment_prices"=>[{"price"=>{"currency_code"=>"USD", "amount"=>"199.99"}, "compare_at_price"=>{"currency_code"=>"USD", "amount"=>"249.99"}}, {"price"=>{"currency_code"=>"EUR", "amount"=>"158.95"}, "compare_at_price"=>{"currency_code"=>"EUR", "amount"=>"198.95"}}, {"price"=>{"currency_code"=>"GBP", "amount"=>"143.00"}, "compare_at_price"=>{"currency_code"=>"GBP", "amount"=>"179.00"}}, {"price"=>{"currency_code"=>"JPY", "amount"=>"22400"}, "compare_at_price"=>{"currency_code"=>"JPY", "amount"=>"28000"}}]} * position: The order of the product variant in the list of product variants. The first position in the list is <code>1</code>. The position of variants is indicated by the order in which they are listed. * Type: x-string * Example: 1 * price: The price of the product variant. * Type: x-string * Example: "199.00" * product_id: The unique numeric identifier for the product. * Type: x-string * Example: 632910392 * requires_shipping: This property is deprecated. Use the `requires_shipping` property on the <a href='/docs/admin-api/rest/reference/inventory/inventoryitem'>InventoryItem</a> resource instead. * Type: x-string * Example: true * sku: A unique case-sensitive identifier for the product variant in the shop. Required in order to connect to a <a href='/docs/admin-api/rest/reference/shipping-and-fulfillment/fulfillmentservice'>FulfillmentService.</a> * Type: x-string * Example: "IPOD2008PINK" * taxable: Whether a tax is charged when the product variant is sold. * Type: x-string * Example: true * tax_code: This parameter applies only to the stores that have the <a href="https://help.shopify.com/manual/taxes/tax-services/taxation">Avalara AvaTax</a> app installed. Specifies the Avalara tax code for the product variant. * Type: x-string * Example: "DA040000" * title: The title of the product variant. The <code>title</code> field is a concatenation of the <code>option1</code>, <code>option2</code>, and <code>option3</code> fields. You can only update <code>title</code> indirectly using the <code>option</code> fields. * Type: x-string * Example: "Pink" * updated_at: The date and time when the product variant was last modified. Gets returned in <a href="https://en.wikipedia.org/wiki/ISO_8601" target="_blank">ISO 8601 format</a>. * Type: x-string * Example: "2012-08-24T14:01:47-04:00" * weight: The weight of the product variant in the unit system specified with <code>weight_unit</code>. * Type: x-string * Example: 100.0 * weight_unit: The unit of measurement that applies to the product variant's weight. If you don't specify a value for <code>weight_unit</code>, then the shop's default unit of measurement is applied. Valid values: <code>g</code>, <code>kg</code>, <code>oz</code>, and <code>lb</code>. * Type: x-string * Example: "oz" ## Retrieves a list of product variants Retrieves a list of product variants. <strong>Note:</strong> This endpoint implements pagination by using links that are provided in the response header. To learn more, refer to <a href='/api/usage/pagination-rest'>Make paginated requests to the REST Admin API</a>. ### Endpoint /admin/api/#{api_version}/products/{product_id}/variants.json (GET) ### Parameters * api_version (required): * product_id (required): * fields: A comma-separated list of fields to include in the response * limit: Return up to this many results per page * presentment_currencies: Return presentment prices in only certain currencies, specified by a comma-separated list of <a href="https://en.wikipedia.org/wiki/ISO_4217">ISO 4217</a> currency codes. * since_id: Restrict results to after the specified ID ### Responses #### 200 Retrieves a list of product variants Examples: ##### Retrieve all variants for a product Request: ``` GET /admin/api/unstable/products/632910392/variants.json ``` Response: ``` HTTP/1.1 200 OK {"variants":[{"id":39072856,"product_id":632910392,"title":"Green","price":"199.00","position":3,"inventory_policy":"continue","compare_at_price":null,"option1":"Green","option2":null,"option3":null,"created_at":"2025-01-02T11:38:15-05:00","updated_at":"2025-01-02T11:38:15-05:00","taxable":true,"barcode":"1234_green","fulfillment_service":"manual","grams":567,"inventory_management":"shopify","requires_shipping":true,"sku":"IPOD2008GREEN","weight":1.25,"weight_unit":"lb","inventory_item_id":39072856,"inventory_quantity":30,"old_inventory_quantity":30,"presentment_prices":[{"price":{"amount":"199.00","currency_code":"USD"},"compare_at_price":null}],"admin_graphql_api_id":"gid://shopify/ProductVariant/39072856","image_id":null},{"id":49148385,"product_id":632910392,"title":"Red","price":"199.00","position":2,"inventory_policy":"continue","compare_at_price":null,"option1":"Red","option2":null,"option3":null,"created_at":"2025-01-02T11:38:15-05:00","updated_at":"2025-01-02T11:38:15-05:00","taxable":true,"barcode":"1234_red","fulfillment_service":"manual","grams":567,"inventory_management":"shopify","requires_shipping":true,"sku":"IPOD2008RED","weight":1.25,"weight_unit":"lb","inventory_item_id":49148385,"inventory_quantity":20,"old_inventory_quantity":20,"presentment_prices":[{"price":{"amount":"199.00","currency_code":"USD"},"compare_at_price":null}],"admin_graphql_api_id":"gid://shopify/ProductVariant/49148385","image_id":null},{"id":457924702,"product_id":632910392,"title":"Black","price":"199.00","position":4,"inventory_policy":"continue","compare_at_price":null,"option1":"Black","option2":null,"option3":null,"created_at":"2025-01-02T11:38:15-05:00","updated_at":"2025-01-02T11:38:15-05:00","taxable":true,"barcode":"1234_black","fulfillment_service":"manual","grams":567,"inventory_management":"shopify","requires_shipping":true,"sku":"IPOD2008BLACK","weight":1.25,"weight_unit":"lb","inventory_item_id":457924702,"inventory_quantity":40,"old_inventory_quantity":40,"presentment_prices":[{"price":{"amount":"199.00","currency_code":"USD"},"compare_at_price":null}],"admin_graphql_api_id":"gid://shopify/ProductVariant/457924702","image_id":null},{"id":808950810,"product_id":632910392,"title":"Pink","price":"199.00","position":1,"inventory_policy":"continue","compare_at_price":null,"option1":"Pink","option2":null,"option3":null,"created_at":"2025-01-02T11:38:15-05:00","updated_at":"2025-01-02T11:38:15-05:00","taxable":true,"barcode":"1234_pink","fulfillment_service":"manual","grams":567,"inventory_management":"shopify","requires_shipping":true,"sku":"IPOD2008PINK","weight":1.25,"weight_unit":"lb","inventory_item_id":808950810,"inventory_quantity":10,"old_inventory_quantity":10,"presentment_prices":[{"price":{"amount":"199.00","currency_code":"USD"},"compare_at_price":null}],"admin_graphql_api_id":"gid://shopify/ProductVariant/808950810","image_id":562641783}]} ``` ##### Retrieve all variants for a product after a specified ID Request: ``` GET /admin/api/unstable/products/632910392/variants.json ``` Response: ``` HTTP/1.1 200 OK {"variants":[{"id":457924702,"product_id":632910392,"title":"Black","price":"199.00","position":4,"inventory_policy":"continue","compare_at_price":null,"option1":"Black","option2":null,"option3":null,"created_at":"2025-01-02T11:38:15-05:00","updated_at":"2025-01-02T11:38:15-05:00","taxable":true,"barcode":"1234_black","fulfillment_service":"manual","grams":567,"inventory_management":"shopify","requires_shipping":true,"sku":"IPOD2008BLACK","weight":1.25,"weight_unit":"lb","inventory_item_id":457924702,"inventory_quantity":40,"old_inventory_quantity":40,"presentment_prices":[{"price":{"amount":"199.00","currency_code":"USD"},"compare_at_price":null}],"admin_graphql_api_id":"gid://shopify/ProductVariant/457924702","image_id":null},{"id":808950810,"product_id":632910392,"title":"Pink","price":"199.00","position":1,"inventory_policy":"continue","compare_at_price":null,"option1":"Pink","option2":null,"option3":null,"created_at":"2025-01-02T11:38:15-05:00","updated_at":"2025-01-02T11:38:15-05:00","taxable":true,"barcode":"1234_pink","fulfillment_service":"manual","grams":567,"inventory_management":"shopify","requires_shipping":true,"sku":"IPOD2008PINK","weight":1.25,"weight_unit":"lb","inventory_item_id":808950810,"inventory_quantity":10,"old_inventory_quantity":10,"presentment_prices":[{"price":{"amount":"199.00","currency_code":"USD"},"compare_at_price":null}],"admin_graphql_api_id":"gid://shopify/ProductVariant/808950810","image_id":562641783}]} ``` ##### Retrieve all variants for a product with prices in specified presentment currencies Request: ``` GET /admin/api/unstable/products/632910392/variants.json ``` Response: ``` HTTP/1.1 200 OK {"variants":[{"id":39072856,"product_id":632910392,"title":"Green","price":"199.00","position":3,"inventory_policy":"continue","compare_at_price":"249.00","option1":"Green","option2":null,"option3":null,"created_at":"2025-01-02T11:38:15-05:00","updated_at":"2025-01-02T11:38:15-05:00","taxable":true,"barcode":"1234_green","fulfillment_service":"manual","grams":567,"inventory_management":"shopify","requires_shipping":true,"sku":"IPOD2008GREEN","weight":1.25,"weight_unit":"lb","inventory_item_id":39072856,"inventory_quantity":30,"old_inventory_quantity":30,"presentment_prices":[{"price":{"amount":"199.00","currency_code":"USD"},"compare_at_price":{"amount":"249.00","currency_code":"USD"}},{"price":{"amount":"249.00","currency_code":"CAD"},"compare_at_price":{"amount":"312.00","currency_code":"CAD"}}],"admin_graphql_api_id":"gid://shopify/ProductVariant/39072856","image_id":null},{"id":49148385,"product_id":632910392,"title":"Red","price":"199.00","position":2,"inventory_policy":"continue","compare_at_price":"249.00","option1":"Red","option2":null,"option3":null,"created_at":"2025-01-02T11:38:15-05:00","updated_at":"2025-01-02T11:38:15-05:00","taxable":true,"barcode":"1234_red","fulfillment_service":"manual","grams":567,"inventory_management":"shopify","requires_shipping":true,"sku":"IPOD2008RED","weight":1.25,"weight_unit":"lb","inventory_item_id":49148385,"inventory_quantity":20,"old_inventory_quantity":20,"presentment_prices":[{"price":{"amount":"199.00","currency_code":"USD"},"compare_at_price":{"amount":"249.00","currency_code":"USD"}},{"price":{"amount":"249.00","currency_code":"CAD"},"compare_at_price":{"amount":"312.00","currency_code":"CAD"}}],"admin_graphql_api_id":"gid://shopify/ProductVariant/49148385","image_id":null},{"id":457924702,"product_id":632910392,"title":"Black","price":"199.00","position":4,"inventory_policy":"continue","compare_at_price":"249.00","option1":"Black","option2":null,"option3":null,"created_at":"2025-01-02T11:38:15-05:00","updated_at":"2025-01-02T11:38:15-05:00","taxable":true,"barcode":"1234_black","fulfillment_service":"manual","grams":567,"inventory_management":"shopify","requires_shipping":true,"sku":"IPOD2008BLACK","weight":1.25,"weight_unit":"lb","inventory_item_id":457924702,"inventory_quantity":40,"old_inventory_quantity":40,"presentment_prices":[{"price":{"amount":"199.00","currency_code":"USD"},"compare_at_price":{"amount":"249.00","currency_code":"USD"}},{"price":{"amount":"249.00","currency_code":"CAD"},"compare_at_price":{"amount":"312.00","currency_code":"CAD"}}],"admin_graphql_api_id":"gid://shopify/ProductVariant/457924702","image_id":null},{"id":808950810,"product_id":632910392,"title":"Pink","price":"199.00","position":1,"inventory_policy":"continue","compare_at_price":"249.00","option1":"Pink","option2":null,"option3":null,"created_at":"2025-01-02T11:38:15-05:00","updated_at":"2025-01-02T11:38:15-05:00","taxable":true,"barcode":"1234_pink","fulfillment_service":"manual","grams":567,"inventory_management":"shopify","requires_shipping":true,"sku":"IPOD2008PINK","weight":1.25,"weight_unit":"lb","inventory_item_id":808950810,"inventory_quantity":10,"old_inventory_quantity":10,"presentment_prices":[{"price":{"amount":"199.00","currency_code":"USD"},"compare_at_price":{"amount":"249.00","currency_code":"USD"}},{"price":{"amount":"249.00","currency_code":"CAD"},"compare_at_price":{"amount":"312.00","currency_code":"CAD"}}],"admin_graphql_api_id":"gid://shopify/ProductVariant/808950810","image_id":562641783}]} ``` ## Create a new Product Variant Creates a new product variant ### Endpoint /admin/api/#{api_version}/products/{product_id}/variants.json (POST) ### Parameters * api_version (required): * product_id (required): ### Responses #### 201 Create a new Product Variant Examples: ##### Create a new product variant Request: ``` POST /admin/api/unstable/products/632910392/variants.json {"variant":{"option1":"Yellow","price":"1.00"}} ``` Response: ``` HTTP/1.1 201 Created {"variant":{"id":1070325042,"product_id":632910392,"title":"Yellow","price":"1.00","position":5,"inventory_policy":"deny","compare_at_price":null,"option1":"Yellow","option2":null,"option3":null,"created_at":"2025-01-02T11:39:09-05:00","updated_at":"2025-01-02T11:39:10-05:00","taxable":true,"barcode":null,"fulfillment_service":"manual","grams":0,"inventory_management":"shopify","requires_shipping":true,"sku":null,"weight":0.0,"weight_unit":"lb","inventory_item_id":1070325042,"inventory_quantity":0,"old_inventory_quantity":0,"presentment_prices":[{"price":{"amount":"1.00","currency_code":"USD"},"compare_at_price":null}],"admin_graphql_api_id":"gid://shopify/ProductVariant/1070325042","image_id":null}} ``` ##### Create a new product variant with a metafield Request: ``` POST /admin/api/unstable/products/632910392/variants.json {"variant":{"option1":"Blue","metafields":[{"key":"new","value":"newvalue","type":"single_line_text_field","namespace":"global"}]}} ``` Response: ``` HTTP/1.1 201 Created {"variant":{"id":1070325039,"product_id":632910392,"title":"Blue","price":"0.00","position":5,"inventory_policy":"deny","compare_at_price":null,"option1":"Blue","option2":null,"option3":null,"created_at":"2025-01-02T11:39:01-05:00","updated_at":"2025-01-02T11:39:01-05:00","taxable":true,"barcode":null,"fulfillment_service":"manual","grams":0,"inventory_management":"shopify","requires_shipping":true,"sku":null,"weight":0.0,"weight_unit":"lb","inventory_item_id":1070325039,"inventory_quantity":0,"old_inventory_quantity":0,"presentment_prices":[{"price":{"amount":"0.00","currency_code":"USD"},"compare_at_price":null}],"admin_graphql_api_id":"gid://shopify/ProductVariant/1070325039","image_id":null}} ``` ##### Create a new product variant with an image Request: ``` POST /admin/api/unstable/products/632910392/variants.json {"variant":{"image_id":850703190,"option1":"Purple"}} ``` Response: ``` HTTP/1.1 201 Created {"variant":{"id":1070325040,"product_id":632910392,"title":"Purple","price":"0.00","position":5,"inventory_policy":"deny","compare_at_price":null,"option1":"Purple","option2":null,"option3":null,"created_at":"2025-01-02T11:39:02-05:00","updated_at":"2025-01-02T11:39:02-05:00","taxable":true,"barcode":null,"fulfillment_service":"manual","grams":0,"inventory_management":"shopify","requires_shipping":true,"sku":null,"weight":0.0,"weight_unit":"lb","inventory_item_id":1070325040,"inventory_quantity":0,"old_inventory_quantity":0,"presentment_prices":[{"price":{"amount":"0.00","currency_code":"USD"},"compare_at_price":null}],"admin_graphql_api_id":"gid://shopify/ProductVariant/1070325040","image_id":850703190}} ``` ## Receive a count of all Product Variants Retrieves a count of product variants ### Endpoint /admin/api/#{api_version}/products/{product_id}/variants/count.json (GET) ### Parameters * api_version (required): * product_id (required): ### Responses #### 200 Receive a count of all Product Variants Examples: ##### Retrieve a count all variants for a product Request: ``` GET /admin/api/unstable/products/632910392/variants/count.json ``` Response: ``` HTTP/1.1 200 OK {"count":4} ``` ## Receive a single Product Variant Retrieves a single product variant by ID ### Endpoint /admin/api/#{api_version}/variants/{variant_id}.json (GET) ### Parameters * api_version (required): * variant_id (required): * fields: A comma-separated list of fields to include in the response ### Responses #### 200 Receive a single Product Variant Examples: ##### Retrieve a product variant by ID Request: ``` GET /admin/api/unstable/variants/808950810.json ``` Response: ``` HTTP/1.1 200 OK {"variant":{"id":808950810,"product_id":632910392,"title":"Pink","price":"199.00","position":1,"inventory_policy":"continue","compare_at_price":null,"option1":"Pink","option2":null,"option3":null,"created_at":"2025-01-02T11:38:15-05:00","updated_at":"2025-01-02T11:38:15-05:00","taxable":true,"barcode":"1234_pink","fulfillment_service":"manual","grams":567,"inventory_management":"shopify","requires_shipping":true,"sku":"IPOD2008PINK","weight":1.25,"weight_unit":"lb","inventory_item_id":808950810,"inventory_quantity":10,"old_inventory_quantity":10,"presentment_prices":[{"price":{"amount":"199.00","currency_code":"USD"},"compare_at_price":null}],"tax_code":"DA040000","admin_graphql_api_id":"gid://shopify/ProductVariant/808950810","image_id":562641783}} ``` ## Modify an existing Product Variant Updates an existing product variant ### Endpoint /admin/api/#{api_version}/variants/{variant_id}.json (PUT) ### Parameters * api_version (required): * variant_id (required): ### Responses #### 200 Modify an existing Product Variant Examples: ##### Add a metafield to an existing variant Request: ``` PUT /admin/api/unstable/variants/808950810.json {"variant":{"id":808950810,"metafields":[{"key":"new","value":"newvalue","type":"single_line_text_field","namespace":"global"}]}} ``` Response: ``` HTTP/1.1 200 OK {"variant":{"id":808950810,"product_id":632910392,"title":"Pink","price":"199.00","position":1,"inventory_policy":"continue","compare_at_price":null,"option1":"Pink","option2":null,"option3":null,"created_at":"2025-01-02T11:38:15-05:00","updated_at":"2025-01-02T11:38:15-05:00","taxable":true,"barcode":"1234_pink","fulfillment_service":"manual","grams":567,"inventory_management":"shopify","requires_shipping":true,"sku":"IPOD2008PINK","weight":1.25,"weight_unit":"lb","inventory_item_id":808950810,"inventory_quantity":10,"old_inventory_quantity":10,"presentment_prices":[{"price":{"amount":"199.00","currency_code":"USD"},"compare_at_price":null}],"admin_graphql_api_id":"gid://shopify/ProductVariant/808950810","image_id":562641783}} ``` ##### Add an existing image to an existing variant Request: ``` PUT /admin/api/unstable/variants/808950810.json {"variant":{"id":808950810,"image_id":562641783}} ``` Response: ``` HTTP/1.1 200 OK {"variant":{"id":808950810,"product_id":632910392,"title":"Pink","price":"199.00","position":1,"inventory_policy":"continue","compare_at_price":null,"option1":"Pink","option2":null,"option3":null,"created_at":"2025-01-02T11:38:15-05:00","updated_at":"2025-01-02T11:39:08-05:00","taxable":true,"barcode":"1234_pink","fulfillment_service":"manual","grams":567,"inventory_management":"shopify","requires_shipping":true,"sku":"IPOD2008PINK","weight":1.25,"weight_unit":"lb","inventory_item_id":808950810,"inventory_quantity":10,"old_inventory_quantity":10,"presentment_prices":[{"price":{"amount":"199.00","currency_code":"USD"},"compare_at_price":null}],"admin_graphql_api_id":"gid://shopify/ProductVariant/808950810","image_id":562641783}} ``` ##### Update the title and price of an existing variant Request: ``` PUT /admin/api/unstable/variants/808950810.json {"variant":{"id":808950810,"option1":"Not Pink","price":"99.00"}} ``` Response: ``` HTTP/1.1 200 OK {"variant":{"id":808950810,"product_id":632910392,"title":"Not Pink","price":"99.00","position":1,"inventory_policy":"continue","compare_at_price":null,"option1":"Not Pink","option2":null,"option3":null,"created_at":"2025-01-02T11:38:15-05:00","updated_at":"2025-01-02T11:39:07-05:00","taxable":true,"barcode":"1234_pink","fulfillment_service":"manual","grams":567,"inventory_management":"shopify","requires_shipping":true,"sku":"IPOD2008PINK","weight":1.25,"weight_unit":"lb","inventory_item_id":808950810,"inventory_quantity":10,"old_inventory_quantity":10,"presentment_prices":[{"price":{"amount":"99.00","currency_code":"USD"},"compare_at_price":null}],"admin_graphql_api_id":"gid://shopify/ProductVariant/808950810","image_id":562641783}} ``` ## Remove an existing Product Variant ### Endpoint /admin/api/#{api_version}/products/{product_id}/variants/{variant_id}.json (DELETE) ### Parameters * api_version (required): * product_id (required): * variant_id (required): ### Responses #### 200 Remove an existing Product Variant Examples: ##### Delete a product variant Request: ``` DELETE /admin/api/unstable/products/632910392/variants/808950810.json ``` Response: ``` HTTP/1.1 200 OK {} ```