Discover/opentable.ca API
live

opentable.ca APIopentable.ca

Search OpenTable.ca restaurants, get real-time table availability, fetch menus, reviews, and curated top picks across Canadian metro areas. 5 endpoints.

Endpoints
5
Updated
10d ago
Try it
Search term (city, neighborhood, or restaurant name).
Number of people in the party.
Preferred date and time in ISO format (e.g., 2026-05-20T19:00:00). Omitting returns result
api.parse.bot/scraper/f956bcfe-cab2-4cec-a73e-37b56c6835cf/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Use it in your codegrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/f956bcfe-cab2-4cec-a73e-37b56c6835cf/search_restaurants?term=New+York&covers=2&date_time=2026-02-24T19%3A00%3A00' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 5 totalclick to expand

Search for restaurants by location, keyword, date, and party size. Returns paginated restaurant listings with details including name, cuisine, rating, price band, and location.

Input
ParamTypeDescription
termrequiredstringSearch term (city, neighborhood, or restaurant name).
coversintegerNumber of people in the party.
date_timestringPreferred date and time in ISO format (e.g., 2026-05-20T19:00:00). Omitting returns results for the current time.
Response
{
  "type": "object",
  "fields": {
    "meta": "object with page metadata",
    "term": "string echoing the search term",
    "total": "integer total count of matching restaurants",
    "restaurants": "array of restaurant objects with restaurantId, name, primaryCuisine, neighborhood, statistics, priceBand, coordinates, address, photos"
  },
  "sample": {
    "data": {
      "meta": {},
      "term": "Toronto",
      "total": null,
      "restaurants": [
        {
          "name": "Taline",
          "address": {
            "city": "Toronto",
            "line1": "1276 Yonge St",
            "state": "ON"
          },
          "priceBand": {
            "name": "CAN$51 and over"
          },
          "statistics": {
            "reviews": {
              "ratings": {
                "overall": {
                  "rating": 4.7
                }
              },
              "allTimeTextReviewCount": 380
            }
          },
          "neighborhood": {
            "name": "Rosedale / Summerhill"
          },
          "restaurantId": 1295419,
          "primaryCuisine": {
            "name": "Armenian"
          }
        }
      ]
    },
    "status": "success"
  }
}

About the opentable.ca API

The OpenTable Canada API provides 5 endpoints for querying restaurant listings, profiles, and live booking availability across Canadian metro areas. The search_restaurants endpoint returns paginated results with fields like primaryCuisine, priceBand, statistics, and coordinates, while get_restaurant_availability delivers real-time time slots per restaurant ID — down to offset-level availability tokens ready for booking flows.

Search and Discovery

The search_restaurants endpoint accepts a term (city, neighborhood, or restaurant name) alongside optional covers and date_time parameters. It returns a total count and a paginated restaurants array, each entry containing restaurantId, name, primaryCuisine, neighborhood, priceBand, coordinates, and an address object. The restaurantId values returned here feed directly into get_restaurant_availability for slot lookups.

The get_top_restaurants endpoint takes a city string and returns module_lists organized into named categories such as top booked, premium marketplace, and mealtime features — plus metro_info and optional best_restaurants_by_category groupings. This is useful for surfacing editorially curated lists rather than keyword-matched results.

Detailed Profiles and Availability

get_restaurant_details accepts a restaurant slug (e.g., the-capital-grille-chicago) and returns the full restaurantProfile — including gallery photos, reviews, menus, hours of operation, and availability settings — alongside restaurant-specific faqs and a current availability object with an attribution token. This is the most field-dense endpoint and covers data not surfaced in search results.

get_restaurant_availability queries live time slots for one or more restaurants (passed as a comma-separated restaurant_ids string) on a specific date and time, with an optional party_size. The response includes an availabilityDays structure per restaurant containing individual slot offsets and restaurantAvailabilityToken values. get_metro_areas requires no inputs and returns the full list of supported Canadian metros with metroId, restaurantCount, and macros (sub-regions), which is the right starting point for building location pickers or coverage maps.

Common use cases
  • Build a restaurant discovery app filtered by priceBand and primaryCuisine for specific Canadian neighborhoods.
  • Aggregate real-time table availability across multiple restaurant_ids for a given date and party size.
  • Display curated 'top booked' and 'premium' restaurant lists by city using get_top_restaurants module categories.
  • Generate a restaurant detail page with photos, menus, and reviews from the restaurantProfile response.
  • Populate a metro-area selector or coverage map using featuredMetrosListForDomain with restaurantCount and macros.
  • Monitor availability patterns for specific restaurants over time using repeated get_restaurant_availability calls.
  • Surface neighborhood-level restaurant density by combining get_metro_areas sub-regions with search_restaurants results.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000250 req/min

One credit = one API call regardless of which marketplace API you call. 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 previously offered a public API for affiliates, but it was deprecated and is no longer available to new developers. The Parse OpenTable Canada API provides access to the same data available on opentable.ca.
What does `get_restaurant_availability` return and how specific is it?+
It returns an availability array where each entry covers one restaurantId and contains availabilityDays — a structure of booking slots with time offsets and individual restaurantAvailabilityToken values. Tokens are per-slot and represent a point-in-time snapshot of open tables for the requested date, time, and optional party_size.
Does the API cover restaurants outside Canada?+
The API is scoped to opentable.ca and the Canadian metro areas returned by get_metro_areas. US, UK, or other regional OpenTable listings are not included. You can fork this API on Parse and revise it to target a different regional OpenTable domain if you need broader geographic coverage.
Can I retrieve a restaurant's full booking history or past reservation counts?+
Aggregate statistics like ratings and general popularity signals are available in search results, but historical reservation counts or time-series booking data are not exposed by any current endpoint. You can fork this API on Parse and revise it to add an endpoint targeting that data if it becomes accessible.
Are search results paginated, and how do I navigate pages?+
Yes. search_restaurants returns a meta object containing page metadata alongside the total count of matching restaurants. Use the meta fields to determine available pages and pass the appropriate parameters to retrieve subsequent result sets.
Page content last updated . Spec covers 5 endpoints from opentable.ca.
Related APIs in Food DiningSee all →
publix.com API
Access Publix grocery store data including product search, pricing, promotions, weekly ad deals, store locations, and category browsing.
pedidosya.com.ar API
Browse restaurants and menus available in Argentine cities through PedidosYa, search for specific restaurants by name or food category, and retrieve complete menu offerings including items, prices, and available options.
thefork.it API
Search and discover Italian restaurants by cuisine, location, or ratings, then access detailed information like menus, reviews, and availability across major cities in Italy. Find top-rated dining options and compare restaurant details to plan your perfect meal.
bigbasket.com API
Browse and search BigBasket's online grocery catalog. Retrieve product details, pricing, stock availability, category trees, search suggestions, homepage promotions, and delivery coverage — all in one 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.
vivino.com API
Search and discover wines across thousands of options while accessing detailed information like user reviews, pricing, winery profiles, and food pairing recommendations. Explore grape varieties, compare wines side-by-side, and find the perfect bottle based on ratings and availability.
deliveroo.co.uk API
Search for restaurants and retrieve menus from Deliveroo UK. Look up restaurants by keyword and postcode, or fetch full menu details for any Deliveroo restaurant by URL.
sainsburys.co.uk API
Access Sainsbury's grocery catalogue: search products by keyword, browse the full category hierarchy, retrieve detailed product information, and discover trending searches.
OpenTable Canada API – Restaurants & Availability · Parse