Skip to main content
Way provides an API to retrieve a list of Bookings.  The content returned by this API includes a variety of information related to the Booking including:
  • Confirmation Numbers
  • Experience Details including cost
  • Payment Method
  • Purchaser Details
  • Etc.
This API can be used to verify participants, confirm billing totals, verify booking details such as the specific start-time booked, etc. There are a wide variety of different parameters that can be used to extract the specific bookings of interest.

Pagination and Meta data

The Get Bookings call has the potential to return a tremendous amount of data, so this API call does support pagination.  By default, the call will only return 15 items per request.  The request will also provide convenient links to allow for easy navigation among the pages if your design requires that feature. Here is an example of the links section returned by the Get Bookings call:
   "links": {
       "first": "/public/v1/bookings?&limit=15",
       "previous": "",
       "next": "/public/v1/bookings?&page=2&limit=15",
       "last": "/public/v1/bookings?&page=2&limit=15"
   }
The API also returns meta data describing the item and page counts:
   "meta": {
       "totalItems": 21,
       "itemCount": 15,
       "itemsPerPage": 15,
       "totalPages": 2,
       "currentPage": 1
   }

Filter By Date Range

One of the ways to reduce the size of the payload returned is to limit the call scope to a particular date range.  Two of the most commonly used ranges are by transaction or by experience date.  The transaction date range could be used to find a reservation based on the original payment date.  The experience date range could be used to find all the bookings for a particular day or even all the bookings for a particular experience on a specific date.  The two date range parameters are as follows: 
  • transactionDateRange
  • experienceDateRange
In order to specify an experienceDateRange, you would specify the query string below:
?filters[0][name]=experienceDateRange&filters[0][operator]=range&filters[0][value][from]=2025-03-09&filters[0][value][to]=2025-03-10

By Experience Id

Another extremely useful option is to return all the bookings for a specific Experience Id.  When used in conjunction with the experienceDateRange option above, this API can be used to extract a list of bookings for the day that can be used to check in guests for an experience. To filter by Experience Id, you would add the following parameter:
?experienceId=f74183e6-a124-4354-87c0-1f100cdd5142

Sorting

If your use case requires working with a large collection of data, leveraging sorting options can optimize and present the results in the most relevant manner. Sorting Options (sortBy):
  • booking.status
  • booking.purchaser
  • booking.createdAt
  • booking.amount
  • brand.name
  • experience.title
  • event.startDateTime
Sorting Direction (sortBy):
  • ASC
  • DESC
?sortBy=booking.purchaser&sortDir=DESC

By Cart Id

In Way, several experiences can be purchased at the same time.  In this case, each of these bookings would be associated with the same Cart Id.  If your design requires you to show all the bookings associated with a Cart Id, you can easily retrieve those bookings using this API. To retrieve the Bookings by Cart Id, you would use the following parameter:
?cartId=7cbcbac1-5d2d-4ec7-8880-6716af8d035f

By Confirmation Code

If a guest has a confirmation code (either a cart confirmation code or a booking confirmation code), you can easily retrieve their booking using either of these codes. Here are two examples:
?cartConfirmationCode=aKojdafy8
or
?confirmationCode=bje5P8q5Y