Otter · JSON Structure

Public Api Modifier Group Update Request Structure

Items are sold on the menu. Modifiers to items are items themselves and their relationship is defined by ModifierGroup.

Type: object Properties: 9 Required: 2
RestaurantOrder ManagementDeliveryOnline OrderingMenu ManagementAnalytics

ModifierGroupUpdateRequest is a JSON Structure definition published by Otter, describing 9 properties, of which 2 are required. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.

Properties

id name minimumSelections maximumSelections maxPerModifierSelectionQuantity defaultModifierSelectionData itemIds description type

Meta-schema: https://json-structure.org/meta/core/v0/#

JSON Structure

Raw ↑
{
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/otter/refs/heads/main/json-structure/public-api-modifier-group-update-request-structure.json",
  "name": "ModifierGroupUpdateRequest",
  "description": "Items are sold on the menu. Modifiers to items are items themselves and their relationship is defined by ModifierGroup.",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Identifier for ModifierGroup.",
      "example": "db5740de-429c-4f06-b264-3d41dce6d8c3"
    },
    "name": {
      "type": "string",
      "description": "Name of ModifierGroup.",
      "example": "Choose your type of bagel"
    },
    "minimumSelections": {
      "minimum": 0,
      "type": "int32",
      "description": "Minimum number of selections customers can make in this ModifierGroup. 0 means no min limits.",
      "example": 0
    },
    "maximumSelections": {
      "minimum": 0,
      "type": "int32",
      "description": "Maximum number of selections customers can make in this ModifierGroup. 0 means no max limits.",
      "example": 0
    },
    "maxPerModifierSelectionQuantity": {
      "minimum": 0,
      "type": "int32",
      "description": "Maximum number of selections customers can make for each modifier item in this ModifierGroup. 0 means there is no limit to how many times they can select a single modifier item. If not specified, a value of 1 will be used as the default value.",
      "example": 0
    },
    "defaultModifierSelectionData": {
      "$ref": "https://raw.githubusercontent.com/api-evangelist/otter/refs/heads/main/json-schema/public-api-default-modifier-selection-data-schema.json"
    },
    "itemIds": {
      "type": "array",
      "default": [],
      "description": "Identifiers of each Item within this ModifierGroup.",
      "items": {
        "type": "string"
      }
    },
    "description": {
      "type": "string",
      "description": "Description for this ModifierGroup.",
      "example": "Choose any of these delicious types of bagels"
    },
    "type": {
      "type": "string",
      "description": "Experimental: The type of this modifier group, for informative purposes. It can be one of the following values: `DEFAULT`, `UPSELL`, `INGREDIENT_REMOVAL`, `INGREDIENT_ADD`, `PREPARE_INSTRUCTIONS`, `SIZE_MODIFICATION`, `PACKAGING_INSTRUCTION` and `CONDIMENT`.",
      "example": "DEFAULT"
    }
  },
  "required": [
    "id",
    "name"
  ]
}