API version: unstable
API version: 2021-07 Release candidate
API version: 2021-04 Latest
API version: 2021-01
API version: 2020-10
API version: 2020-07
API version: 2020-04
API version: 2020-01 Unsupported
API version: 2019-10 Unsupported

productUpdate mutation

Version unstable

Updates a product. If you update a product, and only some variants are included in the update, then any variants not included will be deleted. If you want to update a single variant, then use productVariantUpdate. Products that are sold exclusively on subscription (requiresSellingPlan: true) can be updated only on online stores. If you update a product to be sold only on a subscription, then the product is unpublished from all channels except the online store.

Required access

write_products access scope.

Interactive example

This is an example mutation query. Use the embedded interactive tool below to edit the query.

Hint: use Ctrl + Space for autocompleting fields.


Arguments

Argument Description
input ( ProductInput! ) required

The updated properties for a product.

ProductInput fields

  • bodyHtml (String)

    A description of the product. Supports HTML formatting. This argument is deprecated: Use descriptionHtml instead.

  • collectionsToJoin ([ID!])

    The IDs of the collections that this product will be added to.

  • collectionsToLeave ([ID!])

    The IDs of collections that will no longer include the product.

  • descriptionHtml (String)

    The description of the product, complete with HTML formatting.

  • giftCard (Boolean)

    Whether the product is a gift card.

  • giftCardTemplateSuffix (String)

    The theme template used when viewing the gift card in a store.

  • handle (String)

    A unique human-friendly string for the product. Automatically generated from the product's title.

  • id (ID)

    Specifies the product to update in productUpdate or creates a new product if absent in productCreate.

  • images ([ImageInput!])

    The images to associate with the product.

  • metafields ([MetafieldInput!])

    The metafields to associate with this product.

  • options ([String!])

    List of custom product options (maximum of 3 per product).

  • privateMetafields ([PrivateMetafieldInput!])

    The private metafields to associated with this product.

  • productPublications ([ProductPublicationInput!])

    A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • productType (String)

    The product type specified by the merchant.

  • A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • publishDate (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishOn (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • published (Boolean)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishedAt (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • redirectNewHandle (Boolean)

    Whether a redirect is required after a new handle has been provided. If true, then the old handle is redirected to the new one automatically.

  • requiresSellingPlan (Boolean)

    Whether the product can only be purchased with a selling plan. If set to true on an already existing product, then the product will be marked unavailable on channels that don't support subscriptions.

  • seo (SEOInput)

    The SEO information associated with the product.

  • status (ProductStatus)

    The status of the product.

  • tags ([String!])

    A comma separated list tags that have been added to the product.

  • templateSuffix (String)

    The theme template used when viewing the product in a store.

  • title (String)

    The title of the product.

  • A list of variants associated with the product.

  • vendor (String)

    The name of the product's vendor.

Return fields

  • product (Product)

    The updated product.

  • userErrors ([UserError!]!)

    List of errors that occurred executing the mutation.

Version 2021-07 (Release candidate)

Updates a product. If you update a product, and only some variants are included in the update, then any variants not included will be deleted. If you want to update a single variant, then use productVariantUpdate. Products that are sold exclusively on subscription (requiresSellingPlan: true) can be updated only on online stores. If you update a product to be sold only on a subscription, then the product is unpublished from all channels except the online store.

Required access

write_products access scope.

Interactive example

This is an example mutation query. Use the embedded interactive tool below to edit the query.

Hint: use Ctrl + Space for autocompleting fields.


Arguments

Argument Description
input ( ProductInput! ) required

The updated properties for a product.

ProductInput fields

  • bodyHtml (String)

    A description of the product. Supports HTML formatting. This argument is deprecated: Use descriptionHtml instead.

  • collectionsToJoin ([ID!])

    The IDs of the collections that this product will be added to.

  • collectionsToLeave ([ID!])

    The IDs of collections that will no longer include the product.

  • descriptionHtml (String)

    The description of the product, complete with HTML formatting.

  • giftCard (Boolean)

    Whether the product is a gift card.

  • giftCardTemplateSuffix (String)

    The theme template used when viewing the gift card in a store.

  • handle (String)

    A unique human-friendly string for the product. Automatically generated from the product's title.

  • id (ID)

    Specifies the product to update in productUpdate or creates a new product if absent in productCreate.

  • images ([ImageInput!])

    The images to associate with the product.

  • metafields ([MetafieldInput!])

    The metafields to associate with this product.

  • options ([String!])

    List of custom product options (maximum of 3 per product).

  • privateMetafields ([PrivateMetafieldInput!])

    The private metafields to associated with this product.

  • productPublications ([ProductPublicationInput!])

    A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • productType (String)

    The product type specified by the merchant.

  • A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • publishDate (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishOn (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • published (Boolean)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishedAt (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • redirectNewHandle (Boolean)

    Whether a redirect is required after a new handle has been provided. If true, then the old handle is redirected to the new one automatically.

  • requiresSellingPlan (Boolean)

    Whether the product can only be purchased with a selling plan. If set to true on an already existing product, then the product will be marked unavailable on channels that don't support subscriptions.

  • seo (SEOInput)

    The SEO information associated with the product.

  • status (ProductStatus)

    The status of the product.

  • tags ([String!])

    A comma separated list tags that have been added to the product.

  • templateSuffix (String)

    The theme template used when viewing the product in a store.

  • title (String)

    The title of the product.

  • A list of variants associated with the product.

  • vendor (String)

    The name of the product's vendor.

Return fields

  • product (Product)

    The updated product.

  • userErrors ([UserError!]!)

    List of errors that occurred executing the mutation.

Version 2021-04 (Latest)

Updates a product. If you update a product, and only some variants are included in the update, then any variants not included will be deleted. If you want to update a single variant, then use productVariantUpdate. Products that are sold exclusively on subscription (requiresSellingPlan: true) can be updated only on online stores. If you update a product to be sold only on a subscription, then the product is unpublished from all channels except the online store.

Required access

write_products access scope.

Interactive example

This is an example mutation query. Use the embedded interactive tool below to edit the query.

Hint: use Ctrl + Space for autocompleting fields.


Arguments

Argument Description
input ( ProductInput! ) required

The updated properties for a product.

ProductInput fields

  • bodyHtml (String)

    A description of the product. Supports HTML formatting. This argument is deprecated: Use descriptionHtml instead.

  • collectionsToJoin ([ID!])

    The IDs of the collections that this product will be added to.

  • collectionsToLeave ([ID!])

    The IDs of collections that will no longer include the product.

  • descriptionHtml (String)

    The description of the product, complete with HTML formatting.

  • giftCard (Boolean)

    Whether the product is a gift card.

  • giftCardTemplateSuffix (String)

    The theme template used when viewing the gift card in a store.

  • handle (String)

    A unique human-friendly string for the product. Automatically generated from the product's title.

  • id (ID)

    Specifies the product to update in productUpdate or creates a new product if absent in productCreate.

  • images ([ImageInput!])

    The images to associate with the product.

  • metafields ([MetafieldInput!])

    The metafields to associate with this product.

  • options ([String!])

    List of custom product options (maximum of 3 per product).

  • privateMetafields ([PrivateMetafieldInput!])

    The private metafields to associated with this product.

  • productPublications ([ProductPublicationInput!])

    A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • productType (String)

    The product type specified by the merchant.

  • A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • publishDate (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishOn (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • published (Boolean)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishedAt (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • redirectNewHandle (Boolean)

    Whether a redirect is required after a new handle has been provided. If true, then the old handle is redirected to the new one automatically.

  • requiresSellingPlan (Boolean)

    Whether the product can only be purchased with a selling plan. If set to true on an already existing product, then the product will be marked unavailable on channels that don't support subscriptions.

  • seo (SEOInput)

    The SEO information associated with the product.

  • status (ProductStatus)

    The status of the product.

  • tags ([String!])

    A comma separated list tags that have been added to the product.

  • templateSuffix (String)

    The theme template used when viewing the product in a store.

  • title (String)

    The title of the product.

  • A list of variants associated with the product.

  • vendor (String)

    The name of the product's vendor.

Return fields

  • product (Product)

    The updated product.

  • userErrors ([UserError!]!)

    List of errors that occurred executing the mutation.

Version 2021-01

Updates a product. If you update a product, and only some variants are included in the update, then any variants not included will be deleted. If you want to update a single variant, then use productVariantUpdate. Products that are sold exclusively on subscription (requiresSellingPlan: true) can be updated only on online stores. If you update a product to be sold only on a subscription, then the product is unpublished from all channels except the online store.

Required access

write_products access scope.

Interactive example

This is an example mutation query. Use the embedded interactive tool below to edit the query.

Hint: use Ctrl + Space for autocompleting fields.


Arguments

Argument Description
input ( ProductInput! ) required

The updated properties for a product.

ProductInput fields

  • bodyHtml (String)

    A description of the product. Supports HTML formatting. This argument is deprecated: Use descriptionHtml instead.

  • collectionsToJoin ([ID!])

    The IDs of the collections that this product will be added to.

  • collectionsToLeave ([ID!])

    The IDs of collections that will no longer include the product.

  • descriptionHtml (String)

    The description of the product, complete with HTML formatting.

  • giftCard (Boolean)

    Whether the product is a gift card.

  • giftCardTemplateSuffix (String)

    The theme template used when viewing the gift card in a store.

  • handle (String)

    A unique human-friendly string for the product. Automatically generated from the product's title.

  • id (ID)

    Specifies the product to update in productUpdate or creates a new product if absent in productCreate.

  • images ([ImageInput!])

    The images to associate with the product.

  • metafields ([MetafieldInput!])

    The metafields to associate with this product.

  • options ([String!])

    List of custom product options (maximum of 3 per product).

  • privateMetafields ([PrivateMetafieldInput!])

    The private metafields to associated with this product.

  • productPublications ([ProductPublicationInput!])

    A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • productType (String)

    The product type specified by the merchant.

  • A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • publishDate (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishOn (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • published (Boolean)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishedAt (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • redirectNewHandle (Boolean)

    Whether a redirect is required after a new handle has been provided. If true, then the old handle is redirected to the new one automatically.

  • requiresSellingPlan (Boolean)

    Whether the product can only be purchased with a selling plan. If set to true on an already existing product, then the product will be marked unavailable on channels that don't support subscriptions.

  • seo (SEOInput)

    The SEO information associated with the product.

  • status (ProductStatus)

    The status of the product.

  • tags ([String!])

    A comma separated list tags that have been added to the product.

  • templateSuffix (String)

    The theme template used when viewing the product in a store.

  • title (String)

    The title of the product.

  • A list of variants associated with the product.

  • vendor (String)

    The name of the product's vendor.

Return fields

  • product (Product)

    The updated product.

  • userErrors ([UserError!]!)

    List of errors that occurred executing the mutation.

Version 2020-10

Updates a product. If you update a product, and only some variants are included in the update, then any variants not included will be deleted. If you want to update a single variant, then use productVariantUpdate. Products that are sold exclusively on subscription (requiresSellingPlan: true) can be updated only on online stores. If you update a product to be sold only on a subscription, then the product is unpublished from all channels except the online store.

Required access

write_products access scope.

Interactive example

This is an example mutation query. Use the embedded interactive tool below to edit the query.

Hint: use Ctrl + Space for autocompleting fields.


Arguments

Argument Description
input ( ProductInput! ) required

The updated properties for a product.

ProductInput fields

  • bodyHtml (String)

    A description of the product. Supports HTML formatting. This argument is deprecated: Use descriptionHtml instead.

  • collectionsToJoin ([ID!])

    The IDs of the collections that this product will be added to.

  • collectionsToLeave ([ID!])

    The IDs of collections that will no longer include the product.

  • descriptionHtml (String)

    The description of the product, complete with HTML formatting.

  • giftCard (Boolean)

    Whether the product is a gift card.

  • giftCardTemplateSuffix (String)

    The theme template used when viewing the gift card in a store.

  • handle (String)

    A unique human-friendly string for the product. Automatically generated from the product's title.

  • id (ID)

    Specifies the product to update in productUpdate or creates a new product if absent in productCreate.

  • images ([ImageInput!])

    The images to associate with the product.

  • metafields ([MetafieldInput!])

    The metafields to associate with this product.

  • options ([String!])

    List of custom product options (maximum of 3 per product).

  • privateMetafields ([PrivateMetafieldInput!])

    The private metafields to associated with this product.

  • productPublications ([ProductPublicationInput!])

    A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • productType (String)

    The product type specified by the merchant.

  • A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • publishDate (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishOn (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • published (Boolean)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishedAt (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • redirectNewHandle (Boolean)

    Whether a redirect is required after a new handle has been provided. If true, then the old handle is redirected to the new one automatically.

  • seo (SEOInput)

    The SEO information associated with the product.

  • status (ProductStatus)

    The status of the product.

  • tags ([String!])

    A comma separated list tags that have been added to the product.

  • templateSuffix (String)

    The theme template used when viewing the product in a store.

  • title (String)

    The title of the product.

  • A list of variants associated with the product.

  • vendor (String)

    The name of the product's vendor.

Return fields

  • product (Product)

    The updated product.

  • userErrors ([UserError!]!)

    List of errors that occurred executing the mutation.

Version 2020-07

Updates a product. If you update a product, and only some variants are included in the update, then any variants not included will be deleted. If you want to update a single variant, then use productVariantUpdate. Products that are sold exclusively on subscription (requiresSellingPlan: true) can be updated only on online stores. If you update a product to be sold only on a subscription, then the product is unpublished from all channels except the online store.

Required access

write_products access scope.

Interactive example

This is an example mutation query. Use the embedded interactive tool below to edit the query.

Hint: use Ctrl + Space for autocompleting fields.


Arguments

Argument Description
input ( ProductInput! ) required

The updated properties for a product.

ProductInput fields

  • bodyHtml (String)

    A description of the product. Supports HTML formatting. This argument is deprecated: Use descriptionHtml instead.

  • collectionsToJoin ([ID!])

    The IDs of the collections that this product will be added to.

  • collectionsToLeave ([ID!])

    The IDs of collections that will no longer include the product.

  • descriptionHtml (String)

    The description of the product, complete with HTML formatting.

  • giftCard (Boolean)

    Whether the product is a gift card.

  • giftCardTemplateSuffix (String)

    The theme template used when viewing the gift card in a store.

  • handle (String)

    A unique human-friendly string for the product. Automatically generated from the product's title.

  • id (ID)

    Specifies the product to update in productUpdate or creates a new product if absent in productCreate.

  • images ([ImageInput!])

    The images to associate with the product.

  • metafields ([MetafieldInput!])

    The metafields to associate with this product.

  • options ([String!])

    List of custom product options (maximum of 3 per product).

  • privateMetafields ([PrivateMetafieldInput!])

    The private metafields to associated with this product.

  • productPublications ([ProductPublicationInput!])

    A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • productType (String)

    The product type specified by the merchant.

  • A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • publishDate (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishOn (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • published (Boolean)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishedAt (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • redirectNewHandle (Boolean)

    Whether a redirect is required after a new handle has been provided. If true, then the old handle is redirected to the new one automatically.

  • seo (SEOInput)

    The SEO information associated with the product.

  • tags ([String!])

    A comma separated list tags that have been added to the product.

  • templateSuffix (String)

    The theme template used when viewing the product in a store.

  • title (String)

    The title of the product.

  • A list of variants associated with the product.

  • vendor (String)

    The name of the product's vendor.

Return fields

  • product (Product)

    The updated product.

  • userErrors ([UserError!]!)

    List of errors that occurred executing the mutation.

Version 2020-04

Updates a product. If you update a product, and only some variants are included in the update, then any variants not included will be deleted. If you want to update a single variant, then use productVariantUpdate. Products that are sold exclusively on subscription (requiresSellingPlan: true) can be updated only on online stores. If you update a product to be sold only on a subscription, then the product is unpublished from all channels except the online store.

Required access

write_products access scope.

Interactive example

This is an example mutation query. Use the embedded interactive tool below to edit the query.

Hint: use Ctrl + Space for autocompleting fields.


Arguments

Argument Description
input ( ProductInput! ) required

The updated properties for a product.

ProductInput fields

  • bodyHtml (String)

    A description of the product. Supports HTML formatting. This argument is deprecated: Use descriptionHtml instead.

  • collectionsToJoin ([ID!])

    The IDs of the collections that this product will be added to.

  • collectionsToLeave ([ID!])

    The IDs of collections that will no longer include the product.

  • descriptionHtml (String)

    The description of the product, complete with HTML formatting.

  • giftCard (Boolean)

    Whether the product is a gift card.

  • giftCardTemplateSuffix (String)

    The theme template used when viewing the gift card in a store.

  • handle (String)

    A unique human-friendly string for the product. Automatically generated from the product's title.

  • id (ID)

    Specifies the product to update in productUpdate or creates a new product if absent in productCreate.

  • images ([ImageInput!])

    The images to associate with the product.

  • metafields ([MetafieldInput!])

    The metafields to associate with this product.

  • options ([String!])

    List of custom product options (maximum of 3 per product).

  • privateMetafields ([PrivateMetafieldInput!])

    The private metafields to associated with this product.

  • productPublications ([ProductPublicationInput!])

    A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • productType (String)

    The product type specified by the merchant.

  • A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • publishDate (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishOn (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • published (Boolean)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishedAt (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • redirectNewHandle (Boolean)

    Whether a redirect is required after a new handle has been provided. If true, then the old handle is redirected to the new one automatically.

  • seo (SEOInput)

    The SEO information associated with the product.

  • tags ([String!])

    A comma separated list tags that have been added to the product.

  • templateSuffix (String)

    The theme template used when viewing the product in a store.

  • title (String)

    The title of the product.

  • A list of variants associated with the product.

  • vendor (String)

    The name of the product's vendor.

Return fields

  • product (Product)

    The updated product.

  • userErrors ([UserError!]!)

    List of errors that occurred executing the mutation.

Version 2020-01 (Unsupported)

Updates a product. If you update a product, and only some variants are included in the update, then any variants not included will be deleted. If you want to update a single variant, then use productVariantUpdate. Products that are sold exclusively on subscription (requiresSellingPlan: true) can be updated only on online stores. If you update a product to be sold only on a subscription, then the product is unpublished from all channels except the online store.

Required access

write_products access scope.

Interactive example

This is an example mutation query. Use the embedded interactive tool below to edit the query.

Hint: use Ctrl + Space for autocompleting fields.


Arguments

Argument Description
input ( ProductInput! ) required

The updated properties for a product.

ProductInput fields

  • bodyHtml (String)

    A description of the product. Supports HTML formatting. This argument is deprecated: Use descriptionHtml instead.

  • collectionsToJoin ([ID!])

    The IDs of the collections that this product will be added to.

  • collectionsToLeave ([ID!])

    The IDs of collections that will no longer include the product.

  • descriptionHtml (String)

    The description of the product, complete with HTML formatting.

  • giftCard (Boolean)

    Whether the product is a gift card.

  • giftCardTemplateSuffix (String)

    The theme template used when viewing the gift card in a store.

  • handle (String)

    A unique human-friendly string for the product. Automatically generated from the product's title.

  • id (ID)

    Specifies the product to update in productUpdate or creates a new product if absent in productCreate.

  • images ([ImageInput!])

    The images to associate with the product.

  • metafields ([MetafieldInput!])

    The metafields to associate with this product.

  • options ([String!])

    List of custom product options (maximum of 3 per product).

  • privateMetafields ([PrivateMetafieldInput!])

    The private metafields to associated with this product.

  • productPublications ([ProductPublicationInput!])

    A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • productType (String)

    The product type specified by the merchant.

  • A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • publishDate (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishOn (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • published (Boolean)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishedAt (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • redirectNewHandle (Boolean)

    Whether a redirect is required after a new handle has been provided. If true, then the old handle is redirected to the new one automatically.

  • seo (SEOInput)

    The SEO information associated with the product.

  • tags ([String!])

    A comma separated list tags that have been added to the product.

  • templateSuffix (String)

    The theme template used when viewing the product in a store.

  • title (String)

    The title of the product.

  • A list of variants associated with the product.

  • vendor (String)

    The name of the product's vendor.

Return fields

  • product (Product)

    The updated product.

  • userErrors ([UserError!]!)

    List of errors that occurred executing the mutation.

Version 2019-10 (Unsupported)

Updates a product. If you update a product, and only some variants are included in the update, then any variants not included will be deleted. If you want to update a single variant, then use productVariantUpdate. Products that are sold exclusively on subscription (requiresSellingPlan: true) can be updated only on online stores. If you update a product to be sold only on a subscription, then the product is unpublished from all channels except the online store.

Required access

write_products access scope.

Interactive example

This is an example mutation query. Use the embedded interactive tool below to edit the query.

Hint: use Ctrl + Space for autocompleting fields.


Arguments

Argument Description
input ( ProductInput! ) required

The updated properties for a product.

ProductInput fields

  • bodyHtml (String)

    A description of the product. Supports HTML formatting. This argument is deprecated: Use descriptionHtml instead.

  • collectionsToJoin ([ID!])

    The IDs of the collections that this product will be added to.

  • collectionsToLeave ([ID!])

    The IDs of collections that will no longer include the product.

  • descriptionHtml (String)

    The description of the product, complete with HTML formatting.

  • giftCard (Boolean)

    Whether the product is a gift card.

  • giftCardTemplateSuffix (String)

    The theme template used when viewing the gift card in a store.

  • handle (String)

    A unique human-friendly string for the product. Automatically generated from the product's title.

  • id (ID)

    Specifies the product to update in productUpdate or creates a new product if absent in productCreate.

  • images ([ImageInput!])

    The images to associate with the product.

  • metafields ([MetafieldInput!])

    The metafields to associate with this product.

  • options ([String!])

    List of custom product options (maximum of 3 per product).

  • privateMetafields ([PrivateMetafieldInput!])

    The private metafields to associated with this product.

  • productPublications ([ProductPublicationInput!])

    A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • productType (String)

    The product type specified by the merchant.

  • A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • publishDate (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishOn (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • published (Boolean)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishedAt (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • redirectNewHandle (Boolean)

    Whether a redirect is required after a new handle has been provided. If true, then the old handle is redirected to the new one automatically.

  • seo (SEOInput)

    The SEO information associated with the product.

  • tags ([String!])

    A comma separated list tags that have been added to the product.

  • templateSuffix (String)

    The theme template used when viewing the product in a store.

  • title (String)

    The title of the product.

  • A list of variants associated with the product.

  • vendor (String)

    The name of the product's vendor.

Return fields

  • product (Product)

    The updated product.

  • userErrors ([UserError!]!)

    List of errors that occurred executing the mutation.

Version 2019-07 (Unsupported)

Updates a product. If you update a product, and only some variants are included in the update, then any variants not included will be deleted. If you want to update a single variant, then use productVariantUpdate. Products that are sold exclusively on subscription (requiresSellingPlan: true) can be updated only on online stores. If you update a product to be sold only on a subscription, then the product is unpublished from all channels except the online store.

Required access

write_products access scope.

Interactive example

This is an example mutation query. Use the embedded interactive tool below to edit the query.

Hint: use Ctrl + Space for autocompleting fields.


Arguments

Argument Description
input ( ProductInput! ) required

The updated properties for a product.

ProductInput fields

  • bodyHtml (String)

    A description of the product. Supports HTML formatting. This argument is deprecated: Use descriptionHtml instead.

  • collectionsToJoin ([ID!])

    The IDs of the collections that this product will be added to.

  • collectionsToLeave ([ID!])

    The IDs of collections that will no longer include the product.

  • descriptionHtml (String)

    The description of the product, complete with HTML formatting.

  • giftCard (Boolean)

    Whether the product is a gift card.

  • giftCardTemplateSuffix (String)

    The theme template used when viewing the gift card in a store.

  • handle (String)

    A unique human-friendly string for the product. Automatically generated from the product's title.

  • id (ID)

    Specifies the product to update in productUpdate or creates a new product if absent in productCreate.

  • images ([ImageInput!])

    The images to associate with the product.

  • metafields ([MetafieldInput!])

    The metafields to associate with this product.

  • options ([String!])

    List of custom product options (maximum of 3 per product).

  • privateMetafields ([PrivateMetafieldInput!])

    The private metafields to associated with this product.

  • productPublications ([ProductPublicationInput!])

    A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • productType (String)

    The product type specified by the merchant.

  • A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • publishDate (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishOn (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • published (Boolean)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishedAt (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • redirectNewHandle (Boolean)

    Whether a redirect is required after a new handle has been provided. If true, then the old handle is redirected to the new one automatically.

  • seo (SEOInput)

    The SEO information associated with the product.

  • tags ([String!])

    A comma separated list tags that have been added to the product.

  • templateSuffix (String)

    The theme template used when viewing the product in a store.

  • title (String)

    The title of the product.

  • A list of variants associated with the product.

  • vendor (String)

    The name of the product's vendor.

Return fields

  • product (Product)

    The updated product.

  • userErrors ([UserError!]!)

    List of errors that occurred executing the mutation.

Version 2019-04 (Unsupported)

Updates a product. If you update a product, and only some variants are included in the update, then any variants not included will be deleted. If you want to update a single variant, then use productVariantUpdate. Products that are sold exclusively on subscription (requiresSellingPlan: true) can be updated only on online stores. If you update a product to be sold only on a subscription, then the product is unpublished from all channels except the online store.

Required access

write_products access scope.

Interactive example

This is an example mutation query. Use the embedded interactive tool below to edit the query.

Hint: use Ctrl + Space for autocompleting fields.


Arguments

Argument Description
input ( ProductInput! ) required

The updated properties for a product.

ProductInput fields

  • bodyHtml (String)

    A description of the product. Supports HTML formatting. This argument is deprecated: Use descriptionHtml instead.

  • collectionsToJoin ([ID!])

    The IDs of the collections that this product will be added to.

  • collectionsToLeave ([ID!])

    The IDs of collections that will no longer include the product.

  • descriptionHtml (String)

    The description of the product, complete with HTML formatting.

  • giftCard (Boolean)

    Whether the product is a gift card.

  • giftCardTemplateSuffix (String)

    The theme template used when viewing the gift card in a store.

  • handle (String)

    A unique human-friendly string for the product. Automatically generated from the product's title.

  • id (ID)

    Specifies the product to update in productUpdate or creates a new product if absent in productCreate.

  • images ([ImageInput!])

    The images to associate with the product.

  • metafields ([MetafieldInput!])

    The metafields to associate with this product.

  • options ([String!])

    List of custom product options (maximum of 3 per product).

  • privateMetafields ([PrivateMetafieldInput!])

    The private metafields to associated with this product.

  • productPublications ([ProductPublicationInput!])

    A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • productType (String)

    The product type specified by the merchant.

  • A list of the channels where the product is published. This argument is deprecated: Use PublishablePublish instead.

  • publishDate (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishOn (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • published (Boolean)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • publishedAt (DateTime)

    Only products with an active status can be published. This argument is deprecated: Use PublishablePublish instead.

  • redirectNewHandle (Boolean)

    Whether a redirect is required after a new handle has been provided. If true, then the old handle is redirected to the new one automatically.

  • seo (SEOInput)

    The SEO information associated with the product.

  • tags ([String!])

    A comma separated list tags that have been added to the product.

  • templateSuffix (String)

    The theme template used when viewing the product in a store.

  • title (String)

    The title of the product.

  • A list of variants associated with the product.

  • vendor (String)

    The name of the product's vendor.

Return fields

  • product (Product)

    The updated product.

  • userErrors ([UserError!]!)

    List of errors that occurred executing the mutation.