Toast · Schema

RestaurantInfo

Information about the configuration of a restaurant in the Toast POS.

RestaurantsPoint Of SalePaymentsOnline OrderingDeliveryLoyaltyGift CardsMenusOrdersKitchenLaborSchedulingInventoryHospitalityPartner Integrations

Properties

Name Type Description
guid string
general object
urls object
location object
schedules object
delivery object
onlineOrdering object
prepTimes object
View JSON Schema on GitHub

JSON Schema

restaurants-restaurant-info-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/toast-tab/refs/heads/main/json-schema/restaurants-restaurant-info-schema.json",
  "title": "RestaurantInfo",
  "description": "Information about the configuration of a restaurant in the Toast\nPOS.\n",
  "type": "object",
  "properties": {
    "guid": {
      "type": "string",
      "example": "5a401af8-d2e2-4090-8c45-9f87b8b6c4d1"
    },
    "general": {
      "$ref": "#/$defs/General"
    },
    "urls": {
      "$ref": "#/$defs/URLs"
    },
    "location": {
      "$ref": "#/$defs/Location"
    },
    "schedules": {
      "$ref": "#/$defs/Schedules"
    },
    "delivery": {
      "$ref": "#/$defs/Delivery"
    },
    "onlineOrdering": {
      "$ref": "#/$defs/OnlineOrdering"
    },
    "prepTimes": {
      "$ref": "#/$defs/PrepTimes"
    }
  },
  "$defs": {
    "General": {
      "type": "object",
      "description": "General information about a restaurant location.\n",
      "properties": {
        "name": {
          "type": "string",
          "description": "The guest-facing name of the restaurant. For example, the\n`name` of a restaurant might be `Tommy's Burgers`.\n",
          "example": "Example Name"
        },
        "locationName": {
          "type": "string",
          "description": "A name used externally to differentiate multiple locations, like Neighborhood, Square, City, or Hotel.",
          "example": "Example Name"
        },
        "locationCode": {
          "type": "string",
          "description": "A code used internally to differentiate multiple locations, typically a 3 or 4 letter code.",
          "example": "string"
        },
        "description": {
          "type": "string",
          "description": "A description of the restaurant, such as information about the atmosphere and food.",
          "example": "string"
        },
        "timeZone": {
          "type": "string",
          "description": "The name of the restaurant's time zone in the <a \nhref=\"https://www.iana.org/time-zones\">IANA time zone \ndatabase</a>. For example, `America/New_York`.\n",
          "example": "string"
        },
        "closeoutHour": {
          "type": "integer",
          "description": "The hour of the day that separates one business day from the\nnext, also known as the \"business day cutoff time\". This is \nin the time zone of the restaurant. The `closeoutHour` is set \nto a value from 0-12 (midnight to noon) in the Business Day \nCutoff field in Toast Web.\n",
          "example": 1
        },
        "managementGroupGuid": {
          "type": "string",
          "description": "The unique identifier of the restaurant group for the restaurant.",
          "example": "5a401af8-d2e2-4090-8c45-9f87b8b6c4d1"
        },
        "currencyCode": {
          "type": "string",
          "description": "The ISO-4217 currency code used in this restaurant",
          "example": "string"
        },
        "firstBusinessDate": {
          "type": "integer",
          "description": "The first business date (yyyyMMdd) is the day a restaurant began using the Toast platform. The\n`firstBusinessDate` is also the first day on which time entries can be created for employees.\n",
          "example": "2026-06-03T12:00:00.000+0000"
        },
        "archived": {
          "type": "boolean",
          "description": "Returns `true` if the restaurant has been archived from the Toast platform, otherwise returns `false`. A\ncommon reason for archiving a restaurant is if the restaurant was created in error.\n",
          "default": false,
          "example": true
        }
      }
    },
    "URLs": {
      "type": "object",
      "description": "Web addresses for the restaurant.",
      "properties": {
        "website": {
          "type": "string",
          "description": "The primary website for the restaurant.",
          "example": "string"
        },
        "facebook": {
          "type": "string",
          "description": "A Facebook\u2122 page for the restaurant.",
          "example": "string"
        },
        "twitter": {
          "type": "string",
          "description": "A Twitter\u2122 handle for the restaurant.",
          "example": "string"
        },
        "orderOnline": {
          "type": "string",
          "description": "A URL for the online ordering site for the restaurant.",
          "example": "string"
        },
        "purchaseGiftCard": {
          "type": "string",
          "description": "A URL for the gift card purchasing site for the restaurant.",
          "example": "string"
        },
        "checkGiftCard": {
          "type": "string",
          "description": "A URL for a site at which guests can find balances and other information about gift cards.",
          "example": "string"
        }
      }
    },
    "Location": {
      "type": "object",
      "description": "Information about the physical location of a restaurant.",
      "properties": {
        "address1": {
          "type": "string",
          "description": "The first line of the street address of the restaurant.",
          "example": "string"
        },
        "address2": {
          "type": "string",
          "description": "The second line of the street address of the restaurant.",
          "example": "string"
        },
        "city": {
          "type": "string",
          "description": "The city or town of the restaurant. restaurant.",
          "example": "string"
        },
        "stateCode": {
          "type": "string",
          "description": "Deprecated. Get the state or province of a restaurant in the\n`administrativeArea` value.\n\nThe abbreviation of the state or province of the restaurant.\n",
          "example": "string"
        },
        "administrativeArea": {
          "type": "string",
          "description": "The name of the geographical division (for example, state, province,\nor county) that the restaurant is located in.\n",
          "example": "string"
        },
        "zipCode": {
          "type": "string",
          "description": "The ZIP or postal code of the restaurant.",
          "example": "string"
        },
        "country": {
          "type": "string",
          "description": "The nation of the restaurant.",
          "example": "string"
        },
        "phone": {
          "type": "string",
          "example": "string"
        },
        "phoneCountryCode": {
          "type": "string",
          "description": "A numeric code corresponding to one or more countries,\nused as a telephone number prefix when making \ninternational telephone calls.\n",
          "example": "string"
        },
        "latitude": {
          "type": "number",
          "format": "double",
          "description": "The north/south geographic coordinate of the restaurant, in decimal degrees.",
          "example": 1.0
        },
        "longitude": {
          "type": "number",
          "format": "double",
          "description": "The east/west geographic coordinate of the restaurant, in decimal degrees.",
          "example": 1.0
        }
      }
    },
    "Schedules": {
      "type": "object",
      "description": "Describes the types of service and hours of operation for the\nrestaurant over a one week period. The schedules object contains\nservice and hour schedules for types of days and the types of\ndays for each day of the calendar week.\n",
      "properties": {
        "daySchedules": {
          "type": "object",
          "description": "A map of `DaySchedule` objects.\nThe value names in this object are key identifiers that are\nused to associate a day schedule with a day of the week in\nthe `weekSchedule` value.\n",
          "properties": {
            "identifier": {
              "type": "string"
            }
          },
          "additionalProperties": {
            "$ref": "#/$defs/DaySchedule"
          }
        },
        "weekSchedule": {
          "$ref": "#/$defs/WeekSchedule"
        }
      }
    },
    "DaySchedule": {
      "type": "object",
      "description": "Information about the services and hours that are scheduled for a\nrestaurant during a type of day. For example, a restaurant might\nhave different services available on a type of day named\n`weekday` than it does on a type of day named `weekend`.\n",
      "properties": {
        "scheduleName": {
          "type": "string",
          "description": "The name of the type of day. For example, `weekday`.",
          "example": "Example Name"
        },
        "services": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Service"
          },
          "description": "An array of `Service` objects that are available during the\ntype of day.\n"
        },
        "openTime": {
          "type": "string",
          "description": "The time of day that the first service for the type of day\nbegins. For example, the first service might begin at\n`06:00:00.000`.\n",
          "example": "2026-06-03T12:00:00.000+0000"
        },
        "closeTime": {
          "type": "string",
          "description": "The time of day that the last service for the type of day\nends. For example, the last service might end at\n`02:00:00.000`.\n",
          "example": "2026-06-03T12:00:00.000+0000"
        }
      }
    },
    "Service": {
      "type": "object",
      "description": "A time-based division of the operation of the restaurant. For\nexample, a service might be named `lunch` and it might be\navailable between specific hours during the day.\n",
      "properties": {
        "name": {
          "type": "string",
          "example": "Example Name"
        },
        "hours": {
          "$ref": "#/$defs/Hours"
        },
        "overnight": {
          "type": "boolean",
          "description": "Indicates whether any portion of the period of time that a\nservice is available occurs after 00:00 (midnight) and before\nthe business day cutoff time for the restaurant which is \navailable in the `closeoutHour` property. An\novernight shift spans two calendar dates but occurs during\none business day.\n",
          "example": true
        }
      }
    },
    "Hours": {
      "type": "object",
      "description": "The period of time that the restaurant offers a service. For\nexample, a service might be named \"lunch\" and it might be offered\nbetween `10:00:00.000` and `16:00:00.000`.\n",
      "properties": {
        "startTime": {
          "type": "string",
          "description": "The time of day that the service begins.",
          "example": "2026-06-03T12:00:00.000+0000"
        },
        "endTime": {
          "type": "string",
          "description": "The time of day that the service ends.",
          "example": "2026-06-03T12:00:00.000+0000"
        }
      }
    },
    "WeekSchedule": {
      "type": "object",
      "description": "The day schedule used for each day of the week. A day schedule is \nthe set of services (for example, \"lunch\") that a restaurant \noffers and the hours that it offers each one. If a day of the \nweek value in this object is `null`, the restaurant is closed on \nthat day. Values for each day of the week are identifiers for day \nschedules in the map of `DaySchedule` objects in the \n`daySchedules` value of the `Schedules` object.\n",
      "properties": {
        "monday": {
          "type": "string",
          "description": "A key identifier for the `DaySchedule` object\nthat represents the services and hours for the restaurant on\nthis day of the week.\n",
          "example": "string"
        },
        "tuesday": {
          "type": "string",
          "description": "A key identifier for the `DaySchedule` object\nthat represents the services and hours for the restaurant on\nthis day of the week.\n",
          "example": "string"
        },
        "wednesday": {
          "type": "string",
          "description": "A key identifier for the `DaySchedule` object\nthat represents the services and hours for the restaurant on\nthis day of the week.\n",
          "example": "string"
        },
        "thursday": {
          "type": "string",
          "description": "A key identifier for the `DaySchedule` object\nthat represents the services and hours for the restaurant on\nthis day of the week.\n",
          "example": "string"
        },
        "friday": {
          "type": "string",
          "description": "A key identifier for the `DaySchedule` object\nthat represents the services and hours for the restaurant on\nthis day of the week.\n",
          "example": "90a86f12"
        },
        "saturday": {
          "type": "string",
          "description": "A key identifier for the `DaySchedule` object\nthat represents the services and hours for the restaurant on\nthis day of the week.\n",
          "example": "string"
        },
        "sunday": {
          "type": "string",
          "description": "A key identifier for the `DaySchedule` object\nthat represents the services and hours for the restaurant on\nthis day of the week.\n",
          "example": "string"
        }
      }
    },
    "Delivery": {
      "type": "object",
      "description": "Information about delivery service provided by the restaurant.",
      "properties": {
        "enabled": {
          "type": "boolean",
          "description": "Indicates whether the restaurant provides delivery service\nand has enabled the delivery configuration in Toast Web.\n",
          "example": true
        },
        "minimum": {
          "type": "number",
          "format": "double",
          "description": "The minimum order price that is qualified for delivery. For\nexample, a restaurant might not deliver orders that cost less\nthan $25.00.\n",
          "example": 1.0
        },
        "area": {
          "type": "string",
          "description": "The geographic area in which the restaurant provides delivery\nservice. The delivery area is represented by an encoded set\nof latitude and longitude coordinates that describe a polygon\narea on a map. The coordinates are encoded using the Google\nmaps encoded polyline algorithm format. See [more information\nabout the way that the encoded polyline algorithm format\nencodes location coordinates]\n(https://developers.google.com/maps/documentation/utilities/polylinealgorithm).\nYou can decode the coordinates of the delivery area using any\nsoftware that supports the encoded polyline algorithm format.\nFor example, you can decode the coordinates using [the Mapline\nPolyline decoding program]\n(https://github.com/mapbox/polyline). The delivery area\ncoordinates are a JSON array of decimal degree latitude and\nlongitude pairs. For example,\n`[[42.36083,-71.14798],[42.34028,-71.15673],[42.3272,-71.14386]]`.\n",
          "example": "string"
        }
      }
    },
    "OnlineOrdering": {
      "type": "object",
      "description": "Information about the web-based ordering configuration for the\nrestaurant.\n",
      "properties": {
        "enabled": {
          "type": "boolean",
          "description": "Indicates whether the restaurant has enabled the Toast online \nordering module. This value is `true` if the module has ever \nbeen enabled. The value _does not_ indicate that a restaurant \nis accepting online orders or that the restaurant is using \nthe Toast online ordering feature.\n",
          "example": true
        },
        "scheduling": {
          "type": "boolean",
          "description": "Indicates whether the online ordering function for the\nrestaurant allows guests to place orders that will be\nfulfilled in the future. If this value is `false`, orders\nwill be fulfilled as soon as possible.\n",
          "example": true
        },
        "specialRequests": {
          "type": "boolean",
          "description": "Indicates whether the online ordering function for the\nrestaurant allows guests to include written notes with\nadditional instructions for their orders.\n",
          "example": true
        },
        "specialRequestsMessage": {
          "type": "string",
          "description": "A written message that is shown to guests when they\ninclude additional instructions with an order. For example,\nthe message might be \"no substitutions.\"\n",
          "example": "string"
        },
        "paymentOptions": {
          "$ref": "#/$defs/PaymentOptions",
          "description": "Information about the forms of payment that the restaurant\naccepts for online orders.\n"
        }
      }
    },
    "PaymentOptions": {
      "type": "object",
      "description": "Information about the forms of payment that the restaurant will\naccept for orders.\n",
      "properties": {
        "delivery": {
          "$ref": "#/$defs/DeliveryPaymentOptions"
        },
        "takeout": {
          "$ref": "#/$defs/TakeoutPaymentOptions"
        },
        "ccTip": {
          "type": "boolean",
          "description": "enables credit card tips",
          "example": true
        }
      }
    },
    "DeliveryPaymentOptions": {
      "type": "object",
      "description": "Information about the forms of payment that the restaurant will\naccept for delivery orders.\n",
      "properties": {
        "cash": {
          "type": "boolean",
          "description": "Indicates whether the restaurant accepts cash payment for\ndelivery orders that are placed online.\n",
          "example": true
        },
        "ccSameDay": {
          "type": "boolean",
          "description": "Indicates whether the restaurant accepts online credit card\npayment for delivery orders that are delivered on the same\nday.\n",
          "example": true
        },
        "ccFuture": {
          "type": "boolean",
          "description": "Indicates whether the restaurant accepts online credit card\npayment for delivery orders that are to be delivered on a day\nafter the guest places the order.\n",
          "example": true
        }
      }
    },
    "TakeoutPaymentOptions": {
      "type": "object",
      "description": "Information about the forms of payment that the restaurant will\naccept for orders that a guest picks up in person.\n",
      "properties": {
        "cash": {
          "type": "boolean",
          "description": "Indicates whether the restaurant accepts cash payment for\ntakeout orders that are placed online.\n",
          "example": true
        },
        "ccSameDay": {
          "type": "boolean",
          "description": "Indicates whether the restaurant accepts online credit card\npayment for takeout orders that the guest will pick up on\nthe same day.\n",
          "example": true
        },
        "ccFuture": {
          "type": "boolean",
          "description": "Indicates whether the restaurant accepts online credit card\npayment for takeout orders that the guest will pick up on\na day after the guest places the order.\n",
          "example": true
        },
        "ccInStore": {
          "type": "boolean",
          "description": "Indicates whether the restaurant accepts credit card payment\nat the time the guest picks up a takeout order.\n",
          "example": true
        }
      }
    },
    "PrepTimes": {
      "type": "object",
      "description": "Information about the scheduled availability of the dining\noptions that are provided by the restaurant.\n",
      "properties": {
        "deliveryPrepTime": {
          "type": "integer",
          "format": "int32",
          "description": "The amount of time, in minutes, that it takes to prepare an\nonline delivery order.\n",
          "example": 1
        },
        "deliveryTimeAfterOpen": {
          "type": "integer",
          "format": "int32",
          "description": "The amount of time, in minutes, that it takes for delivery\nservice to become available after the restaurant opens.\n",
          "example": 1
        },
        "deliveryTimeBeforeClose": {
          "type": "integer",
          "format": "int32",
          "description": "The amount of time, in minutes, before the restaurant closing\ntime that delivery service becomes unavailable.\n",
          "example": 1
        },
        "takeoutPrepTime": {
          "type": "integer",
          "format": "int32",
          "description": "The amount of time, in minutes, that it takes to prepare an\nonline takeout order.\n",
          "example": 1
        },
        "takeoutTimeAfterOpen": {
          "type": "integer",
          "format": "int32",
          "description": "The amount of time, in minutes, that it takes for takeout\nservice to become available after the restaurant opens.\n",
          "example": 1
        },
        "takeoutTimeBeforeClose": {
          "type": "integer",
          "format": "int32",
          "description": "The amount of time, in minutes, before the restaurant closing\ntime that takeout service becomes unavailable.\n",
          "example": 1
        },
        "takeoutThrottlingTime": {
          "type": "integer",
          "description": "The amount of time, in minutes, that an online takeout order\nis delayed before the Toast POS fires it in the kitchen.\n",
          "example": 1
        },
        "deliveryThrottlingTime": {
          "type": "integer",
          "description": "The amount of time, in minutes, that an online delivery order\nis delayed before the Toast POS fires it in the kitchen.\n",
          "example": 1
        }
      }
    }
  }
}