Discover/Vercel API
live

Vercel APIevals-opendining.vercel.app ↗

Access OpenDining restaurant listings, full menus with plant-based labelling, and reservation form fields via 3 structured JSON endpoints.

Endpoint health
verified 1h ago
get_booking_form
list_restaurants
get_restaurant
2/2 passing latest checkself-healing
Endpoints
3
Updated
32m ago

What is the Vercel API?

The OpenDining API exposes 3 endpoints covering restaurant listings, detailed menus, and reservation form structure from the OpenDining platform. list_restaurants returns all 20 listed restaurants in a single call — each with a detail URL, booking URL, location, cuisine, price range, and menu data. Endpoints return structured JSON including per-dish plant-based labelling and per-restaurant review scores across Overall, Food, Service, and Ambience dimensions.

This call costs1 credit / call— charged only on success
Try it

No input parameters required.

→ api.parse.bot/scraper/676f5edc-f9b4-4c65-8ad9-974c0afd6671/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/676f5edc-f9b4-4c65-8ad9-974c0afd6671/list_restaurants' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 3 totalmissing one? ·

Returns every restaurant on the OpenDining home listing in one call (no pagination; the site lists a fixed set, 20 at build time) with its detail page URL, booking page URL (booking_url, the site's reservation page for that restaurant), location, cuisine, price range, review count and full menu grouped by section. The site publishes no dietary attribute, so vegetarian_labeled_count is a grounded text count: the number of menu items whose name or description explicitly says vegan, vegetarian, veggie or plant-based; each menu item carries the same flag as vegetarian_labeled. Items that are plausibly vegetarian but not labelled (e.g. a salad) are not counted. One round trip.

Input

No input parameters required.

Response
{
  "type": "object",
  "fields": {
    "total": "number of restaurants returned",
    "restaurants": "array of restaurant summaries, each with restaurant_id, detail_url, booking_url (that restaurant's reservation page), menu (array of {section, items[]}), menu_item_count and vegetarian_labeled_count"
  },
  "sample": {
    "data": {
      "total": 20,
      "restaurants": [
        {
          "menu": [
            {
              "items": [
                {
                  "name": "Truffle Soup",
                  "price": 15,
                  "description": "black truffle, cream",
                  "vegetarian_labeled": false
                }
              ],
              "section": "starters"
            }
          ],
          "name": "The Royal Dine",
          "location": "Mission District",
          "food_type": "French",
          "image_url": "https://evals-opendining.vercel.app/images/restaurants/royal.jpg",
          "adjectives": [
            "luxurious",
            "romantic",
            "elegant"
          ],
          "detail_url": "https://evals-opendining.vercel.app/r/e83c1c2b-9f5b-4a7c-bd54-b165a86a0f3d",
          "booking_url": "https://evals-opendining.vercel.app/booking?index=e83c1c2b-9f5b-4a7c-bd54-b165a86a0f3d",
          "description": "An upscale dining establishment offering a lavish experience with gourmet cuisine and a majestic ambiance.",
          "price_range": "$$25 to $50",
          "review_count": 20,
          "restaurant_id": "e83c1c2b-9f5b-4a7c-bd54-b165a86a0f3d",
          "menu_item_count": 9,
          "vegetarian_labeled_count": 0
        }
      ]
    },
    "status": "success"
  }
}

About the Vercel API

Restaurant Listings and Menu Data

list_restaurants returns all restaurants available on the OpenDining home listing in one call with no pagination. Each record includes restaurant_id, detail_url, booking_url, location, cuisine type, price range, review count, and a full menu array. The menu is structured by section/course, with each dish exposing name, price, description, and a vegetarian_labeled boolean flag. list_restaurants is the right starting point for building a browsable index or filtering by cuisine and price range.

Individual Restaurant Detail

get_restaurant accepts a restaurant_id (a UUID sourced from list_restaurants) and returns the complete detail record for that restaurant. Beyond the summary fields, the response adds reviews (an array of per-review score records covering Overall, Food, Service, and Ambience), interior_images (absolute image URLs), menu_item_count, and vegetarian_labeled_count — an integer count of menu items whose text explicitly mentions vegan, vegetarian, veggie, or plant-based. This makes it straightforward to compare plant-friendly options across restaurants without scanning item descriptions manually.

Reservation Form Structure

get_booking_form returns the structure of OpenDining's site-wide reservation form — the same fields appear on every restaurant's booking page. The response includes diner_fields (phone, email, occasion, special_request — each with a required flag and, for phone, a default_count value), reservation_options (party size labels, half-hour time slot labels, and occasion options), submit_label, terms_text, and payment_required (always false — the booking page collects no payment or deposit). This endpoint is useful for building front-end booking flows or validating form completeness against the live site's requirements.

Reliability & maintenanceVerified

The Vercel API is a managed, monitored endpoint for evals-opendining.vercel.app — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when evals-opendining.vercel.app changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official evals-opendining.vercel.app API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
1h ago
Latest check
2/2 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a restaurant discovery interface filtered by cuisine, price range, and plant-based menu item count.
  • Generate a plant-friendly dining guide by querying vegetarian_labeled_count and vegetarian_labeled item flags across all restaurants.
  • Aggregate and display per-restaurant review scores (Overall, Food, Service, Ambience) for side-by-side comparison.
  • Replicate or embed OpenDining's reservation form fields in a third-party booking UI using get_booking_form field definitions.
  • Build a menu browser that groups dishes by section and highlights price ranges across multiple restaurants.
  • Display restaurant interior images alongside menu data by combining interior_images from get_restaurant with dish listings.
  • Validate a custom booking form against the live site's required fields and occasion options using diner_fields and reservation_options.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 req/min

Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does OpenDining have an official developer API?+
OpenDining (evals-opendining.vercel.app) does not publish an official developer API or documented public endpoints for third-party use.
What does `get_restaurant` return that `list_restaurants` does not?+
get_restaurant adds several fields not present in the listing response: reviews (an array of score records for Overall, Food, Service, and Ambience), interior_images (absolute URLs of restaurant photos), menu_item_count, and vegetarian_labeled_count. The menu structure and booking/detail URLs are the same in both endpoints.
Does the API cover real-time reservation availability or confirmed booking submission?+
Not currently. The API covers the reservation form's structure — fields, options, labels, and consent text — but does not return live time-slot availability or submit reservations. You can fork it on Parse and revise to add an availability or booking-submission endpoint.
How many restaurants does the API cover, and can I paginate for more?+
list_restaurants returns the fixed set of restaurants on the OpenDining listing — 20 at build time — in a single call. There is no pagination parameter because the source lists a fixed number of restaurants. If the site adds more restaurants, the API will reflect that count on the next data refresh.
Does the API expose user review text or only numerical scores?+
Currently get_restaurant returns per-review score records (Overall, Food, Service, Ambience) without free-text review content. The API covers structured numeric scores. You can fork it on Parse and revise to add review text extraction if that field becomes available.
Page content last updated . Spec covers 3 endpoints from evals-opendining.vercel.app.
Related APIs in Food DiningSee all →
evals-dashdish.vercel.app API
evals-dashdish.vercel.app API
opentable.com API
Search for restaurants across the US with ratings, reviews, photos, and pricing information, plus get real-time availability and autocomplete suggestions as you type. Check reservation openings and explore detailed restaurant features to find and book your perfect dining experience.
thefork.com API
Search for restaurants and check real-time table availability to find and book your next dining reservation. Get detailed information about restaurants including menus, pricing, and reservation slots all in one place.
opentable.ca API
Search and discover restaurants on OpenTable, view detailed information like menus and reviews, and check real-time dining availability across metro areas. Find top-rated restaurants in your location and instantly see which tables are open for your preferred date and time.
osteriarivelin.com API
osteriarivelin.com API
tabelog.com API
Search for restaurants and view detailed information like menus, ratings, and reviews on Tabelog, then instantly check real-time table availability to book your ideal dining experience. Get comprehensive restaurant profiles including cuisine type, price range, and customer feedback to make informed dining decisions.
openrice.com API
Search for restaurants across Hong Kong and discover detailed information including reviews, cuisines, districts, and award-winning establishments. Browse new restaurant openings and filter by location or cuisine type to find exactly what you're looking for.
rosselligroup.eu API
rosselligroup.eu API