Resy Scraper - Restaurants & Real-Time Availability avatar

Resy Scraper - Restaurants & Real-Time Availability

Pricing

from $4.49 / 1,000 restaurants

Go to Apify Store
Resy Scraper - Restaurants & Real-Time Availability

Resy Scraper - Restaurants & Real-Time Availability

Extract restaurant data and real-time reservation availability from Resy. Enter a city or paste URLs. Get ratings, cuisine, contact info, images, descriptions, waitlist status, and bookable time slots across 1,900+ cities. Export as JSON, CSV, or Excel.

Pricing

from $4.49 / 1,000 restaurants

Rating

0.0

(0)

Developer

ClearPath

ClearPath

Maintained by Community

Actor stats

0

Bookmarked

98

Total users

13

Monthly active users

2 days ago

Last modified

Share

Resy Scraper | Restaurant Data & Real-Time Availability (2026)

40+ restaurant fields. Phone numbers. Social profiles. Available tables.

From Clearpath, creators of TheFork Restaurant Scraper, TheFork Reviews and Yelp Reviews. Restaurant data and review research from the same team.

Why choose this actor?

Reach restaurants with more than a name and address. Get phone numbers, websites and social profiles, plus cuisine, average spend and restaurant group. Build a prospect list you can qualify and contact.

See available tables alongside each restaurant. Add reservation times and seating types for your chosen date and party size. With availability enabled, results include restaurants with open slots for those guests.

40+ fields for a fuller restaurant profile. Combine contact details with ratings, review counts, awards, photos, descriptions and precise locations. Restaurant details are collected automatically, with published values kept together in one record.

Find restaurant leads

Quick start

Find up to five New York restaurants with tables for two today, including their contact details and social profiles:

{
"city": "New York",
"includeAvailability": true,
"partySize": 2,
"maxItems": 5
}

Omitting date uses today. Set a date to check another day, or turn includeAvailability off for a broader restaurant lead list. Contact details and other fields depend on what each restaurant publishes. Open actor input to change the city or paste restaurant URLs. Export CSV or Excel for prospecting; use JSON to keep nested social links and reservation slots.

Clearpath · Restaurant & Review Tools
 Resy Places
You are here
 Resy Slots
Dates & party sizes
 TheFork Places
Contacts & menus
 TheFork Reviews
Every language
 Yelp Reviews
Photos & replies

Copy to your AI assistant

Copy this block into ChatGPT, Claude, Cursor, or any LLM to start using this actor.

clearpath/resy-api on Apify. Call: ApifyClient("TOKEN").actor("clearpath/resy-api").call(run_input={...}), then client.dataset(run["defaultDatasetId"]).list_items().items for results. Key inputs: city (string), startUrls (array), maxItems (integer). Full actor spec (input schema with all params/enums/defaults, output dataset fields, README): GET https://api.apify.com/v2/acts/clearpath~resy-api/builds/default (Bearer TOKEN) → inputSchema, actorDefinition.storages.dataset, readme. Pricing: pay-per-event, $5.99 per 1,000 restaurants scraped. Get token: https://console.apify.com/account/integrations

Quick Start

Basic — Scrape restaurants in a city

{
"city": "New York"
}

Search by cuisine

{
"city": "Los Angeles",
"cuisine": "Japanese",
"maxItems": 200
}

Get availability for a specific date

{
"city": "Chicago",
"includeAvailability": true,
"date": "2026-03-20",
"partySize": 4,
"maxItems": 50
}

URL input — Scrape specific pages

{
"startUrls": [
"https://resy.com/cities/new-york-ny/carbone",
"https://resy.com/cities/new-york-ny"
]
}

Input Parameters

ParameterTypeDescriptionDefault
startUrlsarrayResy URLs to scrape. Supports city and restaurant pages.—
citystringCity name, code, or URL slug. 1,900+ cities supported.—
querystringSearch by restaurant name, cuisine, or keyword.—
cuisinestringFilter by cuisine type. 15 options including Italian, Japanese, Steakhouse, Sushi, Mexican, etc.—
includeAvailabilitybooleanInclude real-time reservation slots. Requires date and party size.false
datestringReservation date (YYYY-MM-DD). Required with availability.—
partySizeintegerNumber of guests (1-20). Used with availability.2
maxItemsintegerMaximum number of restaurants to return.100

Output

Each restaurant includes 40+ fields: identity, ratings, cuisine, full address, contact, social links, average spend, venue group, awards, images, descriptions, GPS coordinates, cross-platform IDs, and more. With availability enabled, each restaurant also includes all bookable time slots.

Output Example

{
"id": 60029,
"name": "Le Gratin",
"urlSlug": "le-gratin",
"url": "https://resy.com/cities/new-york-ny/le-gratin",
"canonicalUrl": "https://resy.com/cities/new-york-ny/venues/le-gratin",
"type": "French",
"neighborhood": "Lower Manhattan",
"locality": "New York",
"region": "NY",
"country": "United States",
"address": "5 Beekman St",
"postalCode": "10038",
"cuisine": ["French"],
"priceRange": 2,
"averageSpend": "$85",
"averageSpendAmount": 85.0,
"currencyCode": "USD",
"currencySymbol": "$",
"rating": 4.63,
"ratingCount": 6581,
"minPartySize": 1,
"maxPartySize": 6,
"latitude": 40.7116,
"longitude": -74.0068,
"phone": "+12125979020",
"website": "https://www.legratinnyc.com/",
"socialLinks": [
{ "name": "facebook", "value": "https://www.facebook.com/LeGratinNYC/" },
{ "name": "instagram", "value": "legratinnyc" }
],
"images": [
"https://image.resy.com/3/003/2/60029/cc549754aa.../jpg/640x360"
// ... 7 more
],
"description": "Daniel Boulud pays tribute to the hearty, homey cooking of Lyonnais bistros known as bouchons...",
"metaDescription": "Le Gratin is a French restaurant in the Lower Manhattan neighborhood of New York.",
"keywords": ["dining", "reservations", "restaurant", "new york", "french"],
"collections": ["Resy Staff Picks in New York", "Global Dining Access"],
"venueGroup": "Dinex",
"awards": [],
"googlePlaceId": "ChIJj4fN7HBbwokRCB5xca3KF1E",
"foursquareId": "4f3fd11fe4b00e2d50f2b762",
"largePartyMessage": "For parties of 7 or more, contact us at infolegratin@danielboulud.com.",
"waitlistAvailable": 0,
"timeZone": "EST5EDT",
"location": "New York",
"locationCode": "ny",
"scrapedAt": "2026-03-06T11:00:36.770171+00:00"
}

Output Example — With Availability

When includeAvailability is enabled, each restaurant includes all bookable time slots:

{
"id": 60029,
"name": "Le Gratin",
"url": "https://resy.com/cities/new-york-ny/le-gratin",
"address": "5 Beekman St",
"type": "French",
"averageSpend": "$85",
"rating": 4.63,
"phone": "+12125979020",
"website": "https://www.legratinnyc.com/",
"slots": [
{
"startTime": "2026-03-06 11:30:00",
"endTime": "2026-03-06 13:00:00",
"type": "Dining Room",
"configId": 1045113,
"hasAddOns": false,
"shiftDay": "2026-03-06"
}
// ... 26 more slots
],
"slotCount": 27
}

Pricing — Pay Per Event (PPE)

One billable event: restaurant scraped.

TierPer 1,000 restaurants
Regular$5.99
Bronze$5.49
Silver$4.99
Gold$4.49

Free Usage

Free plan includes 5 runs with up to 10 restaurants per run — enough to evaluate the output before committing.

How to Scrape Resy Restaurant Data

  • By URL — Paste restaurant or city pages into startUrls
  • By city — Enter a city name like "New York", "London", or a code like "ny"
  • With filters — Add a cuisine type or keyword search to narrow results
  • Mix freely — Combine URLs and city search in the same run

API Integration

Python

from apify_client import ApifyClient
client = ApifyClient("your_token")
run = client.actor("clearpath/resy-api").call(run_input={
"city": "New York",
"cuisine": "Italian",
"maxItems": 50,
})
for restaurant in client.dataset(run["defaultDatasetId"]).iterate_items():
print(f"{restaurant['name']} — {restaurant['rating']}/5 — {restaurant['phone']}")

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'your_token' });
const run = await client.actor('clearpath/resy-api').call({
city: 'Los Angeles',
includeAvailability: true,
date: '2026-03-20',
partySize: 2,
maxItems: 100,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Found ${items.length} restaurants with availability`);

Advanced Usage

Track availability at specific restaurants

{
"startUrls": [
"https://resy.com/cities/new-york-ny/carbone"
],
"includeAvailability": true,
"date": "2026-03-15",
"partySize": 4
}

Extract all sushi restaurants in a city

{
"city": "New York",
"cuisine": "Sushi",
"maxItems": 500
}

Large city export

{
"city": "London",
"maxItems": 10000
}

Data Export

Results are available in multiple formats:

  • JSON — Nested structures (availability slots, images) fully preserved
  • CSV — Flat fields, arrays serialized
  • Excel — Spreadsheet-ready

Automation

  • Scheduled runs — Daily, weekly, or custom data refreshes
  • Webhooks — Get notified when a run completes
  • API — Integrate into your data pipeline programmatically

FAQ

Q: What data does Resy Scraper extract? A: Full address, phone, website, social links (Facebook, Instagram, Twitter), average spend, ratings, cuisine, GPS coordinates, images, descriptions, venue group, awards, Google Place ID, Foursquare ID, and real-time reservation availability. Over 40 fields per restaurant.

Q: How many restaurants can I get? A: Set maxItems up to 50,000. Most major cities have thousands of restaurants on Resy.

Q: Which cities are supported? A: All 1,900+ cities where Resy operates. Covers major markets in the US, UK, and internationally. Enter any city name, code, or URL slug.

Q: How does availability work? A: Enable includeAvailability, set a date and partySize. Each restaurant will include all bookable time slots with start/end times and room types for that date.

Q: Can I filter by cuisine? A: Yes. Select from 15 cuisine types including Italian, Japanese, Steakhouse, Sushi, Mexican, and more. Combine with query for keyword search.

Q: Is there a free trial? A: Yes. Free plan includes 5 runs with up to 10 restaurants per run. Enough to evaluate the data quality and format before upgrading.

Q: Can I schedule recurring runs? A: Yes. Use Apify's scheduler for daily, weekly, or custom schedules. Combine with availability to monitor hard-to-book restaurants.

Getting Started

1. Try it free

  1. Sign up for Apify — no credit card required
  2. Open Resy Scraper
  3. Enter a city name or paste a Resy URL
  4. Click Start and inspect the results

2. Configure

  1. Input — Paste URLs or enter a city name
  2. Filters — Select a cuisine type or add a search query
  3. Availability — Enable with a date and party size
  4. Limits — Control max restaurants per run

3. Scale

  1. Use the API for programmatic access
  2. Schedule recurring runs for fresh data
  3. Set up webhooks for pipeline automation

Use with AI Assistants (OpenClaw, Claude, etc.)

Connect this actor to AI assistants via Apify's MCP server. Ask your assistant to find restaurants in natural language.

Setup

  1. Go to mcp.apify.com and add clearpath/resy-api to your MCP server
  2. Connect the MCP server to your AI assistant (OpenClaw, Claude Desktop, Cursor, etc.)

OpenClaw example

Add Apify's MCP server to ~/.openclaw/openclaw.json:

{
"provider": {
"mcpServers": {
"apify": {
"command": "npx",
"args": ["-y", "@apify/actors-mcp-server"],
"env": {
"APIFY_TOKEN": "your-apify-token"
}
}
}
}
}

Then message your OpenClaw bot on Telegram, WhatsApp, or Discord:

"Find me Italian restaurants in the West Village with outdoor seating"

"What Japanese restaurants are available in LA this Saturday for 4 people?"

"Show me the highest-rated steakhouses in Chicago"

The assistant calls the Resy Scraper, gets structured results, and responds with restaurant details, ratings, and availability.

This scraper extracts publicly available data from Resy listings. Users are responsible for complying with Resy's terms of service and applicable data protection regulations (GDPR, CCPA). Use extracted data responsibly and in accordance with local laws.

Contact data: Phone numbers are included when publicly listed. Comply with anti-spam regulations when using contact information for outreach.

Support


Complete restaurant intelligence from the world's leading reservation platform.