{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/grubhub/main/json-schema/grubhub-posordermerchantdata-schema.json",
  "title": "PosOrderMerchantData",
  "x-generated": "2026-09-17",
  "x-method": "derived",
  "x-source": "openapi/grubhub-orders-openapi.yml#/components/schemas/PosOrderMerchantData",
  "type": "object",
  "properties": {
    "order_facet_data": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/$defs/OrderFacetData"
      }
    },
    "restaurant_tags": {
      "uniqueItems": true,
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "fulfillment_tags": {
      "uniqueItems": true,
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "chain_name": {
      "type": "string"
    }
  },
  "description": "Merchant specific data including tags, chain name, and lead time.",
  "$defs": {
    "LeadTimeSettings": {
      "type": "object",
      "properties": {
        "delivery_estimate_minutes": {
          "type": "integer",
          "format": "int32"
        },
        "pickup_estimate_minutes": {
          "type": "integer",
          "format": "int32"
        },
        "lead_time_settings_tiers": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/LeadTimeSettingsTier"
          }
        },
        "calculated_large_order_threshold_settings": {
          "$ref": "#/$defs/ThresholdSettings"
        }
      }
    },
    "LeadTimeSettingsTier": {
      "required": [
        "additional_prep_time",
        "threshold",
        "threshold_type"
      ],
      "type": "object",
      "properties": {
        "threshold_type": {
          "type": "string",
          "enum": [
            "ORDER_AMOUNT_CENTS",
            "UNKNOWN"
          ]
        },
        "threshold": {
          "type": "integer",
          "format": "int32"
        },
        "additional_prep_time": {
          "type": "integer",
          "format": "int32"
        }
      }
    },
    "OrderFacetData": {
      "type": "object",
      "properties": {
        "lead_time_settings": {
          "$ref": "#/$defs/LeadTimeSettings"
        },
        "min_advance_notice_minutes": {
          "type": "integer",
          "format": "int32"
        }
      }
    },
    "ThresholdSettings": {
      "type": "object",
      "properties": {
        "threshold": {
          "type": "integer",
          "format": "int32"
        },
        "threshold_type": {
          "type": "string",
          "enum": [
            "ORDER_AMOUNT_CENTS",
            "UNKNOWN"
          ]
        }
      }
    }
  }
}