Skip to main content
Anchor to ProductOptionsCreateUserError

ProductOptionsCreateUserError

object

Requires read_products access scope.

Error codes for failed ProductOptionsCreate mutation.

•ProductOptionsCreateUserErrorCode

The error code.

•[String!]

The path to the input field that caused the error.

•String!
non-null

The error message.


Was this section helpful?

•mutation

Creates one or more options on a product, such as size, color, or material. Each option includes a name, position, and a list of values. The combination of a product option and value creates a product variant.

Use the productOptionsCreate mutation for the following use cases:

  • Add product choices: Add a new option, like "Size" (Small, Medium, Large) or "Color" (Red, Blue, Green), to an existing product so customers can select their preferred variant.
  • Enable personalization features: Add options such as "Engraving text" to let customers customize their purchase.
  • Offer seasonal or limited edition products: Add a new value (for example, "Holiday red") to an existing option to support limited-time or seasonal variants.
  • Integrate with apps that manage product configuration: Allow third-party apps to add options, like "Bundle size", when customers select or customize product bundles.
  • Link options to metafields: Associate a product option with a custom metafield, like "Fabric code", for richer integrations with other systems or apps.

Note

The productOptionsCreate mutation enforces strict data integrity for product options and variants. All option positions must be sequential, and every option should be used by at least one variant. If you use the CREATE variant strategy, consider the maximum allowed number of variants for each product (100 by default, and 2,048 if you've enabled the Extended Variants developer preview).


After you create product options, you can further manage a product's configuration using related mutations:

Learn more about the product model and adding product data.

Arguments

•[OptionCreateInput!]!
required

Options to add to the product.

•ID!
required

The ID of the product to update.

•ProductOptionCreateVariantStrategy
Default:LEAVE_AS_IS

The strategy defines which behavior the mutation should observe regarding variants. If not provided or set to null, the strategy LEAVE_AS_IS will be used.


Fields

•Product

The updated product object.

•[ProductOptionsCreateUserError!]!
non-null

The list of errors that occurred from executing the mutation.


Was this section helpful?


Was this section helpful?