About the Wix Bookings Reader V2 API

With the Wix Bookings Reader V2 API you can retrieve bookings for a site's services.
The booking object holds information about the customer and the session or schedule they have booked.

For more information about the terminology, use cases and related APIs read introduction to the Wix Bookings V2 API.

You can then use the Wix Bookings V2 APIs to manage the booking life cycle and the Ecommerce APIs (coming soon) to handle the checkout and payment flow.

Before you begin

  • fields and fieldsets aren't supported in the query object.
  • Bookings for courses don't include a sessionId. To filter these bookings by session ID, you must pass sessionId on the root level of the request body, and can't use the filter that's part of the query object.
  • The participantNotification field holds only information about the last message sent to the customer. It also doesn't include details which type of message has been sent.
Was this helpful?
Yes
No

Supported Filters

Query Extended Bookings runs with these defaults:

  • sorted by id in ASC order
  • cursorPaging.limit is 50

query.fields and query.fieldsets aren't supported for this endpoint.

The following table shows field support for filters for the booking object:

FieldSupported Filters
ideq, ne, in
bookedEntity.item.slot.sessionIdeq, ne, in
bookedEntity.item.slot.serviceIdeq, ne, in
bookedEntity.item.slot.scheduleIdeq, ne, in
bookedEntity.item.slot.resource.ideq, ne, in
bookedEntity.item.slot.location.ideq, ne, in
bookedEntity.item.slot.location.locationTypeeq, ne, in
bookedEntity.item.schedule.scheduleIdeq, ne, in
bookedEntity.item.schedule.serviceIdeq, ne, in
bookedEntity.item.schedule.location.ideq, ne, in
bookedEntity.item.schedule.location.locationTypeeq, ne, in
bookedEntity.tagshasSome, hasAll
contactDetails.contactIdeq, ne, in
statuseq, ne, in
paymentStatuseq, ne, in
selectedPaymentOptioneq, ne, in
createdDateeq, ne, gt, gte, lt, lte, in, nin
externalUserIdeq, ne, in
createdBy.contactIdeq, ne, in
createdBy.id.appIdeq, ne, in
createdBy.id.wixUserIdeq, ne, in
createdBy.id.memberIdeq, ne, in
createdBy.id.anonymousVisitorIdeq, ne, in
startDateeq, ne, gt, gte, lt, lte, in, nin
endDateeq, ne, gt, gte, lt, lte, in, nin
updatedDateeq, ne, gt, gte, lt, lte, in, nin
doubleBookedeq, ne
participantsInfo.type.totalParticipants.valueeq, ne, gt, gte, lt, lte, in, nin
participantsInfo.type.participantsChoices.serviceChoices.choices.optionIdhasSome, hasAll
participantsInfo.type.participantsChoices.serviceChoices.choices.choice.custom.valuehasSome, hasAll

You can only specify a filter only once per query. If a filter is provided more than once, only the first occurrence affects the returned bookings.

When using filters for dates, you must use UTC time.

Bookings belonging to a schedule don't have a sessionId. Therefore you must use the sessionId filter that isn't part of the query object to filter bookings for courses.

To learn about working with Query endpoints, see API Query Language, Sorting and Paging, and Field Projection.

Was this helpful?
Yes
No

Extended Booking Object

Properties
bookingobject
Booking.

allowedActionsobject
Information about which actions the customer can perform for the booking. Available only when passing withBookingAllowedActions as true.

attendanceobject
Information about the attendance. Available only when passing withBookingAttendanceInfo as true.
Was this helpful?
Yes
No

PostQuery Extended Bookings

Developer Preview

This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.

Retrieves a list of bookings, given the provided paging, filtering, and sorting.

Up to 100 bookings can be returned per request.

Query Extended Bookings runs with these defaults, which you can override:

  • createdDate sorted in DESC order
  • cursorPaging.limit is 50

You can retrieve information about which actions the customer can perform for the bookings. To do so, pass withBookingAllowedActions as true.

For field support see supported filters for more information.

You can only specify a filter only once per query. If a filter is provided more than once, only the first occurrence affects the returned bookings.

When using filters for dates, you must use UTC time.

To learn about working with Query endpoints, see API Query Language, Sorting and Paging, and Field Projection.

Permission Scopes

For app development, you must have one of the following permission scopes:
Read Bookings - Including Participants
Read bookings calendar - including participants
Manage Bookings
Read Bookings - Including Participants
Learn more about permission scopes.
Endpoint
POST
https://www.wixapis.com/bookings/bookings-reader/v2/extended-bookings/query

Was this helpful?
Yes
No