The Yelp Reservations API exposes functionality for Yelp Reservations search and native booking flows into partner applications. This will allow users to book reservations through Yelp without ever having to leave the 3rd party application.
Please note that access to this API is reserved for Yelp partners. If you'd like to enable Reservations API access on your account, please apply here.
The partner create two separate API Client IDs for the integration: one will be a permanently sandboxed client for testing, the other will be an unrestricted client for production use. All development, debugging, testing, and QA should be done on the sandbox client. Partners should not be creating live reservations while testing.
Inside the sandbox, the search endpoint will always return the same sandboxed business -- no matter which parameters are passed into it. The Openings, Holds, and Reservations endpoints will only work with the assigned sandboxed business. Attempting to make requests to non-sandboxed business while using the sandboxed client will result in an error.
There are three different parties involved in the flow to book reservations: the end user, the partner, and Yelp. To book a reservation, the flow taken by end users is as follows:
- End user will search for a reservation by providing a date, time, and number of people attending. The partner will make this request into the existing Search endpoint.
- Yelp's Search endpoint will return businesses which can accommodate the requested date, time, and number of attendees.
- Using the Business ID obtained from a given search, the partner will make a request to Yelp's reservation Openings endpoint to get a list of all available reservation dates and times for the restaurant.
- The end user will select the date and time they want and the partner will place a hold for the time to Yelp's Holds endpoint. This hold lets the partner make sure that the end user does not lose their requested time while they fill out the reservation information.
- The partner will make a request to the Reservations endpoint, which creates the actual reservation for the end user.
At the moment, the API allows you to find businesses which support Yelp Reservations, get open reservation times, place a hold for a reservation, and place a reservation. You cannot edit reservations or retrieve users' booking histories, but you will be able to remotely retrieve the reservation status and cancel any confirmed reservation bookings.
Updated about 1 year ago