# CustomizationGroup A set of product customization options customers can select or fill in at purchase, such as toppings, engraving, or extra features. ## Type Definition ```graphql type CustomizationGroup { id: String title: String inputType: String mustBeSelected: Boolean options: [CustomizationGroupOption] } ``` ## Fields | Field | Type | Description | |-------|------|-------------| | id | String | The unique identifier for this customization group. | | title | String | The name of this customization group. | | inputType | String | The input type for this customization group: REQUIRED_CHOICE, OPTIONAL_CHOICES, or OPTIONAL_TEXT. | | mustBeSelected | Boolean | Indicates if an option from this group must be selected to add the product to the cart. | | options | [CustomizationGroupOption] | The list of options available in this customization group, formatted for GraphQL. | ## Relationships This type represents a customization group that contains multiple customization options. The `options` field contains a list of `CustomizationGroupOption` objects that define the individual choices available within this group. CustomizationGroup objects are referenced by `CustomizationGroupOption` through the `group` and `childGroup` fields, creating a hierarchical relationship structure for nested customization options. ## Example ```graphql { id title inputType mustBeSelected options { id label } } ``` ## Implements This type does not implement any interfaces. ## Related Types - [CustomizationGroupOption](/reference/storefront/1.3.0/objects/customization-group-option)