Discover/OpenTable API
live

OpenTable APIopentable.com

Search OpenTable restaurants, check real-time reservation availability, resolve locations, and get autocomplete suggestions. Covers US restaurants with ratings, reviews, and pricing.

This API takes change requests — .
Endpoint health
verified 15h ago
autocomplete
restaurant_availability
location_lookup
search_restaurants
4/4 passing latest checkself-healing
Endpoints
5
Updated
11d ago

What is the OpenTable API?

This API exposes 5 endpoints covering OpenTable's US restaurant inventory, returning fields like cuisine, ratings, review counts, photos, pricing bands, and real-time reservation slots. Use search_restaurants to query by keyword, location, date, and party size, or hit restaurant_availability to pull open time slots for one or more venues in a single call.

This call costs2 credits / call— charged only on success
Try it
Date in YYYY-MM-DD format. Defaults to tomorrow.
Page number (1-based)
Search term (e.g., 'Italian', 'sushi', 'steakhouse', 'pizza'). Leave empty to browse all restaurants.
Time in HH:MM format (24h)
Comma-separated price band IDs (1=under $15, 2=$30 and under, 3=$31-50, 4=$50+)
Sort order for results
Latitude of search center
Metro ID (auto-resolved from coordinates if not provided). Use location_lookup to find IDs.
Longitude of search center
Results per page (max 50)
Number of diners
Comma-separated cuisine filter IDs
api.parse.bot/scraper/f37010d4-cf53-464e-8c5a-8b0fb742720e/<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/f37010d4-cf53-464e-8c5a-8b0fb742720e/search_restaurants?date=2026-08-23&page=1&term=Italian&time=19%3A00&query=pizza&sort_by=RATING&latitude=40.7128&location=chicago&metro_id=0&longitude=-74.006&page_size=25&party_size=2' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 5 totalmissing one? ·

Search for restaurants by keyword, location, date/time, party size, and various filters. Returns paginated results with comprehensive restaurant details including name, cuisine, ratings, reviews, photos, address, phone, and features. Paginates via page number. Each restaurant includes a restaurant_id usable with restaurant_availability.

Input
ParamTypeDescription
datestringDate in YYYY-MM-DD format. Defaults to tomorrow.
pageintegerPage number (1-based)
termstringSearch term (e.g., 'Italian', 'sushi', 'steakhouse', 'pizza'). Leave empty to browse all restaurants.
timestringTime in HH:MM format (24h)
pricesstringComma-separated price band IDs (1=under $15, 2=$30 and under, 3=$31-50, 4=$50+)
sort_bystringSort order for results
latitudenumberLatitude of search center
metro_idintegerMetro ID (auto-resolved from coordinates if not provided). Use location_lookup to find IDs.
longitudenumberLongitude of search center
page_sizeintegerResults per page (max 50)
party_sizeintegerNumber of diners
cuisine_idsstringComma-separated cuisine filter IDs
Response
{
  "type": "object",
  "fields": {
    "page": "integer current page number",
    "filters": "object with date, time, party_size, sort_by",
    "location": "object with latitude, longitude, metro_id",
    "page_size": "integer results per page",
    "restaurants": "array of restaurant objects with restaurant_id, name, cuisine, rating, review_count, address, phone, photos, features, etc.",
    "search_term": "string the search term used",
    "total_results": "integer total number of matching restaurants"
  },
  "sample": {
    "data": {
      "page": 1,
      "filters": {
        "date": "2026-06-11",
        "time": "19:00",
        "sort_by": "WEB_CONVERSION",
        "party_size": 2
      },
      "location": {
        "latitude": 40.7128,
        "metro_id": 8,
        "longitude": -74.006
      },
      "page_size": 25,
      "restaurants": [
        {
          "name": "Cecconi's Dumbo",
          "phone": "+1 (555) 012-3456",
          "photos": [
            "https://resizer.otstatic.com/v4/photos/24991179-1?width=640&height=360"
          ],
          "rating": 4.6,
          "address": {
            "city": "Brooklyn",
            "line1": "55 Water St",
            "state": "NY",
            "post_code": "11201"
          },
          "cuisine": "Contemporary Italian",
          "features": {
            "bar": true,
            "counter": false,
            "outdoor": true,
            "max_party_size": 9
          },
          "latitude": 40.7034056,
          "longitude": -73.9923495,
          "price_range": "$30 and under",
          "neighborhood": "DUMBO",
          "review_count": 5980,
          "price_band_id": 2,
          "restaurant_id": 730843
        }
      ],
      "search_term": "Italian",
      "total_results": 440
    },
    "status": "success"
  }
}

About the OpenTable API

Search and Discovery

The search_restaurants endpoint accepts a term (e.g. "sushi" or "steakhouse"), a metro_id, optional latitude/longitude coordinates, date, time, and party_size. Results are paginated via the page parameter and each restaurant object includes restaurant_id, name, cuisine, rating, review_count, address, phone, photos, and a features array. Price filtering uses comma-separated band IDs where 1 = under $15, 2 = $30 and under, 3 = $31–50, and 4 = $50+. total_results tells you how many records matched so you can paginate accordingly.

Location Resolution and Autocomplete

location_lookup converts raw latitude/longitude coordinates into OpenTable's internal geography hierarchy — metro, macro, and neighborhood objects, each carrying a numeric ID and display name. Pass the returned metro_id directly into search_restaurants to scope results. The autocomplete endpoint accepts a term and optional coordinates and returns typed suggestions with type, metro_id, metro_name, macro_name, and neighborhood fields, making it straightforward to build a typeahead search UI that feeds into a subsequent restaurant search.

Availability Checking

restaurant_availability accepts a comma-separated list of restaurant_ids (sourced from search results), a date, time, and party_size, and returns per-restaurant availability_days arrays that include available time slots, no_times_reasons when nothing is open, and slot hashes for booking. This batch design lets you check multiple venues in one request. For name-to-ID resolution plus availability in one step, batch_availability accepts a JSON array of {name, city} pairs and returns each mapped to its resolved restaurant record alongside availability data, reporting total_resolved and total_requested counts.

Reliability & maintenanceVerified

The OpenTable API is a managed, monitored endpoint for opentable.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when opentable.com 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 opentable.com 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
15h ago
Latest check
4/4 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 finder that filters by cuisine, price band, and party size using search_restaurants.
  • Add typeahead restaurant and neighborhood search to a dining app with the autocomplete endpoint.
  • Check real-time reservation slots across a shortlist of venues using restaurant_availability with multiple IDs in one call.
  • Resolve a user's GPS coordinates to an OpenTable metro ID via location_lookup before running a proximity search.
  • Map a list of restaurant names and cities to OpenTable IDs and availability in one pass with batch_availability.
  • Display restaurant ratings, review counts, and photos in a curated dining guide sourced from search_restaurants results.
  • Surface open time slots for a specific date and party size across multiple competing restaurants for a comparison view.
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 OpenTable have an official developer API?+
OpenTable offers a restaurant-facing API for reservation management partners, documented at developer.opentable.com, but it is not publicly available for general consumer-side queries. This Parse API provides access to restaurant search, availability, and location data for US restaurants without needing partner credentials.
What does `batch_availability` return that `restaurant_availability` does not?+
batch_availability handles the name-to-ID resolution step for you. You supply a JSON array of {name, city} pairs and it returns each input mapped to a resolved restaurant_id, the matched restaurant object (name, address, cuisine), and availability slots — all in one response. restaurant_availability requires you to already know the numeric restaurant_ids, which you get from search_restaurants first.
Does the API cover restaurants outside the United States?+
Coverage is currently limited to the US market. The location_lookup and search_restaurants endpoints resolve to OpenTable's US metro hierarchy. You can fork this API on Parse and revise it to target OpenTable's international metros if you need coverage in Canada, the UK, or other regions.
Does the API return menu data or dish-level information?+
Not currently. The API returns restaurant-level fields: cuisine type, pricing band, ratings, review counts, photos, address, phone, and reservation availability. Menu items and dish details are not included in any endpoint's response. You can fork this API on Parse and revise it to add a menu endpoint if that data is needed.
How does pagination work in `search_restaurants`?+
Results come back in pages. The response includes page (current page number, 1-based), page_size (results per page), and total_results (total matching records). Pass page=2, page=3, etc. to walk through all results. total_results divided by page_size gives you the page count.
Page content last updated . Spec covers 5 endpoints from opentable.com.
Related APIs in Food DiningSee all →
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.
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.
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.
resy.com API
Search for restaurants across cities and check real-time availability to find open reservation slots on Resy. Discover trending and top-rated venues with detailed information about dining options, menus, and available time slots across selected dates.
sevenrooms.com API
Search for available restaurant tables across any SevenRooms venue, view venue details and open dates, and complete reservations all in one place. Whether you're planning ahead or booking last-minute, you can check real-time availability and secure your table at thousands of restaurants on the SevenRooms platform.
exploretock.com API
Search for restaurants and dining experiences on Tock, then view detailed venue information, menus, and real-time availability including specific dates, time slots, and prix-fixe pricing to book your reservation. Get comprehensive restaurant details with all offerings to help you find and reserve your perfect dining experience.
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.
app.catchtable.co.kr API
Access data from app.catchtable.co.kr.