POST /api/opentable/restaurants
Price: 20 credits
Get an OpenTable restaurant by its id: address, coordinates, contacts, cuisines, price band, hours, ratings, the full structured menu with sections, items and prices, private dining, experiences and the newest reviews
Fetch one OpenTable restaurant by the numeric id that search and autocomplete return. menus holds the restaurant's structured menu; when it is empty, menu_url may link to a menu hosted elsewhere. review_count counts the text reviews that opentable/restaurants/reviews returns; rating_count is the number of ratings behind the averages, all-time or recent as rating_basis says.
access-token string requiredtimeout integer — Max scrapping execution timeout (in seconds) (default: 300; min: 20; max: 1500)restaurant_id integer required — OpenTable restaurant id (examples: 2, 1029757; min: 1)@type string (default: "OpentableRestaurantProfile")id integer requiredurl string requiredalias string nullablename string requiredlisting_type string nullabledescription string nullableprimary_cuisine string nullablecuisines array (default: [])price_band integer nullableprice_band_name string nullablecurrency string nullableaddress object nullable@type string (default: "OpentableAddress")line1 string nullableline2 string nullablecity string nullablestate string nullablepost_code string nullablecountry string nullablecountry_code string nullablecross_street string nullablelatitude number nullablelongitude number nullableneighborhood string nullableneighborhood_id integer nullablemetro string nullablemetro_id integer nullablemacro_id integer nullabletime_zone string nullablephone string nullableemail string nullablewebsite string nullablefacebook_url string nullableorder_online_url string nullablegift_card_url string nullablehours string nullabledining_style string nullabledress_code string nullableexecutive_chef string nullableentertainment string nullablecatering string nullableparking string nullableparking_details string nullablepublic_transit string nullablepayment_options array (default: [])amenities array (default: [])is_permanently_closed boolean nullablehas_bar_seating boolean nullablehas_counter_seating boolean nullablehas_high_top_seating boolean nullablehas_outdoor_seating boolean nullablehas_takeout boolean nullablehas_delivery boolean nullablehas_waitlist boolean nullablereservation_max_party_size integer nullablemax_advance_days integer nullablerecent_booking_count integer nullableimage string nullablephotos array (default: [])@type string (default: "OpentablePhoto")id string requiredimage string requiredcaption string nullablecategory string nullablesource string nullablecreated_at integer nullablewidth integer nullableheight integer nullablephoto_count integer nullablerating object nullable@type string (default: "OpentableRatings")overall number nullablefood number nullableservice number nullableambience number nullablevalue number nullablenoise number nullablecount integer nullablefood_count integer nullableservice_count integer nullableambience_count integer nullablevalue_count integer nullabledistribution array (default: [])@type string (default: "OpentableRatingDistribution")stars integer requiredcount integer requiredrating_basis string nullablerating_count integer nullablereview_count integer nullablereview_summary string nullablereview_tags array (default: [])external_ratings array (default: [])@type string (default: "OpentableExternalRating")source string requiredrating number nullablecount integer nullableawards array (default: [])@type string (default: "OpentableAward")name string requiredyear integer nullablerating string nullablelocation string nullablepopular_dishes array (default: [])@type string (default: "OpentablePopularDish")id string requiredname string nullabledescription string nullablereview_count integer nullableimage string nullablemenu_url string nullablemenus array (default: [])@type string (default: "OpentableMenu")description string nullablecurrency string nullableprovider string nullableprovider_image string nullableupdated_at integer nullablesections array (default: [])@type string (default: "OpentableMenuSection")description string nullablemenu_items array (default: [])delivery_partners array (default: [])@type string (default: "OpentableDeliveryPartner")id integer requiredname string nullablemenu_url string nullableis_active boolean nullabledining_areas array (default: [])@type string (default: "OpentableDiningArea")id integer requiredname string nullabledescription string nullabletag string nullableis_active boolean nullableprivate_dining object nullable@type string (default: "OpentablePrivateDining")has_private_dining boolean nullablehas_enhanced_private_dining boolean nullabledescription string nullablecontact string nullablephone string nullablelargest_capacity integer nullableurl string nullablerooms array (default: [])@type string (default: "OpentablePrivateRoom")id string requiredname string nullabledescription string nullableseated_capacity integer nullablestanding_capacity integer nullableminimum_capacity integer nullableenvironment string nullableprivacy string nullableimage string nullableexperiences array (default: [])@type string (default: "OpentableExperience")id integer requiredname string nullabledescription string nullableexperience_type string nullableis_bookable boolean nullableis_sold_out boolean nullablestart_date string nullableend_date string nullablemin_party_size integer nullablemax_party_size integer nullableimage string nullablefaqs array (default: [])@type string (default: "OpentableFaq")question string requiredanswer string nullablepress array (default: [])@type string (default: "OpentableArticle")source string nullablesummary string nullableurl string nullablepublished_at integer nullableeditorial_lists array (default: [])@type string (default: "OpentableEditorialList")id string requiredname string nullabledescription string nullableurl string nullablereviews array (default: [])@type string (default: "OpentableReview")id string requiredrestaurant_id integer requiredtext string nullablerating_overall integer nullablerating_food integer nullablerating_service integer nullablerating_ambience integer nullablerating_value integer nullablenoise_level string nullablesubmitted_at integer nullabledined_at integer nullablereview_type string nullableis_from_previous_concept boolean nullablehelpful_count integer nullableunhelpful_count integer nullablehelpfulness_score number nullablereviewer object nullable@type string (default: "OpentableReviewAuthor")nickname string nullableinitials string nullablemetro string nullablemetro_id integer nullablereview_count integer nullableis_vip boolean nullableimage string nullablephotos array (default: [])@type string (default: "OpentableReviewPhoto")id string requiredimage string requiredcaption string nullablerestaurant_reply object nullable@type string (default: "OpentableRestaurantReply")text string requiredreplied_at integer nullable422 — The request body did not validate Check the fields against this schema. A URN with the wrong prefix is the most common cause.408 — The request ran past its time limit Raise `timeout` in the request body, up to the maximum this endpoint documents. Lowering `count` or turning off the `with_*` flags also helps, because less work finishes sooner.412 — No OpenTable restaurant has this id. Retrying will not help: either the entity does not exist, or the input points at a different one.429 — Too many requests: a rate limit or a usage window is exhausted When the response carries an X-Retry-After header, wait that many seconds and retry: the same number is in the body as `detail.retry_after`, and the limit clears once that window passes. The message in the body names the limit that was hit.500 — Something broke on our side Retrying will not help. If it keeps happening, send us the X-Request-ID from the response headers.529 — Rate limit reached, or the endpoint is overloaded Wait at least 30 seconds, then retry.X-Error — Error message text (present only on error)X-Request-ID — Unique request identifierX-Execution-Time — Execution time in secondsX-Result-Count — How many records the body carries. 0 means an empty result, which is a normal answer and not by itself an error. A non-zero count can come back together with X-Error when the failure happened partway through — read this header and X-Error independently.X-Total-Available-Results — How many records exist for this query, when the endpoint can say. On a `dry_run` request this is the answer and the body is empty. It saturates: the endpoint's documented maximum means 'at least that many', any smaller number is exact.X-Warning — Present when the request body carried keys this endpoint does not document. They were ignored, so any filter you meant to apply through them did not apply. Check the spelling against this schema and retry.X-Retry-After — Seconds to wait before retrying. Present only on 429.