# ProductSetInput - admin-graphql - INPUT_OBJECT Version: 2024-04 ## Description The input fields required to create or update a product via ProductSet mutation. ### Access Scopes ## Fields * [claimOwnership](/docs/api/admin-graphql/2024-04/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-04/scalars/ID): ID - The IDs of collections that this product will be a member of. * [customProductType](/docs/api/admin-graphql/2024-04/scalars/String): String - The [custom product type](https://help.shopify.com/manual/products/details/product-type) that merchants define. * [descriptionHtml](/docs/api/admin-graphql/2024-04/scalars/String): String - The description of the product, with HTML tags. For example, the description might include bold `` and italic `` text. * [giftCard](/docs/api/admin-graphql/2024-04/scalars/Boolean): Boolean - Whether the product is a gift card. * [giftCardTemplateSuffix](/docs/api/admin-graphql/2024-04/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-04/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-04/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. * [mediaIds](/docs/api/admin-graphql/2024-04/scalars/ID): ID - The IDs of the media to associate with the product. * [metafields](/docs/api/admin-graphql/2024-04/input-objects/MetafieldInput): MetafieldInput - The metafields to associate with this product. * [productCategory](/docs/api/admin-graphql/2024-04/input-objects/ProductCategoryInput): ProductCategoryInput - The product category in the Shopify product taxonomy. * [productOptions](/docs/api/admin-graphql/2024-04/input-objects/OptionSetInput): OptionSetInput! - List of custom product options and option values (maximum of 3 per product). * [productType](/docs/api/admin-graphql/2024-04/scalars/String): String - The [product type](https://help.shopify.com/manual/products/details/product-type) that merchants define. * [redirectNewHandle](/docs/api/admin-graphql/2024-04/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-04/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-04/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. * [standardizedProductType](/docs/api/admin-graphql/2024-04/input-objects/StandardizedProductTypeInput): StandardizedProductTypeInput - The standardized product type in the Shopify product taxonomy. * [status](/docs/api/admin-graphql/2024-04/enums/ProductStatus): ProductStatus - The status of the product. * [tags](/docs/api/admin-graphql/2024-04/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-04/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-04/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-04/input-objects/ProductVariantSetInput): ProductVariantSetInput! - A list of variants associated with the product. * [vendor](/docs/api/admin-graphql/2024-04/scalars/String): String - The name of the product's vendor. ## Input objects with this input object * [productSet](/docs/api/admin-graphql/2024-04/mutations/productSet) ## Examples