Discover/CatchTable API
live

CatchTable APIapp.catchtable.co.kr

Search Korean restaurants on CatchTable, check 14-day reservation availability, and retrieve menus, hours, and pricing via 3 structured endpoints.

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

What is the CatchTable API?

The CatchTable API gives developers access to restaurant data from app.catchtable.co.kr across 3 endpoints. Use search_restaurants to run keyword searches returning ratings, pricing, and a 14-day booking calendar per result, get_restaurant to pull full menu and facility details for a single venue, and get_availability to check which party sizes can be booked on each date within the next two weeks.

Try it
Optional area/region filter tag. Values are site-defined region codes from CatchTable's filter system.
Page number (1-based).
Number of results per page (max 30).
Search keyword — restaurant name, cuisine type, or food name (Korean text, e.g. '스시', '파스타', '강남').
api.parse.bot/scraper/b37c6a63-ffec-4086-91ed-1c90e961da9c/<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 POST 'https://api.parse.bot/scraper/b37c6a63-ffec-4086-91ed-1c90e961da9c/search_restaurants' \
  -H 'X-API-Key: $PARSE_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "page": "1",
  "size": "5",
  "keyword": "스시"
}'
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 app-catchtable-co-kr-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: CatchTable SDK — bounded, re-runnable; every call capped."""
from parse_apis.app_catchtable_co_kr_api import CatchTable, RestaurantNotFound

client = CatchTable()

# Search for sushi restaurants — limit caps total items fetched.
for restaurant in client.restaurant_summaries.search(keyword="스시", limit=3):
    print(restaurant.name, restaurant.area, restaurant.rating)

# Drill-down: take one hit, then navigate to full details via the summary.
hit = client.restaurant_summaries.search(keyword="스시", limit=1).first()
try:
    full = hit.details()
    print(full.name, full.address, full.phone)
except RestaurantNotFound as e:
    print("not found:", e.shop_ref)

# Check availability for that restaurant.
for slot in full.availability.list(limit=3):
    print(slot.date, slot.available_status, slot.available_person_counts)

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

Full-text search for restaurants by name or cuisine keyword. Results include basic info, pricing, ratings, and a 14-day reservation availability calendar per restaurant. Each result carries the restaurant's booking page URL. Results are auto-iterated across pages.

Input
ParamTypeDescription
areastringOptional area/region filter tag. Values are site-defined region codes from CatchTable's filter system.
pageintegerPage number (1-based).
sizeintegerNumber of results per page (max 30).
keywordrequiredstringSearch keyword — restaurant name, cuisine type, or food name (Korean text, e.g. '스시', '파스타', '강남').
Response
{
  "type": "object",
  "fields": {
    "page": "integer",
    "size": "integer",
    "has_more": "boolean",
    "restaurants": "array of restaurant summaries with availability",
    "total_count": "integer"
  },
  "sample": {
    "data": {
      "page": 1,
      "size": 5,
      "has_more": true,
      "restaurants": [
        {
          "area": "부산 마린시티",
          "name": "스시이마",
          "rating": 5,
          "latitude": 35.15934,
          "shop_ref": "gXfFct9_aZJWLaqiB8isdQ",
          "food_kind": "스시오마카세",
          "longitude": 129.1442096,
          "url_alias": "sushiima",
          "booking_url": "https://app.catchtable.co.kr/ct/shop/sushiima",
          "review_count": 504,
          "max_party_size": 8,
          "min_party_size": 1,
          "lunch_price_text": "",
          "operation_status": "BEFORE_OPEN",
          "dinner_price_text": "저녁 21만원",
          "daily_availability": [
            {
              "date": "2026-07-16",
              "available_status": "AVAILABLE",
              "available_person_counts": [
                1,
                2,
                3
              ]
            }
          ],
          "operation_end_time": "21:00",
          "operation_start_time": "18:00"
        }
      ],
      "total_count": 1345
    },
    "status": "success"
  }
}

About the CatchTable API

Search and Discovery

The search_restaurants endpoint accepts a required keyword parameter — restaurant name, cuisine type, or dish name in Korean (e.g. 스시, 파스타) — and an optional area filter using CatchTable's region codes. Results are paginated (up to 30 per page via the size param) and include total_count, has_more, and an array of restaurant summaries. Each summary already embeds a 14-day availability snapshot alongside basic fields like rating, food kind, and a direct booking page URL.

Restaurant Detail

Once you have a shop_ref from search results, get_restaurant returns the full profile: name, name_en, address, latitude, phone, rating, food_kind, area, and an array of menus objects each carrying name, price, and description. This is the right endpoint to power venue detail pages or to build a local menu index.

Availability Checking

get_availability takes the same shop_ref and returns a daily_slots array covering 14 days. Each day carries a status — one of AVAILABLE, CLOSED, DAY_OFF, AFTER_DEADLINE, or PHONE_INQUIRY — plus the party sizes bookable on that date. The response also includes booking_url so you can link users directly to CatchTable's reservation flow. This endpoint is useful for filtering search results to venues that actually have open slots before surfacing them to end users.

Reliability & maintenanceVerified

The CatchTable API is a managed, monitored endpoint for app.catchtable.co.kr — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when app.catchtable.co.kr 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 app.catchtable.co.kr 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
4h ago
Latest check
3/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 app filtered by cuisine keyword and Seoul district using area and keyword params
  • Display real-time 14-day booking calendars on a travel itinerary platform using get_availability
  • Aggregate menu data and pricing across Korean fine-dining venues using the menus array from get_restaurant
  • Alert users when a previously full restaurant opens availability by polling daily_slots statuses
  • Enrich a maps or geo app with restaurant ratings, addresses, and latitude coordinates from get_restaurant
  • Filter search results to only AVAILABLE dates before displaying venues, reducing dead-end reservations for users
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 CatchTable have an official public developer API?+
CatchTable does not publish a public developer API or documented integration portal as of this writing. This Parse API is the structured way to access CatchTable restaurant and availability data programmatically.
What availability statuses does `get_availability` return, and what do they mean?+
daily_slots entries carry one of five statuses: AVAILABLE means the date has open bookable slots; CLOSED means the restaurant is not open that day; DAY_OFF is a designated rest day; AFTER_DEADLINE means the booking cutoff has passed; and PHONE_INQUIRY means reservations for that date must be made by phone rather than online.
Does the API return user reviews or individual review text?+
Not currently. The API exposes aggregate rating values per restaurant but does not return individual review text, review counts, or reviewer profiles. You can fork this API on Parse and revise it to add a reviews endpoint if that data is needed.
Is coverage limited to restaurants in South Korea?+
Yes — CatchTable is a South Korean platform, so all venues, keywords, and area codes are Korea-specific. The keyword parameter expects Korean text for reliable results, and area values correspond to CatchTable's Korean regional filter tags.
Can I retrieve time-slot-level availability (specific reservation times within a day)?+
get_availability returns date-level data — available dates and bookable party sizes per day — but does not break down individual time slots within a day. You can fork this API on Parse and revise it to add a time-slot endpoint for finer-grained scheduling data.
Page content last updated . Spec covers 3 endpoints from app.catchtable.co.kr.
Related APIs in Food DiningSee all →
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.
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.
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.
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, 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.
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.
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.
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.