Tock APItock.com ↗
Access Tock restaurant data via 6 endpoints: search by city and cuisine, get accolades and FAQs, and check real-time reservation availability by date and party size.
What is the Tock API?
The Tock API exposes 6 endpoints covering restaurant discovery, detailed venue profiles, and reservation availability on exploretock.com. The search_restaurants endpoint lets you query by city and keyword to retrieve slugs, names, and images, while get_restaurant_details returns structured data including Michelin stars, James Beard awards, address, contact email, and per-restaurant FAQs. Availability can be checked for a single venue or up to many venues in one batch_availability call.
curl -X GET 'https://api.parse.bot/scraper/56407e7b-33ee-493f-b58a-62046858269c/search_restaurants?city=chicago&limit=5' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for restaurants on Tock by query keyword and city. Returns restaurant listings from the city browse page. Results include name, slug, URL, and image. The query filters by keyword match against the city's restaurant carousel; an empty query returns all featured restaurants. Pagination is not supported — the limit parameter caps the returned array.
| Param | Type | Description |
|---|---|---|
| city | string | City slug for browsing restaurants (e.g. 'chicago', 'new-york', 'san-francisco') |
| limit | integer | Maximum number of restaurant results to return |
| query | string | Search keyword to filter restaurants (e.g. 'italian', 'sushi', 'steakhouse'). Empty string returns all featured restaurants. |
{
"type": "object",
"fields": {
"city": "string, the city slug searched",
"query": "string, the search keyword used",
"restaurants": "array of restaurant summary objects with slug, name, url, and image_url",
"total_found": "integer, number of restaurants returned"
}
}About the Tock API
Restaurant Search and Venue Resolution
search_restaurants accepts a city slug (e.g. chicago, new-york) and an optional query keyword such as sushi or steakhouse. It returns an array of restaurant summaries — each with slug, name, url, and image_url — plus a total_found count. If you have a venue name but not a slug, resolve_venue runs a typeahead lookup against the venue name and an optional city bias, returning candidates with slug, neighborhood, city, state, and country so you can confirm a fuzzy match without a follow-up call.
Venue Details and Accolades
get_restaurant_details takes a slug and returns a full venue profile: name, cuisine, address (broken into street, city, state, postal_code, country), email, website, logo, and an accolades array. Each accolade object carries type, achievement, rating, year, and icon, covering recognition such as Michelin stars, James Beard awards, and Tock 10 designations. A faqs array exposes the venue's own question-and-answer content as structured objects.
Availability Endpoints
Three endpoints handle reservation slot data. get_availability accepts a slug, date (ISO YYYY-MM-DD), and optional party_size; it returns full slot objects including experience_name, experience_type, party_size_min, party_size_max, and available_ticket counts. get_availability_times returns a leaner response — just sorted bookable_times as HH:MM strings — useful when you only need to display open times. batch_availability accepts a comma-separated slugs string and returns per-venue results with bookable_times and an error field, making it practical for comparing availability across multiple venues in a single request.
The Tock API is a managed, monitored endpoint for tock.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when tock.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 tock.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.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a restaurant discovery app filtered by city and cuisine type using
search_restaurants - Display Michelin star and James Beard award badges on venue profile pages from the
accoladesarray inget_restaurant_details - Check open reservation slots across several competing fine-dining venues on a given date using
batch_availability - Resolve a user-typed restaurant name to a canonical Tock slug with
resolve_venuebefore querying availability - Surface venue FAQs and contact email on a dining concierge platform using structured fields from
get_restaurant_details - Alert users when a specific date opens up for a hard-to-book restaurant by polling
get_availability_times - Compare bookable time slots for a party of four across multiple restaurants in a single API call with
batch_availability
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Tock have an official public developer API?+
What accolade types does `get_restaurant_details` return?+
accolades array includes objects with type, achievement, rating, year, and icon fields. Recognized award types include Michelin stars, James Beard awards, and Tock 10 designations. Not all restaurants carry accolades; the array may be empty for venues without listed recognition.Does the availability data include pricing for each time slot?+
get_availability returns slot objects that include experience_name, experience_type, and available_ticket counts, but per-slot pricing is not currently a dedicated field in the response. The API covers slot timing, experience type, and party size bounds. You can fork it on Parse and revise to add a pricing field if the upstream data exposes it for your target venues.Can I retrieve a restaurant's full menu through this API?+
get_restaurant_details. You can fork it on Parse and revise to add a menu endpoint if that data is accessible for the venues you need.Is availability data limited to specific cities or geographies?+
search_restaurants endpoint is scoped to city slugs supported by Tock's browse pages (e.g. chicago, new-york, san-francisco). get_availability and batch_availability work by slug rather than city, so any venue with a known slug can be queried regardless of location. Coverage depends on which restaurants are listed on exploretock.com.