AllMenus API Documentation

 

Audience

This document is intended as a "quick start" guide for developers who want to integrate the Allmenus API into their websites. It assumes you are familiar with the basic concepts of APIs, XML, HTTP request methods, and the REST style of software architecture.

Getting Started

To get up and running quickly with the AllMenus API, perform the following steps:

1 – Contact Allmenus to get your developer key. (We are suspending new api access while we consolidate our platform with MenuPages, GrubHub, and Seamless.)

2 – Go to the AllMenus API portal:  http://developer.allmenus.com/

3 – Peruse the developer’s guide and reference guide as needed.

4 – Integrate the results from the Allmenus API Dashboard into your site.

 

An Overview of the Allmenus API

The Allmenus API service provides quick and convenient access to Allmenus' full catalog of restaurants and menus. 

The API provides basic information on the restaurants in our database including Restaurant Name, Phone Number, Address, City, State, Zip Code, and Allmenus URL (link to a restaurant menu on the Allmenus.com site).

You can also access all the information on a restaurant’s menu in our database – including Group, Category, item, item descriptions, item sizes and price (where available).

Allmenus API Example

http://api.allmenus.com/restaurant?type=info&restaurant_id=294063&v=2&api_key=<YOURAPIKIEY>

Parameters

Restaurant?type=

info (for restaurant data)

menu (for restaurant menu data)

restaurant_id – the restaurant listing number, required.  Contact Dotmenu for an index of ID numbers to use with the API.

v=2 – the version number of Allmenus – should always be 2

api_key - Your unique API key

return_type - the API returns results in XML by default.  To receive results in JSON format - add this parameter to the call "return_type=json"

 

Restaurant Info API Results

Restaurant header info can be obtained by setting the type in the API call to 'info'.  This will return the following fields on the restaurant:

http://api.allmenus.com/restaurant?type=info&restaurant_id=294063&v=2&api_key=<YOURAPIKEY>

Restaurant ID – Dotmenu ID for a restaurant

Restaurant Name

Phone Number

Address

City

State

Zip Code

Menu Link – URL for the restaurant’s menu on the Allmenus.com site

CampusFood Link - URL for the restaurant's menu on the Campusfood.com site

 

Restaurant Menu API Results

Menus are structured in a hierarchy.  Restaurants can have one menu.  That menu can have multiple groups (Main, Breakfast, Lunch, Dinner etc…)  Under each menu group there are menu categories (Appetizers, Entrees, Desserts, etc…). And under each menu category there are items – which can have an associated price – or can have multiple sizes with associated prices each.

http://api.allmenus.com/restaurant?type=menu&restaurant_id=294063&v=2&api_key=<YOURAPIKEY>

Menu ID – Same as Restaurant ID – Dotmenu ID for the restaurant

group_id – ID for the menu group.  There are 8 possible groups for a menu.

0 = Main

1 = Breakfast

2 = Lunch

3 = Dinner

4 = Brunch

5 = Prix Fixe

6 = Seasonal

7 = Catering

8 = Sample Daily Menu

group_name – Name of the Menu Group

category_id - id number for the Menu category

category_name – Name for the Menu Category

category_description – text description of the menu category

item_id – id number for the menu item

item_name – name of the menu item

item_description – description of the menu item

item_size_name – up to four sizes can be attached to a menu item.  This field will display the size description and price of the item (if available).

 

The Allmenus API dashboard

The Allmenus API Dashboard allows you to dynamically construct API requests using a standard web form. After you select which data to include, the dashboard provides you with the query URL that will return the desired results, as well as the actual results themselves.

Experiment on the dashboard, ensure the results are the ones you desire, and implement the resulting request URL on your site.

Below are example request URLs and responses, in XML format. Each displays one restaurant with details and menu.

 

EXAMPLE XML request (Restaurant?=info)

http://api.allmenus.com/restaurant?type=info&restaurant_id=294063&v=2&api_key=<YOURAPIKEY>

Example XML response

 

<?xml version="1.0" encoding="UTF-8" ?>

- <restaurant id="294063">

  <restaurant_name>Buca di Beppo</restaurant_name>

  <phone_number>(508) 336-4202</phone_number>

  <address>353 Highland Ave</address>

  <city>SEEKONK</city>

  <state>MA</state>

  <zip_code>02771</zip_code>

  <menu_link>http://www.allmenus.com/ma/seekonk/294063-buca-di-beppo/menu/</menu_link>

  <campusfood_link>http://www.campusfood.com/restaurant.asp?campusid=835&mlid=294063</campusfood_link>

  </restaurant>

 

 

Example XML Request (Restaurant?=Menu)

http://api.allmenus.com/restaurant?type=menu&restaurant_id=294063&v=2&api_key=<YOURAPIKEY>

Example XML Response

 

<?xml version="1.0" encoding="UTF-8" ?>

- <menu id="294063">

- <group id="0">

  <name>Main</name>

- <category id="4133567">

  <name>Antipasti</name>

  <description>Small serves up to 3, large serves up to 6</description>

- <item id="26807687">

  <name>Garlic Bread</name>

  <description />

- <sizes>

  <size name="Small">8.45</size>

  <size name="Large">10.45</size>

  </sizes>

  </item>

- <item id="26807692">

  <name>Mozzarella Garlic Bread</name>

  <description />

- <sizes>

  <size name="Small">9.45</size>

  <size name="Large">11.45</size>

  </sizes>

  </item>

- <item id="26807700">

  <name>Bruschetta</name>

  <description>Toasted italian loaf brushed with garlic-infused olive oil, topped with fresh, diced tomatoes, basil and parmesan</description>

- <sizes>

  <size name="Small">10.45</size>

  <size name="Large">13.45</size>

  </sizes>

  </item>

- <item id="26807705">

  <name>Mozzarella Caprese</name>

  <description>Tomatoes and mozzarella drizzled with olive oil and topped with basil</description>

- <sizes>

  <size name="Small">10.45</size>

  <size name="Large">16.95</size>

  </sizes>

  </item>

- <item id="26807709">

  <name>Fried Calamari</name>

  <description />

- <sizes>

  <size name="Small">10.45</size>

  <size name="Large">17.95</size>

  </sizes>

  </item>

- <item id="26807710">

  <name>Fried Mozzarella</name>

  <description />

- <sizes>

  <size name="Small">9.45</size>

  <size name="Large">14.95</size>

  </sizes>

  </item>

- <item id="26807712">

  <name>Stuffed Mushrooms</name>

  <description>Mushrooms stuffed with prosciutto and cheese served with pesto cream sauce</description>

- <sizes>

  <size name="Large">12.45</size>

  </sizes>

  </item>

- <item id="26807716">

  <name>Buca Trio Platter</name>

  <description>Fried calamari, fried mozzarella and stuffed mushrooms</description>

- <sizes>

  <size name="Large">19.95</size>

  </sizes>

  </item>

- <item id="26807719">

  <name>Fritto Misto</name>

  <description>Tender pieces of shrimp, calamari and pepperoncini fried with a zesty breading</description>

- <sizes>

  <size name="Large">17.95</size>

  </sizes>

  </item>

- <item id="26807722">

  <name>Shrimp Scampi with Garlic Bread</name>

  <description>Shrimp sauteed in a lemon buttter sauce with garlic bread great for dipping</description>

- <sizes>

  <size name="Large">14.95</size>

  </sizes>

  </item>

- <item id="26807724">

  <name>Seafood Trio Platter</name>

  <description />

- <sizes>

  <size name="Large">21.95</size>

  </sizes>

  </item>

- <item id="26807728">

  <name>Zuppa Di Giorno</name>

  <description>Ask your server about our delicious soup of the day</description>

- <sizes>

  <size name="Cup">3.45</size>

  <size name="Bowl">5.95</size>

  </sizes>

  </item>

1 Comment

  1. greg10 months ago

    is there an endpoint to search for the menus of a region?

Please sign in to post a comment.