{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"c52e3a3c-77cb-404d-a6c0-9cae60079531","name":"OpenTable API Documentation","description":"OpenTable's API ecosystem is designed to empower restaurants and their partners to extend and enhance the core functionality of OpenTable. By providing robust tools for booking management, real-time guest and reservation data, our APIs are at the heart of delivering exceptional dining experiences. We offer a suite of capabilities that allow developers to innovate, customize, and create solutions that complement our platform. Whether you’re looking to streamline operations or enhance customer engagement, OpenTable APIs are here to help.\n\nWe value our partnerships with developers and restaurant operators and are committed to fostering successful collaborations. For partnership inquiries, please fill out our application form.\n\nFor information about API availability, outages, maintenance, and other service-related incidents, please subscribe to updates at **status.opentable.com**. This is the best way to stay informed about operational events that may impact our APIs.\n\n# Platform Policy\n\n**Permitted Use of APIs**\n\nYou may use the OpenTable application programming interface (“API”) and any data provided through an API only in accordance with your applicable agreement with OpenTable (“Terms”), this Platform Policy and OpenTable’s applicable API documentation and policies. In this Platform Policy, “you” means the entity which agreed to the Terms with OpenTable. In event of any conflict between this Platform Policy and the Terms, this Platform Policy will control as relates to the API. Otherwise, the Terms continue to apply to the API and any activity under this Platform Policy.\n\nYou will only access (or attempt to access) an API by the means described in the documentation for that API. If OpenTable assigns you credentials (e.g. client IDs), you must use them only with the applicable APIs. You may not share your credentials with third-parties or service providers without OpenTable’s consent (and if such parties require access you must request individual credentials for them). We may also require rotation of credentials, and it is the partners obligation to update accordingly. Your API usage rights are limited, non-exclusive, non-sublicensable and non-transferable.\n\nOpenTable may set and enforce limits on your use of the APIs (e.g. limiting the number of API requests that you may make or the number of users you may serve), in its sole discretion. You agree to, and will not attempt to circumvent, such limitations documented with each API. If you would like to use any API beyond these limits, you must obtain OpenTable’s express written consent (and OpenTable may decline such request or condition acceptance on your agreement to additional terms and/or charges for that use). In any event, Client may not use the OpenTable APIs in any way which might, in OpenTable’s sole discretion, overburden, impair or disrupt the OpenTable APIs or OpenTable Network.\n\nYou agree not to (and not to authorize any third party): 1. Use the APIs other than as permitted; 2. Modify or create any derivative works of the APIs; 3. Distribute, sell or sublicense the APIs or use them on behalf of third parties (unless expressly permitted in the Terms); 4. Introduce any viruses, worms, Trojan horses, or other harmful code to OpenTable via the APIs; 5. Attempt to interfere with the proper working of the APIs or OpenTable products, services or systems or compromise their integrity or security; 6. Scrape any OpenTable website or system for data, or otherwise seek to access data or OpenTable materials through means not approved by OpenTable in writing; or 7. Use the APIs in a manner or for a purpose that violates laws or third-party rights; 8. Access the APIs for competitive analysis or disseminate performance information (including uptime, response time and/or benchmarks) relating to the APIs or OpenTable products, services or systems.\n\n**Data and Security**\n\nYou may use any data made available through the APIs solely as permitted in the Terms or otherwise expressly permitted in writing by OpenTable. OpenTable does not grant you any other rights to data.\n\nWithout limiting any security requirements in the Terms, you agree to provide the level of protection to any such data as required under applicable law and to employ, at your own cost, appropriate physical, technical and organizational security measures designed to protect such data from unauthorized access, destruction, use, modification or disclosure.\n\n**Changes, Suspension and Termination**\n\nFrom time to time in its discretion, with or without notice, OpenTable may change the APIs (including any API documentation) or related OpenTable products or services, discontinue any or all data available through the APIs or to specific recipients, or place limits on access to the APIs. Future versions of the APIs may not be compatible with systems used with previous versions. OpenTable typically makes these changes as part of its overall API program and is unable to provide individual notices of the changes.\n\nPlease design the APIs backwards compatible. OpenTable periodically updates its APIs to add or remove attributes to the payloads.\n\nExcept as set forth in the Terms, OpenTable may suspend or terminate your access to the APIs (in whole or in part) in its discretion, for any or no reason and with or without notice.\n\nOpenTable will have no liability resulting from taking any actions described in this Section.\n\n**No Support or Maintenance**\n\nYou understand that you are responsible for all development and costs associated with integrating with the APIs.\n\nOpenTable has no obligation to provide any maintenance or support for the APIs or to fix any errors or defects. If OpenTable in its discretion provides any updates, modifications, enhancements, and other new releases to the APIs, such materials will be deemed included in the “APIs” under this Platform Policy unless OpenTable specifies otherwise.\n\n**OpenTable Rights**\n\nOpenTable owns all rights, title and interest (including intellectual property rights) in and to the API. OpenTable reserves all rights not expressly granted.\n\n**Disclaimer**\n\nEXCEPT AS EXPRESSLY SET OUT IN THE TERMS, OPENTABLE MAKES NO SPECIFIC PROMISES ABOUT THE APIS. FOR EXAMPLE, OPENTABLE DOES NOT MAKE ANY COMMITMENTS ABOUT THE DATA OR CONTENT ACCESSED THROUGH THE APIS, THE SPECIFIC FUNCTIONS OF THE APIS, OR THEIR RELIABILITY, AVAILABILITY, SECURITY OR ABILITY TO MEET YOUR NEEDS. OPENTABLE PROVIDES THE APIS “AS IS” AND “WITH ALL FAULTS”. EXCEPT AS EXPRESSLY PROVIDED FOR IN THE TERMS, TO THE EXTENT PERMITTED BY LAW, OPENTABLE AND ITS THIRD PARTY LICENSORS DISCLAIMS ALL WARRANTIES, GUARANTEES, CONDITIONS, REPRESENTATIONS, AND UNDERTAKINGS, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING IMPLIED WARRANTIES OF MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR ANY PURPOSE.\n\nLast Updated: Dec 20 2024\n\n## Terms of Use and Privacy Policy\n\n[Terms of Use](https://www.opentable.com/legal/terms-and-conditions)\n\n[Privacy Policy](https://www.opentable.com/legal/privacy-policy)\n\n## Brand Assets\n\nAffiliates must comply with the OpenTable brand guidelines when linking to the OpenTable site.\n\nOpenTable assets including the OpenTable logo, Reserve Buttons, and Brand Story can be found here: [https://www.opentable.design/](https://www.opentable.design/)\n\n# Platform Basics\n\nOpenTable uses OAuth 2.0 as the primary authorization mechanism. This means that an access token must be obtained and submitted with all requests. See [Authorization](https://dev.opentable.com/partner-portal/documentation#authorization) section for more details. OpenTable’s Partner APIs can only be accessed via **HTTPS**. This applies to all environments.\n\n## Status Page\n\nWe require all partners to subscribe to the OpenTable API Status Dashboard to be notified of upcoming maintenance or outages.\n\n[https://status-api.opentable.com/](https://status-api.opentable.com/)  \n[https://status-api.opentable.com/subscribe](https://status-api.opentable.com/subscribe)\n\n### Content Negotiation\n\nData is sent and received in JSON format unless otherwise specified in this documentation. Clients should specify **application/json** in the **Accept** header for all requests to the server.\n\n### Compression\n\nOpenTable’s Partner Network APIs support LZ4 encoding. Client applications should specify **lz4** via the **Accept-Encoding** HTTP header.\n\nThe partner system should be able to send and respond with lz4 compressed content to improve performance and should be implemented by your partner server implementation and client implementation.\n\n### Unique Request Ids\n\nAll POST, PUT, and PATCH HTTP requests should contain a unique X-Request-Id header which is used to ensure idempotent message processing in case of a retry.\n\n## SSL-TLS Support\n\nOpenTable uses Akamai as a CDN partner. Akamai’s SSL-TLS profile supports strong ciphers only. We will be keeping our ciphers current and you may be asked to update these as required.\n\nOpenTable **supports TLS 1.3** for all API communication. Ensure your systems are upgraded to maintain secure connectivity.\n\n# **Getting Started**\n\nTo obtain access to OpenTable APIs, it is requisite to register and secure approval as an integration partner. This can be requested via [https://www.opentable.com/restaurant-solutions/api-partners/become-a-partner/.](https://www.opentable.com/restaurant-solutions/api-partners/become-a-partner/.)\n\nUpon submission, your application will undergo a comprehensive review by our partnerships team, and you will be notified upon the completion of this review process. Once approved, you will be granted access to a Sandbox environment to try out the integration.\n\n# Environments\n\nOpenTable has two primary integration environments; Sandbox (pre-production) and Production. Partners should test their integrations in Sandbox (pre-production) where the changes are transient and do not affect live production customers or restaurants. Once partners have completed their integrations they may deploy them into the production environment.\n\n## **Accessing APIs in Sandbox (Pre-Production) Environment**\n\nAll approved API partners will be granted access to the OpenTable Sandbox environment, which can be utilized for the discovery and testing of API integrations. The following APIs are currently available in the Sandbox Environment for approved partners:\n\n- [Authorization](https://docs.opentable.com/#9205636d-5325-4b1c-adfa-5a7600de6fa8)\n    \n- [Directory API](https://docs.opentable.com/#c43e6c99-e40c-415a-b38b-3527753b7ac4)\n    \n- [Sync API (All Tiers)](https://docs.opentable.com/#5d2e3a06-fca9-4d01-a17b-e0aa57e4bdf5)\n    \n\nFurther details regarding the Restaurant IDs pertinent to accessing these APIs within the Sandbox Environment will be provided in the partner welcome email.\n\nThe documentation also contains curated postman collections to implement common business use cases. Developers are advised to leverage the same in order truly explore the capabilities of OpenTable APIs\n\n**Note:** The sandbox environment is specifically designed to facilitate development and testing experiences with OpenTable APIs. It is imperative that these APIs are not employed for any live integrations, as the responses are curated for a sandbox experience and do not impact actual restaurant operations or diner experiences.\n\n## Accessing APIs in Production Environment\n\nAccess to our APIs is subject to approval and requires the execution of a formal agreement outlining the terms of use. Before gaining access, all potential partners must undergo a review process to ensure compatibility with our platform and compliance with our business policies.\n\nNot all APIs are available for every type of partnership. Eligibility for specific APIs is determined based on the nature of the partnership, use case, and technical feasibility. Additionally, the cost of access may vary depending on the API or the selected API tier. Pricing and availability will be communicated during the approval and contracting process.\n\nThis page is for informational purposes only and does not constitute an offer of access to our APIs. Access to production data will only be granted after the agreement is signed and all necessary approvals are obtained.","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"38767429","team":6490918,"collectionId":"c52e3a3c-77cb-404d-a6c0-9cae60079531","publishedId":"2sAXxTcWRy","public":true,"publicUrl":"https://docs.opentable.com","privateUrl":"https://go.postman.co/documentation/38767429-c52e3a3c-77cb-404d-a6c0-9cae60079531","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"DC143C"},"documentationLayout":"classic-single-column","customisation":{"metaTags":[{"name":"description","value":""},{"name":"title","value":""}],"appearance":{"default":"light","themes":[{"name":"dark","logo":"https://content.pstmn.io/564211df-61ef-4211-911e-ad17525ae10f/YjNRdFpHRnlheTV3Ym1jPS5wbmc=","colors":{"top-bar":"212121","right-sidebar":"303030","highlight":"DC143C"}},{"name":"light","logo":"https://content.pstmn.io/5f5c420d-b526-42ed-9f9d-d1cb5a85cdef/bmV3X29wZW50YWJsZS5wbmc=","colors":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"DC143C"}}]}},"version":"8.10.1","publishDate":"2025-01-02T14:44:11.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{"title":"","description":""},"logos":{"logoLight":"https://content.pstmn.io/5f5c420d-b526-42ed-9f9d-d1cb5a85cdef/bmV3X29wZW50YWJsZS5wbmc=","logoDark":"https://content.pstmn.io/564211df-61ef-4211-911e-ad17525ae10f/YjNRdFpHRnlheTV3Ym1jPS5wbmc="}},"statusCode":200},"environments":[],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/e13519cbb4a8725830f6a44db7575f3803220f70d05b361cea1580ceccc6ae13","favicon":"https://opentable.com/favicon.ico"},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"}],"canonicalUrl":"https://docs.opentable.com/view/metadata/2sAXxTcWRy"}