Otter · JSON Structure

Public Api Menu Item Pos Structure

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

Type: object Properties: 11 Required: 5
RestaurantOrder ManagementDeliveryOnline OrderingMenu ManagementAnalytics

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

Properties

id name photoIds price status description modifierGroupIds priceOverrides skuDetails additionalCharges tax

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-menu-item-pos-structure.json",
  "name": "MenuItem_POS",
  "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",
      "minLength": 1,
      "description": "Internal identifier of this Item.",
      "example": "faa4c79f-480d-4de1-bc34-5fb74ef082ef"
    },
    "name": {
      "type": "string",
      "description": "Name of this Item",
      "example": "Bagel"
    },
    "photoIds": {
      "type": "array",
      "description": "A list of Photo references associated with the Item.",
      "items": {
        "type": "string"
      }
    },
    "price": {
      "$ref": "https://raw.githubusercontent.com/api-evangelist/otter/refs/heads/main/json-schema/public-api-money-schema.json"
    },
    "status": {
      "$ref": "https://raw.githubusercontent.com/api-evangelist/otter/refs/heads/main/json-schema/public-api-item-status-schema.json"
    },
    "description": {
      "type": "string",
      "description": "Description of this Item",
      "example": "Delicious bagel!"
    },
    "modifierGroupIds": {
      "type": "array",
      "default": [],
      "description": "Identifiers of each ModifierGroup within this Item.",
      "items": {
        "type": "string",
        "example": "7152ee6e-e941-45c1-9008-2e306b479114"
      }
    },
    "priceOverrides": {
      "type": "array",
      "nullable": true,
      "description": "Specify price overrides for different service slugs.",
      "items": {
        "$ref": "https://raw.githubusercontent.com/api-evangelist/otter/refs/heads/main/json-schema/public-api-item-price-override-schema.json"
      }
    },
    "skuDetails": {
      "$ref": "https://raw.githubusercontent.com/api-evangelist/otter/refs/heads/main/json-schema/public-api-sku-details-schema.json"
    },
    "additionalCharges": {
      "type": "array",
      "nullable": true,
      "description": "Additional charges to apply for this item. Additional charges will be applied for every instance of this item within an order.",
      "items": {
        "$ref": "https://raw.githubusercontent.com/api-evangelist/otter/refs/heads/main/json-schema/public-api-additional-charge-schema.json"
      }
    },
    "tax": {
      "$ref": "https://raw.githubusercontent.com/api-evangelist/otter/refs/heads/main/json-schema/public-api-item-tax-schema.json",
      "description": "The tax configuration for the menu item."
    }
  },
  "required": [
    "id",
    "name",
    "photoIds",
    "price",
    "status"
  ]
}