Discover/TheFork API
live

TheFork APIthefork.com

Search TheFork restaurants, retrieve full details, and check real-time table availability by date and party size via 3 structured JSON endpoints.

This API takes change requests — .
Endpoint health
verified 5h ago
search_restaurants
get_restaurant
check_availability
2/3 passing latest checkself-healing
Endpoints
3
Updated
5h ago

What is the TheFork API?

The TheFork API gives developers access to 3 endpoints covering restaurant search, detailed profiles, and table availability across TheFork's European and global restaurant network. search_restaurants returns a list of matching venues with IDs and booking URLs, get_restaurant surfaces cuisine type, rating, average price, and photos for a single restaurant, and check_availability returns open time slots grouped by meal service for a chosen date and party size.

Try it
City name to bias and filter results (e.g. Paris, London, Rome). When omitted, results default to Paris.
Restaurant name or partial name to search for.
api.parse.bot/scraper/68f074f6-c335-4986-b0e0-d449190fa450/<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/68f074f6-c335-4986-b0e0-d449190fa450/search_restaurants?city=Paris&name=Bistro' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace thefork-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: TheFork SDK — bounded, re-runnable; every call capped."""
from parse_apis.thefork_com_api import TheFork, RestaurantNotFound

client = TheFork()

# Search restaurants by name in Paris
for summary in client.restaurant_summaries.search(name="Bistro", city="Paris", limit=3):
    print(summary.name, summary.city, summary.zipcode)

# Drill down: get full details for the first result
hit = client.restaurant_summaries.search(name="Le Jules Verne", city="Paris", limit=1).first()
if hit:
    try:
        full = hit.details()
        print(full.name, full.cuisine, full.rating, full.booking_url)
    except RestaurantNotFound as e:
        print(f"not found: {e.restaurant_id}")

# Check availability: time slots for a future date
if hit:
    for slot in hit.details().availability(date="2026-07-20", party_size=2, limit=3):
        print(slot.time, slot.service, slot.offer)

print("exercised: restaurant_summaries.search / details / availability")
All endpoints · 3 totalmissing one? ·

Search restaurants by name on TheFork. Results are biased toward the specified city when provided. Returns restaurant summaries including booking page URLs. Each result carries a numeric restaurant ID usable with get_restaurant and check_availability.

Input
ParamTypeDescription
citystringCity name to bias and filter results (e.g. Paris, London, Rome). When omitted, results default to Paris.
namerequiredstringRestaurant name or partial name to search for.
Response
{
  "type": "object",
  "fields": {
    "restaurants": "array of restaurant summaries with id, name, city, country, zipcode, thumbnail_url, and booking_url"
  },
  "sample": {
    "restaurants": [
      {
        "id": "35738",
        "city": "Paris",
        "name": "Le V - Hôtel Vernet",
        "country": "France",
        "zipcode": "75008",
        "booking_url": "https://www.thefork.com/restaurant/le-v---hôtel-vernet-r35738",
        "thumbnail_url": "https://cdn.thefork.com/tf-lab/image/upload/f_auto,q_auto,w_184,h_184,c_fill/restaurant/b744d3ab-04a6-4c31-b288-63069a6c67fb/50d8abdd-ef5b-42d2-a533-4fc1b9cf6fa5.jpg"
      }
    ]
  }
}

About the TheFork API

Restaurant Search and Identification

search_restaurants accepts a required name parameter and an optional city to bias results geographically. Each result in the restaurants array carries a numeric id that flows directly into the other two endpoints, plus thumbnail_url and booking_url for linking users to the TheFork booking page. When city is omitted, results default to Paris.

Restaurant Detail

get_restaurant takes a single restaurant_id and returns a full profile: name, cuisine, address (structured as street, zipcode, city), rating out of 10, avg_price with amount and currency, a photos array of image URLs, slug, uuid, and booking_url. The avg_price field can be null when the restaurant has not published pricing on TheFork.

Table Availability

check_availability checks open slots for a given restaurant_id, date (ISO format YYYY-MM-DD), and optional party_size (1–20 guests). The time_slots array groups results by service value — LUNCH or DINER — and each slot includes time, date_time, yums_available (TheFork's loyalty points indicator), and an offer field that surfaces any active discount. The endpoint does not place or hold a reservation; it is read-only availability data.

Reliability & maintenanceVerified

The TheFork API is a managed, monitored endpoint for thefork.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when thefork.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 thefork.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
5h ago
Latest check
2/3 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 tool filtered by city and cuisine using search_restaurants and get_restaurant fields.
  • Display real-time lunch and dinner availability calendars for a given restaurant using check_availability time_slots.
  • Surface active discount offers on specific time slots to help users find promotional reservation windows.
  • Aggregate TheFork ratings and average price data across multiple restaurants for neighborhood-level dining comparisons.
  • Generate deep-linking booking flows using the booking_url returned by all three endpoints.
  • Power a concierge app that checks party-size-specific table availability across multiple restaurants on a target date.
  • Monitor yums_available flags across time slots to identify loyalty-eligible reservation windows.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 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 TheFork have an official public developer API?+
TheFork does not publish a public developer API for third-party access to its restaurant and reservation data. This Parse API provides structured access to that data.
What does check_availability actually return — can it book a table?+
check_availability is read-only. It returns an array of available time_slots for a specific restaurant_id, date, and party_size, with each slot showing the service period (LUNCH or DINER), the exact time, any active discount offer, and whether loyalty points (yums_available) apply. It does not place, hold, or confirm a reservation.
Does search_restaurants support filtering by cuisine, price range, or rating?+
Currently the endpoint filters by name and optionally biases by city. Filtering by cuisine type, average price, or rating is not supported on this endpoint. You can fork the API on Parse and revise it to add those filter parameters.
Is menu data (dishes, descriptions, allergens) available through this API?+
Not currently. The API covers restaurant-level fields — cuisine type, average price, rating, address, and photos — but not individual menu items, dish descriptions, or allergen information. You can fork the API on Parse and revise it to add a menu endpoint if that data is available on the source restaurant page.
How fresh is the availability data returned by check_availability?+
The time_slots returned reflect the reservation state on TheFork at the time of the request. Slot availability can change between calls as other users make or cancel bookings, so results should be treated as a point-in-time snapshot rather than a guaranteed hold.
Page content last updated . Spec covers 3 endpoints from thefork.com.
Related APIs in Food DiningSee all →
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.
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.
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.
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.
resy.com, opentable.com API
Search and compare restaurants across Resy and OpenTable by cuisine, location, and price range, then sort results by price or ratings to find the best dining option. Retrieve comprehensive restaurant details including addresses, contact information, descriptions, and customer ratings 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.
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.
tock.com API
Search for restaurants on Tock and discover detailed information including their accolades, FAQs, menus, and contact details all in one place. Find the perfect dining experience with comprehensive restaurant profiles and booking options.