# ProductSetInput - admin-graphql - INPUT_OBJECT Version: 2024-10 ## Description The input fields required to create or update a product via ProductSet mutation. ### Access Scopes ## Fields * [category](/docs/api/admin-graphql/2024-10/scalars/ID): ID - The ID of the [category](https://shopify.github.io/product-taxonomy/releases/unstable/?categoryId=sg-4-17-2-17) that's associated with the product. * [claimOwnership](/docs/api/admin-graphql/2024-10/input-objects/ProductClaimOwnershipInput): ProductClaimOwnershipInput - The input field to enable an app to provide additional product features. For example, you can specify [`bundles: true`](https://shopify.dev/docs/api/admin-graphql/latest/input-objects/ProductClaimOwnershipInput#field-bundles) in the `claimOwnership` field to let an app add a [product configuration extension](https://shopify.dev/docs/apps/build/product-merchandising/bundles/add-merchant-config-ui). * [collections](/docs/api/admin-graphql/2024-10/scalars/ID): ID - The IDs of collections that this product will be a member of. * [combinedListingRole](/docs/api/admin-graphql/2024-10/enums/CombinedListingsRole): CombinedListingsRole - The role of the product in a product grouping. It can only be set during creation. * [descriptionHtml](/docs/api/admin-graphql/2024-10/scalars/String): String - The description of the product, with HTML tags. For example, the description might include bold `` and italic `` text. * [files](/docs/api/admin-graphql/2024-10/input-objects/FileSetInput): FileSetInput - The files to associate with the product. * [giftCard](/docs/api/admin-graphql/2024-10/scalars/Boolean): Boolean - Whether the product is a gift card. * [giftCardTemplateSuffix](/docs/api/admin-graphql/2024-10/scalars/String): String - The [theme template](https://shopify.dev/docs/storefronts/themes/architecture/templates) that's used when customers view a gift card in a store. * [handle](/docs/api/admin-graphql/2024-10/scalars/String): String - A unique, human-readable string of the product's title. A handle can contain letters, hyphens (`-`), and numbers, but no spaces. The handle is used in the online store URL for the product. For example, if a product is titled "Black Sunglasses", then the handle is `black-sunglasses`. * [id](/docs/api/admin-graphql/2024-10/scalars/ID): ID - The product's ID. If you're creating a product, then you don't need to pass the `id` as input to the [`productCreate`](https://shopify.dev/docs/api/admin-graphql/latest/mutations/productCreate) mutation. If you're updating a product, then you do need to pass the `id` as input to the [`productUpdate`](https://shopify.dev/docs/api/admin-graphql/latest/mutations/productUpdate) mutation to identify which product you want to update. * [metafields](/docs/api/admin-graphql/2024-10/input-objects/MetafieldInput): MetafieldInput - The metafields to associate with this product. * [productOptions](/docs/api/admin-graphql/2024-10/input-objects/OptionSetInput): OptionSetInput - List of custom product options and option values (maximum of 3 per product). * [productType](/docs/api/admin-graphql/2024-10/scalars/String): String - The [product type](https://help.shopify.com/manual/products/details/product-type) that merchants define. * [redirectNewHandle](/docs/api/admin-graphql/2024-10/scalars/Boolean): 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](/docs/api/admin-graphql/2024-10/scalars/Boolean): Boolean - Whether the product can only be purchased with a selling plan (subscription). Products that are sold exclusively on subscription can only be created on online stores. If set to `true` on an already existing product, then the product will be marked unavailable on channels that don't support subscriptions. * [seo](/docs/api/admin-graphql/2024-10/input-objects/SEOInput): SEOInput - The [SEO title and description](https://help.shopify.com/manual/promoting-marketing/seo/adding-keywords) that are associated with a product. * [status](/docs/api/admin-graphql/2024-10/enums/ProductStatus): ProductStatus - The status of the product. * [tags](/docs/api/admin-graphql/2024-10/scalars/String): String - A comma-separated list of searchable keywords that are associated with the product. For example, a merchant might apply the `sports` and `summer` tags to products that are associated with sportwear for summer. Updating `tags` overwrites any existing tags that were previously added to the product. To add new tags without overwriting existing tags, use the [`tagsAdd`](https://shopify.dev/api/admin-graphql/latest/mutations/tagsadd) mutation. * [templateSuffix](/docs/api/admin-graphql/2024-10/scalars/String): String - The [theme template](https://shopify.dev/docs/storefronts/themes/architecture/templates) that's used when customers view a product in a store. * [title](/docs/api/admin-graphql/2024-10/scalars/String): String - The name for the product that displays to customers. The title is used to construct the product's handle. For example, if a product is titled "Black Sunglasses", then the handle is `black-sunglasses`. * [variants](/docs/api/admin-graphql/2024-10/input-objects/ProductVariantSetInput): ProductVariantSetInput - A list of variants associated with the product. * [vendor](/docs/api/admin-graphql/2024-10/scalars/String): String - The name of the product's vendor. ## Input objects with this input object * [productSet](/docs/api/admin-graphql/2024-10/mutations/productSet) ## Examples