---
title: "Create a Catalog Group"
method: POST
path: "/api/v1.0/{appId}/catalog/groups"
tags: ["CatalogGroups"]
---

# Create a Catalog Group

`POST /api/v1.0/{appId}/catalog/groups`

[BETA - this endpoint is under development, do not use it in your production system]

## Path parameters

- `appId` string, required

## Request body

- CreateGroup — Create a Catalog Group
  - `MinSelectCount` integer — Minimum number of items that the user has to select
  - `MaxSelectCount` integer, nullable — Maximum number of items that the user has to select
  - `Products` CreateProductReference[] — Collection of items associated with this group
    - `CatalogItemId` string, required — Identifier of the CatalogItemId to use as SubProduct
    - `ProductType` 'Product' | 'Modifier', required — Type of the SupProduct
    - `PreselectedQuantity` integer — Quantity of the modifier that will be set when the parent product is placed in the basket
  - `Metafields` Metafield[] — Collection of metafields
    - `Key` string, required — Key of the metafield. Allowed characters: lowercase letters, numbers, hyphen, underscore and dot
    - `Value` string, required — Value of the metafield.
  - `GroupType` 'ModifierGroup', required — Type of group (ModifierGroup, etc)
  - `Sku` string, required — Stock Keeping Unit (SKU)
  - `Name` string, required — Group name
  - `AutogenerateDisplayText` boolean — Autogenerate display text in ordering applications
  - `ImageFileName` string — Image File Name

## Response `200`

OK

- RestApiResultGroup — Rest api result
  - `Data` Group, required — CatalogGroup
    - `CatalogGroupId` string — Unique catalog group id
    - `CatalogItemId` string — Unique catalog item id
    - `IsArchived` boolean — Returns true if the group is archived
    - `MinSelectCount` integer — Minimum number of items that the user has to select
    - `MaxSelectCount` integer, nullable — Maximum number of items that the user has to select
    - `Products` ProductReference[] — Collection of items associated with this product
      - `Item` Product — Product
        - `CatalogItemId` string — Unique catalog Item id
        - `IsArchived` boolean — Returns true if the item is archived
        - `Groups` GroupReference[] — Collection of groups associated with this item
          - `Group` Group — recursive
          - `CatalogItemId` string, required — Identifier of the ProductId to use as SubProduct
          - `GroupType` 'ModifierGroup', required — Type of the SupProduct
        - `Metafields` Metafield[] — Collection of metafields
          - `Key` string, required — Key of the metafield. Allowed characters: lowercase letters, numbers, hyphen, underscore and dot
          - `Value` string, required — Value of the metafield.
        - `ProductType` 'Product' | 'Modifier', required — Type of item (Product, Modifier, etc)
        - `Sku` string, required — Stock Keeping Unit (SKU)
        - `Name` string, required — Product name
        - `Description` string — Product description
        - `Price` number, double, required — Product price
        - `ImageFileName` string — Image File Name
        - `Alcohol` boolean — Product contains alcohol
      - `Product` Product — Product
        - `CatalogItemId` string — Unique catalog Item id
        - `IsArchived` boolean — Returns true if the item is archived
        - `Groups` GroupReference[] — Collection of groups associated with this item
          - `Group` Group — recursive
          - `CatalogItemId` string, required — Identifier of the ProductId to use as SubProduct
          - `GroupType` 'ModifierGroup', required — Type of the SupProduct
        - `Metafields` Metafield[] — Collection of metafields
          - `Key` string, required — Key of the metafield. Allowed characters: lowercase letters, numbers, hyphen, underscore and dot
          - `Value` string, required — Value of the metafield.
        - `ProductType` 'Product' | 'Modifier', required — Type of item (Product, Modifier, etc)
        - `Sku` string, required — Stock Keeping Unit (SKU)
        - `Name` string, required — Product name
        - `Description` string — Product description
        - `Price` number, double, required — Product price
        - `ImageFileName` string — Image File Name
        - `Alcohol` boolean — Product contains alcohol
      - `CatalogItemId` string, required — Identifier of the CatalogItemId to use as SubProduct
      - `ProductType` 'Product' | 'Modifier', required — Type of the SupProduct
      - `PreselectedQuantity` integer — Quantity of the modifier that will be set when the parent product is placed in the basket
    - `Metafields` Metafield[] — Collection of metafields
      - `Key` string, required — Key of the metafield. Allowed characters: lowercase letters, numbers, hyphen, underscore and dot
      - `Value` string, required — Value of the metafield.
    - `GroupType` 'ModifierGroup', required — Type of group (ModifierGroup, etc)
    - `Sku` string, required — Stock Keeping Unit (SKU)
    - `Name` string, required — Group name
    - `AutogenerateDisplayText` boolean — Autogenerate display text in ordering applications
    - `ImageFileName` string — Image File Name

## Other responses

- `400` — BadRequest
- `401` — Authentication has been denied for this request.
- `403` — Successful authentication, but authorization has been denied for this request.

---

[API](https://skmtc.net/flipdish/apis/flipdish-open-api-v1-0.md) · [All operations](https://skmtc.net/flipdish/apis/flipdish-open-api-v1-0/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/flipdish/flipdish-open-api-v1-0/versions/a72c0465da74/schema)
