Otter · JSON Structure

Public Api Menu 3 Pd Structure

A Menu for a store.

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

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

Properties

id name categoryIds fulfillmentModes description hoursData additionalCharges exposedThirdPartyInfos

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-3-pd-structure.json",
  "name": "Menu_3PD",
  "description": "A Menu for a store.",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "The identifier that exists in the third party system. During a menu publish event, uuidV4 ids will be generated for new entities that do not yet exist in the internal menu.",
      "example": "da0e4e94-5670-4175-897a-3b7dde45bed5"
    },
    "name": {
      "type": "string",
      "description": "Name of the Menu.",
      "example": "Tasty BBQ"
    },
    "categoryIds": {
      "type": "array",
      "default": [],
      "description": "Identifiers of the categories within this Menu.",
      "items": {
        "type": "string"
      }
    },
    "fulfillmentModes": {
      "type": "array",
      "default": [],
      "description": "The ways in which this menu may be fulfilled. If no values are specified, it is assumed that all fulfillment types are allowed.",
      "items": {
        "type": "string",
        "description": "How an item from a menu is allowed to be fulfilled when ordered by a user.",
        "enum": [
          "DELIVERY",
          "PICK_UP",
          "DINE_IN"
        ]
      }
    },
    "description": {
      "type": "string",
      "description": "Description of the Menu.",
      "example": "Cooking up BBQ deliciousness from around the globe!"
    },
    "hoursData": {
      "$ref": "https://raw.githubusercontent.com/api-evangelist/otter/refs/heads/main/json-schema/public-api-hours-data-schema.json"
    },
    "additionalCharges": {
      "type": "array",
      "nullable": true,
      "description": "Additional charges to apply for this menu. All additional charges specified on a menu will only be applied once per order.",
      "items": {
        "$ref": "https://raw.githubusercontent.com/api-evangelist/otter/refs/heads/main/json-schema/public-api-additional-charge-schema.json"
      }
    },
    "exposedThirdPartyInfos": {
      "type": "array",
      "default": [],
      "description": "Additional information about the menu that should be exposed to third party",
      "items": {
        "$ref": "https://raw.githubusercontent.com/api-evangelist/otter/refs/heads/main/json-schema/public-api-exposed-third-party-info-schema.json"
      }
    }
  },
  "required": [
    "id",
    "name"
  ]
}