Discover/Tabelog API
live

Tabelog APItabelog.com

Search Japanese restaurants on Tabelog, retrieve detailed profiles, and check real-time table availability by date and party size via a structured REST API.

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

What is the Tabelog API?

The Tabelog API covers 3 endpoints that let you search restaurants across Japan, retrieve per-restaurant details, and check live reservation availability. The search_restaurants endpoint returns paginated results including ratings, budget ranges, and booking URLs. get_restaurant exposes address, business hours, phone, cuisine categories, and transportation directions. check_availability returns open time slots for a given date and party size without placing a booking.

Try it
Page number for pagination.
Search query matching restaurant name, area, or cuisine type (e.g. 'sushi ginza', 'ramen shinjuku').
api.parse.bot/scraper/b3fd720e-c70e-4772-8966-3f9f24d74a6b/<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/b3fd720e-c70e-4772-8966-3f9f24d74a6b/search_restaurants?page=1&keyword=sushi+ginza' \
  -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 tabelog-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: tabelog SDK — bounded, re-runnable; every call capped."""
from parse_apis.tabelog_com_api import Tabelog, RestaurantNotFound

client = Tabelog()

# Search for sushi restaurants in Ginza
for restaurant in client.restaurant_summaries.search(keyword="sushi ginza", limit=3):
    print(restaurant.name, restaurant.rating, restaurant.booking_url)

# Get details for the first result
summary = client.restaurant_summaries.search(keyword="sushi ginza", limit=1).first()
if summary:
    try:
        detail = summary.details()
        print(detail.name, detail.address, detail.phone, detail.business_hours)
    except RestaurantNotFound as e:
        print(f"not found: {e.restaurant_id}")

    # Check availability for tomorrow, 1 guest
    for slot in detail.check_availability(date="2026-07-17", party_size=1, limit=3):
        print(slot.time, slot.booking_url)

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

Full-text search over tabelog.com restaurants. The search query matches restaurant names, areas, and cuisine types. Returns paginated results of 20 per page, sorted by relevance. Each result includes the restaurant booking page URL.

Input
ParamTypeDescription
pageintegerPage number for pagination.
keywordrequiredstringSearch query matching restaurant name, area, or cuisine type (e.g. 'sushi ginza', 'ramen shinjuku').
Response
{
  "type": "object",
  "fields": {
    "page": "current page number",
    "total": "total number of matching restaurants",
    "restaurants": "array of restaurant summaries with id, name, area_genre, rating, budgets, and booking_url",
    "total_pages": "total number of pages available"
  },
  "sample": {
    "page": 1,
    "total": 229,
    "restaurants": [
      {
        "id": "13277198",
        "name": "GINZA SUSHI BANYA KAI",
        "rating": "3.51",
        "area_genre": "Ginza Itchome Sta. 44m / Sushi",
        "detail_url": "https://tabelog.com/en/tokyo/A1301/A130101/13277198/",
        "booking_url": "https://tabelog.com/en/tokyo/A1301/A130101/13277198/",
        "lunch_budget": "JPY 8,000 - JPY 9,999",
        "dinner_budget": "JPY 8,000 - JPY 9,999"
      }
    ],
    "total_pages": 12
  }
}

About the Tabelog API

Search and Discovery

The search_restaurants endpoint accepts a keyword parameter matching restaurant names, area names, or cuisine types — for example, sushi ginza or ramen shinjuku. Results are paginated at 20 per page and each record includes id, name, area_genre, rating, budgets, and booking_url. Use the page parameter and the total_pages field in the response to walk through all matching results.

Restaurant Detail

Pass any restaurant_id from search results to get_restaurant to retrieve the full profile. The response includes phone, address, categories, business_hours, transportation (walking directions from the nearest station), and the restaurant-level booking_url. The transportation field is useful for itinerary builders where users need station-to-door directions rather than just a map coordinate.

Availability Checking

check_availability accepts a restaurant_id, a date in YYYY-MM-DD format, and an optional party_size (1–99). It returns an available_slots array where each element includes a time and a per-slot booking_url. An empty available_slots array means no open slots match the parameters — not that the restaurant is closed. This endpoint is read-only; it does not hold or create a reservation.

Reliability & maintenanceVerified

The Tabelog API is a managed, monitored endpoint for tabelog.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when tabelog.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 tabelog.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
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 Japan dining itinerary tool that searches by area and cuisine using keyword and shows real-time table slots via check_availability.
  • Aggregate Tabelog rating and budgets data across neighborhoods to map price and quality trends by area.
  • Power a restaurant recommendation chatbot that resolves user queries (e.g. 'izakaya near Shibuya') to structured restaurant profiles with address and business_hours.
  • Notify users when a specific date and party size opens up by polling check_availability for hard-to-book restaurants.
  • Populate a travel app's restaurant section with categories, transportation, and booking_url for each saved destination.
  • Validate business listing data by comparing phone and address fields against an existing restaurant database.
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 Tabelog have an official developer API?+
Tabelog does not publish a public developer API or official API documentation. There is no key-signup portal or published REST reference available to third-party developers.
What does `check_availability` actually return, and can I use it to make a reservation?+
It returns an available_slots array containing each open time slot and a corresponding booking_url for that slot. The endpoint is read-only — it queries availability without placing, holding, or confirming a reservation. To book, a user would follow the returned booking_url directly on Tabelog.
Does the API return menu items or user review text?+
Not currently. The API covers restaurant summaries (ratings, budgets, categories, hours, address) and availability slots, but does not expose individual menu items, dish-level prices, or the text of user reviews. You can fork this API on Parse and revise it to add an endpoint that retrieves that data.
Is coverage limited to restaurants in Japan?+
Yes. Tabelog is a Japan-focused platform, so all restaurants returned by search_restaurants and get_restaurant are located in Japan. The area_genre and transportation fields reflect Japanese address conventions and train station references.
Does `search_restaurants` support filtering by rating, budget, or cuisine without a keyword?+
The keyword parameter is required and functions as a free-text query. Structured filters like minimum rating or budget range are not separate parameters in the current API. You can fork it on Parse and revise to add dedicated filter parameters if your use case requires faceted search.
Page content last updated . Spec covers 3 endpoints from tabelog.com.
Related APIs in Food DiningSee all →
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.
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.
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.
app.catchtable.co.kr API
Access data from app.catchtable.co.kr.
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.
toasttab.com API
Search for restaurants on ToastTab.com by location and keyword. Retrieve restaurant profiles, contact details, hours, and full menus — including item names, prices, descriptions, and customization options.