@wix/auto_sdk_bookings_bookings 1.0.89 → 1.0.91

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/build/cjs/index.d.ts +597 -580
  2. package/build/cjs/index.js +1025 -934
  3. package/build/cjs/index.js.map +1 -1
  4. package/build/cjs/index.typings.d.ts +2337 -2373
  5. package/build/cjs/index.typings.js +848 -800
  6. package/build/cjs/index.typings.js.map +1 -1
  7. package/build/cjs/meta.d.ts +1382 -1435
  8. package/build/cjs/meta.js +700 -659
  9. package/build/cjs/meta.js.map +1 -1
  10. package/build/es/index.d.mts +597 -580
  11. package/build/es/index.mjs +1023 -934
  12. package/build/es/index.mjs.map +1 -1
  13. package/build/es/index.typings.d.mts +2337 -2373
  14. package/build/es/index.typings.mjs +847 -800
  15. package/build/es/index.typings.mjs.map +1 -1
  16. package/build/es/meta.d.mts +1382 -1435
  17. package/build/es/meta.mjs +699 -659
  18. package/build/es/meta.mjs.map +1 -1
  19. package/build/internal/cjs/index.d.ts +597 -580
  20. package/build/internal/cjs/index.js +1025 -934
  21. package/build/internal/cjs/index.js.map +1 -1
  22. package/build/internal/cjs/index.typings.d.ts +2349 -2385
  23. package/build/internal/cjs/index.typings.js +848 -800
  24. package/build/internal/cjs/index.typings.js.map +1 -1
  25. package/build/internal/cjs/meta.d.ts +1382 -1435
  26. package/build/internal/cjs/meta.js +700 -659
  27. package/build/internal/cjs/meta.js.map +1 -1
  28. package/build/internal/es/index.d.mts +597 -580
  29. package/build/internal/es/index.mjs +1023 -934
  30. package/build/internal/es/index.mjs.map +1 -1
  31. package/build/internal/es/index.typings.d.mts +2349 -2385
  32. package/build/internal/es/index.typings.mjs +847 -800
  33. package/build/internal/es/index.typings.mjs.map +1 -1
  34. package/build/internal/es/meta.d.mts +1382 -1435
  35. package/build/internal/es/meta.mjs +699 -659
  36. package/build/internal/es/meta.mjs.map +1 -1
  37. package/package.json +2 -2
@@ -1,46 +1,7 @@
1
1
  import { HttpClient, NonNullablePaths, EventDefinition, MaybeContext, BuildRESTFunction, BuildEventDefinition } from '@wix/sdk-types';
2
- import { GetAnonymousActionDetailsOptions, GetAnonymousActionDetailsResponse, CancelBookingAnonymouslyOptions, CancelBookingAnonymouslyResponse, V2Slot, RescheduleBookingAnonymouslyOptions, RescheduleBookingAnonymouslyResponse, GetBookingAnonymouslyResponse, ConfirmOrDeclineBookingOptions, ConfirmOrDeclineBookingResponse, ConfirmOrDeclineBookingApplicationErrors, BulkConfirmOrDeclineBookingRequestBookingDetails, BulkConfirmOrDeclineBookingOptions, BulkConfirmOrDeclineBookingResponse, BulkConfirmOrDeclineBookingApplicationErrors, Booking, CreateBookingOptions, CreateBookingResponse, CreateBookingApplicationErrors, CreateBookingInfo, BulkCreateBookingOptions, BulkCreateBookingResponse, BulkCreateBookingApplicationErrors, RescheduleBookingOptions, RescheduleBookingResponse, RescheduleBookingApplicationErrors, ConfirmBookingOptions, ConfirmBookingResponse, ConfirmBookingApplicationErrors, SetBookingSubmissionIdResponse, SetBookingSubmissionIdApplicationErrors, UpdateExtendedFieldsOptions, UpdateExtendedFieldsResponse, UpdateExtendedFieldsApplicationErrors, DeclineBookingOptions, DeclineBookingResponse, DeclineBookingApplicationErrors, CancelBookingOptions, CancelBookingResponse, CancelBookingApplicationErrors, UpdateNumberOfParticipantsOptions, UpdateNumberOfParticipantsResponse, UpdateNumberOfParticipantsApplicationErrors, MarkBookingAsPendingOptions, MarkBookingAsPendingResponse, MarkBookingAsPendingApplicationErrors, CreateMultiServiceBookingOptions, CreateMultiServiceBookingResponse, CreateMultiServiceBookingApplicationErrors, RescheduleBookingInfo, RescheduleMultiServiceBookingOptions, RescheduleMultiServiceBookingResponse, RescheduleMultiServiceBookingApplicationErrors, GetMultiServiceBookingAvailabilityResponse, GetMultiServiceBookingAvailabilityApplicationErrors, CancelMultiServiceBookingOptions, CancelMultiServiceBookingResponse, CancelMultiServiceBookingApplicationErrors, MarkMultiServiceBookingAsPendingOptions, MarkMultiServiceBookingAsPendingResponse, MarkMultiServiceBookingAsPendingApplicationErrors, ConfirmMultiServiceBookingOptions, ConfirmMultiServiceBookingResponse, ConfirmMultiServiceBookingApplicationErrors, DeclineMultiServiceBookingOptions, DeclineMultiServiceBookingResponse, DeclineMultiServiceBookingApplicationErrors, BulkGetMultiServiceBookingAllowedActionsResponse, MultiServiceBooking, AddBookingsToMultiServiceBookingOptions, AddBookingsToMultiServiceBookingResponse, AddBookingsToMultiServiceBookingApplicationErrors, RemoveBookingsFromMultiServiceBookingOptions, RemoveBookingsFromMultiServiceBookingResponse, RemoveBookingsFromMultiServiceBookingApplicationErrors, BookingCanceledEnvelope, BookingConfirmedEnvelope, BookingCreatedEnvelope, BookingDeclinedEnvelope, BookingNumberOfParticipantsUpdatedEnvelope, BookingRescheduledEnvelope, BookingUpdatedEnvelope } from './index.typings.js';
3
- export { ActionEvent, Actor, ActorWithLiterals, AddBookingsToMultiServiceBookingRequest, Address, AddressLocation, AddressStreetOneOf, AllowedActions, AllowedActionsAnonymously, AnonymousBookingUrls, ApplicationError, AvailableResources, BaseEventMetadata, BookedAddOn, BookedEntity, BookedEntityItemOneOf, BookedResource, BookedSchedule, BookedSlot, BookingCanceled, BookingChanged, BookingConfirmed, BookingDeclined, BookingDetails, BookingFormFilled, BookingIdAndRevision, BookingInfo, BookingMarkedAsPending, BookingParticipantsInfoOneOf, BookingPolicySettings, BookingPolicyViolations, BookingRescheduled, BookingRescheduledPreviousParticipantsInfoOneOf, BookingResult, BookingSource, BookingStatus, BookingStatusWithLiterals, BulkActionMetadata, BulkBookingResult, BulkCalculateAllowedActionsRequest, BulkCalculateAllowedActionsResponse, BulkCalculateAllowedActionsResult, BulkConfirmOrDeclineBookingRequest, BulkCreateBookingRequest, BulkGetMultiServiceBookingAllowedActionsRequest, BulkRescheduleBookingRequest, BulkRescheduleBookingRequestBooking, BulkRescheduleBookingResponse, BulkUpdateBookedScheduleRequest, BulkUpdateBookedScheduleResponse, BulkUpdateBookingRequest, BulkUpdateBookingResponse, CancelBookingAnonymouslyRequest, CancelBookingFlowControlSettings, CancelBookingRequest, CancelBookingRequestFlowControlSettings, CancelMultiServiceBookingRequest, Clash, CommonIdentificationData, CommonIdentificationDataIdOneOf, ConfirmBookingFlowControlSettings, ConfirmBookingRequest, ConfirmMultiServiceBookingRequest, ConfirmOrDeclineBookingRequest, ConfirmRequest, ConfirmResponse, ConsistentQueryBookingsRequest, ConsistentQueryBookingsResponse, ContactDetails, CountBookingsRequest, CountBookingsResponse, CreateBookingFlowControlSettings, CreateBookingRequest, CreateBookingRequestFlowControlSettings, CreateMultiServiceBookingRequest, CursorPaging, Cursors, CustomFormField, DeclineBookingFlowControlSettings, DeclineBookingRequest, DeclineMultiServiceBookingRequest, DomainEvent, DomainEventBodyOneOf, Duration, EntityCreatedEvent, EntityDeletedEvent, EntityUpdatedEvent, EventMetadata, ExtendedFields, FlowControlSettings, GetAnonymousActionDetailsRequest, GetBookingAnonymouslyRequest, GetMultiServiceBookingAvailabilityRequest, GetMultiServiceBookingAvailabilityResponseBookingInfo, GetMultiServiceBookingRequest, GetMultiServiceBookingResponse, GetScheduleAvailabilityRequest, GetScheduleAvailabilityResponse, GetSlotAvailabilityRequest, GetSlotAvailabilityResponse, IdentificationData, IdentificationDataIdOneOf, IdentificationDataIdentityType, IdentificationDataIdentityTypeWithLiterals, IdentityType, IdentityTypeWithLiterals, ItemMetadata, LegacyCreateBookingRequest, LegacyCreateBookingResponse, Location, LocationLocationType, LocationLocationTypeWithLiterals, LocationType, LocationTypeWithLiterals, MarkBookingAsPendingFlowControlSettings, MarkBookingAsPendingRequest, MarkMultiServiceBookingAsPendingRequest, MaskedBooking, MessageEnvelope, MigrationCheckIfClashesWithBlockedTimeRequest, MigrationCheckIfClashesWithBlockedTimeResponse, MsidAndBookingId, MultiServiceBookingInfo, MultiServiceBookingMetadata, MultiServiceBookingType, MultiServiceBookingTypeWithLiterals, NumberOfParticipantsUpdated, NumberOfParticipantsUpdatedPreviousParticipantsInfoOneOf, Paging, PagingMetadataV2, ParticipantChoices, ParticipantNotification, PaymentStatus, PaymentStatusWithLiterals, PhoneCall, Platform, PlatformWithLiterals, QueryBookingsRequest, QueryBookingsResponse, QueryV2, QueryV2PagingMethodOneOf, RemoveBookingsFromMultiServiceBookingRequest, RescheduleBookingAnonymouslyRequest, RescheduleBookingFlowControlSettings, RescheduleBookingInfoParticipantsInfoOneOf, RescheduleBookingOptionsParticipantsInfoOneOf, RescheduleBookingRequest, RescheduleBookingRequestFlowControlSettings, RescheduleBookingRequestParticipantsInfoOneOf, RescheduleMultiServiceBookingRequest, ResourceSelection, RestoreInfo, ScheduleAvailability, SelectedPaymentOption, SelectedPaymentOptionWithLiterals, SelectionMethod, SelectionMethodWithLiterals, ServiceChoice, ServiceChoiceChoiceOneOf, ServiceChoices, SetBookingFormAndSubmissionIdRequest, SetBookingFormAndSubmissionIdRequestCreatedByOneOf, SetBookingFormAndSubmissionIdResponse, SetBookingSessionIdRequest, SetBookingSessionIdResponse, SetBookingSubmissionIdRequest, Slot, SlotAvailability, SlotBookings, SlotLocation, SlotResource, SlotSlotResource, SortOrder, SortOrderWithLiterals, Sorting, StreetAddress, Subdivision, UpdateBookingRequest, UpdateBookingResponse, UpdateExtendedFieldsRequest, UpdateNumberOfParticipantsOptionsParticipantsInfoOneOf, UpdateNumberOfParticipantsRequest, UpdateNumberOfParticipantsRequestParticipantsInfoOneOf, V2CancelBookingRequest, V2CancelBookingResponse, V2ConfirmBookingRequest, V2ConfirmBookingResponse, V2CreateBookingRequest, V2CreateBookingRequestBookableItemOneOf, V2CreateBookingRequestParticipantsInfoOneOf, V2CreateBookingResponse, V2DeclineBookingRequest, V2DeclineBookingResponse, V2PhoneCall, V2RescheduleBookingRequest, V2RescheduleBookingRequestParticipantsInfoOneOf, V2RescheduleBookingResponse, V2UpdateNumberOfParticipantsRequest, V2UpdateNumberOfParticipantsRequestParticipantsInfoOneOf, V2UpdateNumberOfParticipantsResponse, ValueType, ValueTypeWithLiterals, WaitingList, WebhookIdentityType, WebhookIdentityTypeWithLiterals, WebhooksIdentificationData, WebhooksIdentificationDataIdOneOf } from './index.typings.js';
2
+ import { ConfirmOrDeclineBookingOptions, ConfirmOrDeclineBookingResponse, ConfirmOrDeclineBookingApplicationErrors, BulkConfirmOrDeclineBookingRequestBookingDetails, BulkConfirmOrDeclineBookingOptions, BulkConfirmOrDeclineBookingResponse, BulkConfirmOrDeclineBookingApplicationErrors, Booking, CreateMultiServiceBookingOptions, CreateMultiServiceBookingResponse, CreateMultiServiceBookingApplicationErrors, RescheduleBookingInfo, RescheduleMultiServiceBookingOptions, RescheduleMultiServiceBookingResponse, RescheduleMultiServiceBookingApplicationErrors, GetMultiServiceBookingAvailabilityResponse, GetMultiServiceBookingAvailabilityApplicationErrors, CancelMultiServiceBookingOptions, CancelMultiServiceBookingResponse, CancelMultiServiceBookingApplicationErrors, MarkMultiServiceBookingAsPendingOptions, MarkMultiServiceBookingAsPendingResponse, MarkMultiServiceBookingAsPendingApplicationErrors, ConfirmMultiServiceBookingOptions, ConfirmMultiServiceBookingResponse, ConfirmMultiServiceBookingApplicationErrors, DeclineMultiServiceBookingOptions, DeclineMultiServiceBookingResponse, DeclineMultiServiceBookingApplicationErrors, BulkGetMultiServiceBookingAllowedActionsResponse, MultiServiceBooking, AddBookingsToMultiServiceBookingOptions, AddBookingsToMultiServiceBookingResponse, AddBookingsToMultiServiceBookingApplicationErrors, RemoveBookingsFromMultiServiceBookingOptions, RemoveBookingsFromMultiServiceBookingResponse, RemoveBookingsFromMultiServiceBookingApplicationErrors, CreateBookingOptions, CreateBookingResponse, CreateBookingApplicationErrors, CreateBookingInfo, BulkCreateBookingOptions, BulkCreateBookingResponse, BulkCreateBookingApplicationErrors, V2Slot, RescheduleBookingOptions, RescheduleBookingResponse, RescheduleBookingApplicationErrors, ConfirmBookingOptions, ConfirmBookingResponse, ConfirmBookingApplicationErrors, SetBookingSubmissionIdResponse, SetBookingSubmissionIdApplicationErrors, UpdateExtendedFieldsOptions, UpdateExtendedFieldsResponse, UpdateExtendedFieldsApplicationErrors, DeclineBookingOptions, DeclineBookingResponse, DeclineBookingApplicationErrors, CancelBookingOptions, CancelBookingResponse, CancelBookingApplicationErrors, UpdateNumberOfParticipantsOptions, UpdateNumberOfParticipantsResponse, UpdateNumberOfParticipantsApplicationErrors, BulkCalculateAllowedActionsResponse, MarkBookingAsPendingOptions, MarkBookingAsPendingResponse, MarkBookingAsPendingApplicationErrors, GetAnonymousActionDetailsOptions, GetAnonymousActionDetailsResponse, CancelBookingAnonymouslyOptions, CancelBookingAnonymouslyResponse, RescheduleBookingAnonymouslyOptions, RescheduleBookingAnonymouslyResponse, GetBookingAnonymouslyResponse, BookingCanceledEnvelope, BookingConfirmedEnvelope, BookingCreatedEnvelope, BookingDeclinedEnvelope, BookingRescheduledEnvelope, BookingUpdatedEnvelope, BookingMarkedAsPendingEnvelope, BookingNumberOfParticipantsUpdatedEnvelope } from './index.typings.js';
3
+ export { ActionEvent, Actor, ActorWithLiterals, AddBookingsToMultiServiceBookingRequest, Address, AddressLocation, AddressStreetOneOf, AllowedActions, AllowedActionsAnonymously, AnonymousBookingUrls, ApplicationError, AvailableResources, BaseEventMetadata, BookedAddOn, BookedEntity, BookedEntityItemOneOf, BookedResource, BookedSchedule, BookedSlot, BookingCanceled, BookingChanged, BookingConfirmed, BookingDeclined, BookingDetails, BookingFormFilled, BookingIdAndRevision, BookingInfo, BookingMarkedAsPending, BookingParticipantsInfoOneOf, BookingPolicySettings, BookingPolicyViolations, BookingRescheduled, BookingRescheduledPreviousParticipantsInfoOneOf, BookingResult, BookingSource, BookingStatus, BookingStatusWithLiterals, BulkActionMetadata, BulkBookingResult, BulkCalculateAllowedActionsRequest, BulkCalculateAllowedActionsResult, BulkConfirmOrDeclineBookingRequest, BulkCreateBookingRequest, BulkGetMultiServiceBookingAllowedActionsRequest, BulkRescheduleBookingRequest, BulkRescheduleBookingRequestBooking, BulkRescheduleBookingResponse, BulkUpdateBookedScheduleRequest, BulkUpdateBookedScheduleResponse, BulkUpdateBookingRequest, BulkUpdateBookingResponse, CancelBookingAnonymouslyRequest, CancelBookingFlowControlSettings, CancelBookingRequest, CancelBookingRequestFlowControlSettings, CancelMultiServiceBookingRequest, Clash, CommonIdentificationData, CommonIdentificationDataIdOneOf, ConfirmBookingFlowControlSettings, ConfirmBookingRequest, ConfirmMultiServiceBookingRequest, ConfirmOrDeclineBookingRequest, ConfirmRequest, ConfirmResponse, ConsistentQueryBookingsRequest, ConsistentQueryBookingsResponse, ContactDetails, CountBookingsRequest, CountBookingsResponse, CreateBookingFlowControlSettings, CreateBookingRequest, CreateBookingRequestFlowControlSettings, CreateMultiServiceBookingRequest, CursorPaging, Cursors, CustomFormField, DeclineBookingFlowControlSettings, DeclineBookingRequest, DeclineMultiServiceBookingRequest, DomainEvent, DomainEventBodyOneOf, Duration, EntityCreatedEvent, EntityDeletedEvent, EntityUpdatedEvent, EventMetadata, ExtendedFields, FlowControlSettings, GetAnonymousActionDetailsRequest, GetBookingAnonymouslyRequest, GetMultiServiceBookingAvailabilityRequest, GetMultiServiceBookingAvailabilityResponseBookingInfo, GetMultiServiceBookingRequest, GetMultiServiceBookingResponse, GetScheduleAvailabilityRequest, GetScheduleAvailabilityResponse, GetSlotAvailabilityRequest, GetSlotAvailabilityResponse, IdentificationData, IdentificationDataIdOneOf, IdentificationDataIdentityType, IdentificationDataIdentityTypeWithLiterals, IdentityType, IdentityTypeWithLiterals, ItemMetadata, LegacyCreateBookingRequest, LegacyCreateBookingResponse, Location, LocationLocationType, LocationLocationTypeWithLiterals, LocationType, LocationTypeWithLiterals, MarkBookingAsPendingFlowControlSettings, MarkBookingAsPendingRequest, MarkMultiServiceBookingAsPendingRequest, MaskedBooking, MessageEnvelope, MigrationCheckIfClashesWithBlockedTimeRequest, MigrationCheckIfClashesWithBlockedTimeResponse, MsidAndBookingId, MultiServiceBookingInfo, MultiServiceBookingMetadata, MultiServiceBookingType, MultiServiceBookingTypeWithLiterals, NumberOfParticipantsUpdated, NumberOfParticipantsUpdatedPreviousParticipantsInfoOneOf, Paging, PagingMetadataV2, ParticipantChoices, ParticipantNotification, PaymentStatus, PaymentStatusWithLiterals, PhoneCall, Platform, PlatformWithLiterals, QueryBookingsRequest, QueryBookingsResponse, QueryV2, QueryV2PagingMethodOneOf, RemoveBookingsFromMultiServiceBookingRequest, RescheduleBookingAnonymouslyRequest, RescheduleBookingFlowControlSettings, RescheduleBookingInfoParticipantsInfoOneOf, RescheduleBookingOptionsParticipantsInfoOneOf, RescheduleBookingRequest, RescheduleBookingRequestFlowControlSettings, RescheduleBookingRequestParticipantsInfoOneOf, RescheduleMultiServiceBookingRequest, ResourceSelection, RestoreInfo, ScheduleAvailability, SelectedPaymentOption, SelectedPaymentOptionWithLiterals, SelectionMethod, SelectionMethodWithLiterals, ServiceChoice, ServiceChoiceChoiceOneOf, ServiceChoices, SetBookingSessionIdRequest, SetBookingSessionIdResponse, SetBookingSubmissionIdRequest, Slot, SlotAvailability, SlotBookings, SlotLocation, SlotResource, SlotSlotResource, SortOrder, SortOrderWithLiterals, Sorting, StreetAddress, Subdivision, UpdateBookingRequest, UpdateBookingResponse, UpdateExtendedFieldsRequest, UpdateNumberOfParticipantsOptionsParticipantsInfoOneOf, UpdateNumberOfParticipantsRequest, UpdateNumberOfParticipantsRequestParticipantsInfoOneOf, V2CancelBookingRequest, V2CancelBookingResponse, V2ConfirmBookingRequest, V2ConfirmBookingResponse, V2CreateBookingRequest, V2CreateBookingRequestBookableItemOneOf, V2CreateBookingRequestParticipantsInfoOneOf, V2CreateBookingResponse, V2DeclineBookingRequest, V2DeclineBookingResponse, V2PhoneCall, V2RescheduleBookingRequest, V2RescheduleBookingRequestParticipantsInfoOneOf, V2RescheduleBookingResponse, V2UpdateNumberOfParticipantsRequest, V2UpdateNumberOfParticipantsRequestParticipantsInfoOneOf, V2UpdateNumberOfParticipantsResponse, ValueType, ValueTypeWithLiterals, WaitingList, WebhookIdentityType, WebhookIdentityTypeWithLiterals, WebhooksIdentificationData, WebhooksIdentificationDataIdOneOf } from './index.typings.js';
4
4
 
5
- declare function getAnonymousActionDetails$1(httpClient: HttpClient): GetAnonymousActionDetailsSignature;
6
- interface GetAnonymousActionDetailsSignature {
7
- /**
8
- * Returns booking details related to AnonymousActions
9
- * Anonymous tokens for getting, canceling or rescheduling the booking.
10
- * That token is symmetrically encrypted and Url-safe.
11
- * That allows the UoU to cancel or reschedule without Authentication.
12
- * @returns Response for GetAnonymousActionDetails
13
- */
14
- (options?: GetAnonymousActionDetailsOptions): Promise<GetAnonymousActionDetailsResponse>;
15
- }
16
- declare function cancelBookingAnonymously$1(httpClient: HttpClient): CancelBookingAnonymouslySignature;
17
- interface CancelBookingAnonymouslySignature {
18
- /**
19
- * Cancel booking using an anonymous token
20
- * @param - The token provided in the booking links for anonymous access
21
- * @returns Response for CancelBookingAnonymously
22
- */
23
- (token: string, options?: CancelBookingAnonymouslyOptions): Promise<NonNullablePaths<CancelBookingAnonymouslyResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7>>;
24
- }
25
- declare function rescheduleBookingAnonymously$1(httpClient: HttpClient): RescheduleBookingAnonymouslySignature;
26
- interface RescheduleBookingAnonymouslySignature {
27
- /**
28
- * Reschedule booking using an anonymous token
29
- * @param - The token provided in the booking links for anonymous access
30
- * @param - New slot of the booking.
31
- * @returns Response for RescheduleBookingAnonymously
32
- */
33
- (token: string, slot: V2Slot, options: NonNullablePaths<RescheduleBookingAnonymouslyOptions, `revision`, 2>): Promise<NonNullablePaths<RescheduleBookingAnonymouslyResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7>>;
34
- }
35
- declare function getBookingAnonymously$1(httpClient: HttpClient): GetBookingAnonymouslySignature;
36
- interface GetBookingAnonymouslySignature {
37
- /**
38
- * Get booking using an anonymous token
39
- * @param - The token provided in the booking links for anonymous access
40
- * @returns Response for GetBookingAnonymously
41
- */
42
- (token: string): Promise<NonNullablePaths<GetBookingAnonymouslyResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId` | `allowedActionsAnonymously.cancel` | `allowedActionsAnonymously.reschedule`, 7>>;
43
- }
44
5
  declare function confirmOrDeclineBooking$1(httpClient: HttpClient): ConfirmOrDeclineBookingSignature;
45
6
  interface ConfirmOrDeclineBookingSignature {
46
7
  /**
@@ -102,390 +63,380 @@ interface BulkConfirmOrDeclineBookingSignature {
102
63
  __applicationErrorsType?: BulkConfirmOrDeclineBookingApplicationErrors;
103
64
  }>;
104
65
  }
105
- declare function createBooking$1(httpClient: HttpClient): CreateBookingSignature;
106
- interface CreateBookingSignature {
66
+ declare function createMultiServiceBooking$1(httpClient: HttpClient): CreateMultiServiceBookingSignature;
67
+ interface CreateMultiServiceBookingSignature {
107
68
  /**
108
- * Creates a booking.
109
- *
110
- *
111
- * ### Appointment booking
112
- *
113
- * For appointment-based services, specify the relevant time slot in `bookedEntity.slot`.
114
- *
115
- * We recommend following the [appointment booking sample flow](https://dev.wix.com/docs/api-reference/business-solutions/bookings/bookings/bookings-writer-v2/sample-flows#book-an-appointment) using Time Slots V2.
116
- * Specify the slot's `startDate`, `endDate`, `resource`, and `location` in `booking.bookedEntity.slot`.
69
+ * Creates a multi-service booking and all included single-service bookings simultaneously.
117
70
  *
118
- * ### Class session booking
119
71
  *
120
- * For class services, specify the relevant event ID as `bookedEntity.slot.eventId`.
72
+ * ### When to call this method
121
73
  *
122
- * We recommend following the [class session booking sample flow](https://dev.wix.com/docs/api-reference/business-solutions/bookings/bookings/bookings-writer-v2/sample-flows#book-a-class-session) using Time Slots V2.
123
- * Specify the `eventId` from the selected time slot in `booking.bookedEntity.slot.eventId`.
74
+ * Create sequential appointments where customers book related services together. For adding existing single-service bookings to an existing multi-service booking, call [Add Bookings to Multi Service Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/add-bookings-to-multi-service-booking) instead.
124
75
  *
125
- * When you specify `eventId`, Wix Bookings automatically derives `startDate`, `endDate`, `timezone`, `resource`, and `location` based on the event details. Manually specified values are ignored.
76
+ * ### Requirements and behavior
126
77
  *
127
- * ### Course booking
78
+ * __Package constraints__: Multi-service bookings support 2-8 appointment-based single-service bookings only (course and class bookings aren't supported). All single-service bookings must be at the same location with sequential scheduling and no gaps between appointments.
128
79
  *
129
- * For course services, specify the course's schedule ID in `bookedEntity.schedule.scheduleId`.
130
- * We recommend following [this sample flow](https://dev.wix.com/docs/rest/business-solutions/bookings/end-to-end-booking-flows#book-a-course)
131
- * to minimize failed calls due to unavailability.
80
+ * __Timing specification__: You must provide complete `slot` details (`scheduleId`, `startDate`, `endDate`) for each single-service booking. Wix Bookings validates sequential timing but doesn't auto-calculate it.
132
81
  *
133
- * ### Booking status
82
+ * __Package pricing__: The total price equals the sum of individual services. Wix Bookings automatically syncs the payment status from the corresponding [Wix eCommerce order](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction) if the customer paid via an [eCommerce checkout](https://dev.wix.com/docs/rest/business-solutions/e-commerce/checkout/introduction).
134
83
  *
135
- * Create Booking defaults to `status=CREATED`. Such bookings aren't visible in the [Booking Calendar](https://support.wix.com/en/article/wix-bookings-about-the-wix-booking-calendar).
84
+ * __Package notifications__: Customers receive 1 unified notification for the entire multi-service booking. Wix Bookings doesn't send notifications for the package's individual single-service bookings.
136
85
  *
137
- * Only [identities](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities) with `Manage Bookings` permissions can set `status=CONFIRMED`.
86
+ * ### Related methods
138
87
  *
139
- * ### Related resources
88
+ * Verify availability first with [List Multi Service Availability Time Slots](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/time-slots-v2/list-multi-service-availability-time-slots).
140
89
  *
141
- * Specifying a `resource` triggers an availability check, and the Create Booking call fails if the resource is unavailable.
90
+ * See [Create Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/create-booking) for more details about constraints and effects of creating single-service bookings.
91
+ * @param - Between 2 to 8 new single-service booking specifications to create and combine in a multi-service booking.
142
92
  *
143
- * If you omit `resource`, resource assignment and availability validation occur during booking confirmation.
144
- * If no resources are available, the behavior depends on the confirmation method used and payment status.
93
+ * Each single-service booking specification must include `slot` details (`scheduleId`, `startDate`, and `endDate`).
94
+ * Specify contact details, number of participants, and any additional fields as needed.
145
95
  *
146
- * ### Booking form data
96
+ * For sequential bookings, ensure the timing allows services to be scheduled back-to-back.
97
+ */
98
+ (bookings: NonNullablePaths<Booking, `additionalFields.${number}._id` | `bookedEntity` | `bookedEntity.slot` | `bookedEntity.slot.endDate` | `bookedEntity.slot.location.locationType` | `bookedEntity.slot.scheduleId` | `bookedEntity.slot.startDate`, 5>[], options?: CreateMultiServiceBookingOptions): Promise<NonNullablePaths<CreateMultiServiceBookingResponse, `multiServiceBooking.bookings` | `multiServiceBooking.bookings.${number}.booking.totalParticipants` | `multiServiceBooking.bookings.${number}.booking.status` | `multiServiceBooking.bookings.${number}.booking.paymentStatus` | `multiServiceBooking.bookings.${number}.booking.selectedPaymentOption` | `multiServiceBooking.bookings.${number}.booking.createdBy.anonymousVisitorId` | `multiServiceBooking.bookings.${number}.booking.createdBy.memberId` | `multiServiceBooking.bookings.${number}.booking.createdBy.wixUserId` | `multiServiceBooking.bookings.${number}.booking.createdBy.appId`, 7> & {
99
+ __applicationErrorsType?: CreateMultiServiceBookingApplicationErrors;
100
+ }>;
101
+ }
102
+ declare function rescheduleMultiServiceBooking$1(httpClient: HttpClient): RescheduleMultiServiceBookingSignature;
103
+ interface RescheduleMultiServiceBookingSignature {
104
+ /**
105
+ * Reschedules a multi-service booking by changing the timing for all or specific single-service bookings in the package.
147
106
  *
148
- * When customers sign up for a service, they must fill out the [booking form](https://support.wix.com/en/article/wix-bookings-creating-and-setting-up-your-booking-forms).
149
- * To create a booking with a completed booking form, specify the relevant data in `formSubmission`.
150
- * Ensure the values of the corresponding fields in `booking.contactDetails` and `formSubmission` are identical.
151
- * If these values don't match, Create Booking fails.
152
- * Therefore, we recommend specifying only `booking.contactDetails.contactId` when providing `formSubmission`.
153
- * Learn more about the [Bookings and Wix Forms integration](https://dev.wix.com/docs/rest/business-solutions/bookings/wix-forms-integration).
154
107
  *
155
- * ### Participant information
108
+ * This method reschedules single-service bookings within the multi-service booking while maintaining sequential order. You must specify exact new timing for each service to ensure they remain back-to-back with no gaps or overlaps.
156
109
  *
157
- * You must specify either `participantsChoices` or `totalParticipants`.
158
- * The call fails if the specified `participantsChoices` aren't among the supported
159
- * [service options and variants](https://dev.wix.com/docs/rest/business-solutions/bookings/services/service-options-and-variants/introduction).
110
+ * This method fails if it can't reschedule at least 1 single-service booking. You must provide the current revision number for each single-service booking you're rescheduling to prevent conflicting changes.
160
111
  *
161
- * ### Add-ons
112
+ * See [Reschedule Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/reschedule-booking) for single-service booking rescheduling details.
113
+ * @param - ID of the multi-service booking to reschedule.
114
+ * @param - Information about the single-service bookings to reschedule.
115
+ */
116
+ (multiServiceBookingId: string, rescheduleBookingsInfo: NonNullablePaths<RescheduleBookingInfo, `bookingId` | `revision` | `slot`, 2>[], options?: RescheduleMultiServiceBookingOptions): Promise<NonNullablePaths<RescheduleMultiServiceBookingResponse, `multiServiceBooking.bookings` | `multiServiceBooking.bookings.${number}.booking.totalParticipants` | `multiServiceBooking.bookings.${number}.booking.status` | `multiServiceBooking.bookings.${number}.booking.paymentStatus` | `multiServiceBooking.bookings.${number}.booking.selectedPaymentOption` | `multiServiceBooking.bookings.${number}.booking.createdBy.anonymousVisitorId` | `multiServiceBooking.bookings.${number}.booking.createdBy.memberId` | `multiServiceBooking.bookings.${number}.booking.createdBy.wixUserId` | `multiServiceBooking.bookings.${number}.booking.createdBy.appId`, 7> & {
117
+ __applicationErrorsType?: RescheduleMultiServiceBookingApplicationErrors;
118
+ }>;
119
+ }
120
+ declare function getMultiServiceBookingAvailability$1(httpClient: HttpClient): GetMultiServiceBookingAvailabilitySignature;
121
+ interface GetMultiServiceBookingAvailabilitySignature {
122
+ /**
123
+ * Checks if the business can still accommodate an existing multi-service booking and returns overall bookability status, capacity details, and policy violations.
162
124
  *
163
- * You can include [add-ons](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/add-ons/introduction) when creating a booking by specifying `bookedAddOns`.
164
- * Each selected add-on must belong to an [add-on group](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/services-v2/about-add-on-groups) associated with the service and respect the group's selection limits.
165
125
  *
166
- * ### Notify customers
126
+ * Wix Bookings considers:
127
+ * - The relevant services' [booking policies](https://dev.wix.com/docs/rest/business-solutions/bookings/policies/booking-policies/introduction).
128
+ * - The availability of all required [resources](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/resources-v2/introduction).
167
129
  *
168
- * You can specify a `participantNotification.message` for the customer that's send
169
- * immediately. Ensure `participantNotification.notifyParticipants` is set to `true`
170
- * to send the message.
130
+ * Call this method to check if an existing multi-service booking is still valid after business configuration changes.
131
+ * For example, staff changes, policy updates, or capacity modifications.
171
132
  *
172
- * If you specify `{"sendSmsReminder": true}`, the customer receives an SMS 24 hours
173
- * before the session starts. The phone number is taken from `contactDetails.phone`.
133
+ * For checking availability before creating new multi-service bookings, call [List Multi Service Availability Time Slots](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/time-slots-v2/list-multi-service-availability-time-slots) instead.
134
+ * @param - ID of the multi-service booking to retrieve.
135
+ */
136
+ (multiServiceBookingId: string): Promise<NonNullablePaths<GetMultiServiceBookingAvailabilityResponse, `bookable` | `multiServiceBookingInfo`, 2> & {
137
+ __applicationErrorsType?: GetMultiServiceBookingAvailabilityApplicationErrors;
138
+ }>;
139
+ }
140
+ declare function cancelMultiServiceBooking$1(httpClient: HttpClient): CancelMultiServiceBookingSignature;
141
+ interface CancelMultiServiceBookingSignature {
142
+ /**
143
+ * Cancels a multi-service booking and all its associated single-service bookings.
174
144
  *
175
- * ### Payment options
176
145
  *
177
- * The specified `selectedPaymentOption` indicates how the customer intends to pay, allowing for later changes to a different method supported by the service.
146
+ * Cancels the entire multi-service booking, updating the status of all single-service bookings to `CANCELED`.
147
+ * The call fails if all single-service bookings are already canceled or declined.
178
148
  *
179
- * ### Payment status
149
+ * See [Cancel Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/cancel-booking) for single-service booking cancellation details.
150
+ * @param - ID of the multi-service booking to cancel.
151
+ */
152
+ (multiServiceBookingId: string, options?: CancelMultiServiceBookingOptions): Promise<NonNullablePaths<CancelMultiServiceBookingResponse, `multiServiceBooking.bookings` | `multiServiceBooking.bookings.${number}.booking.totalParticipants` | `multiServiceBooking.bookings.${number}.booking.status` | `multiServiceBooking.bookings.${number}.booking.paymentStatus` | `multiServiceBooking.bookings.${number}.booking.selectedPaymentOption` | `multiServiceBooking.bookings.${number}.booking.createdBy.anonymousVisitorId` | `multiServiceBooking.bookings.${number}.booking.createdBy.memberId` | `multiServiceBooking.bookings.${number}.booking.createdBy.wixUserId` | `multiServiceBooking.bookings.${number}.booking.createdBy.appId`, 7> & {
153
+ __applicationErrorsType?: CancelMultiServiceBookingApplicationErrors;
154
+ }>;
155
+ }
156
+ declare function markMultiServiceBookingAsPending$1(httpClient: HttpClient): MarkMultiServiceBookingAsPendingSignature;
157
+ interface MarkMultiServiceBookingAsPendingSignature {
158
+ /**
159
+ * Updates the status for all single-service bookings in a multi-service booking to `PENDING`.
180
160
  *
181
- * All bookings are created with `paymentStatus=UNDEFINED`, ignoring the payment status you specify.
182
161
  *
183
- * For customers paying with a [Wix eCommerce checkout](https://dev.wix.com/docs/rest/business-solutions/e-commerce/purchase-flow/checkout/checkout/introduction), Wix Bookings automatically syncs the booking's payment status from the corresponding [eCommerce order](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction).
162
+ * Call this method for multi-service bookings requiring manual business approval before confirmation.
184
163
  *
185
- * For customers using a custom checkout, call [Confirm or Decline Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-or-decline-booking) to update booking's payment status manually.
164
+ * ### Status requirements
186
165
  *
187
- * ### Admin overwrites
166
+ * - __Original status__: All single-service bookings must have `CREATED` status.
167
+ * - __Target status__: All bookings move to `PENDING` together (all-or-nothing operation).
188
168
  *
189
- * There are small but important differences when you specify special
190
- * `flowControlSettings`:
169
+ * ### Checkout restrictions
191
170
  *
192
- * - `{"skipAvailabilityValidation": true}`: The call succeeds
193
- * regardless of availability. If you don't specify any resource, the call
194
- * succeeds even if no resource of the relevant type is available.
195
- * - `{"skipBusinessConfirmation": true}`: Automatically confirms `PENDING`
196
- * bookings that require manual confirmation.
197
- * - `{"skipSelectedPaymentOptionValidation": true}`: Allows customers to pay
198
- * with payment methods that aren't supported for the service.
199
- * - `{"skipAddOnValidation": true}`: Allows customers to choose add-ons that aren't associated with the service or exceed group selection limits.
200
- * - `{"allowAddOnChanges": true}`: Allows customers to update the list of add-ons associated with the booking when rescheduling.
171
+ * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,
172
+ * Wix Bookings automatically manages the bookings' statuses based on payment processing.
201
173
  *
202
- * When using special `flowControlSettings`, ensure you have sufficient
203
- * permissions. If you encounter failed calls due to insufficient permissions,
204
- * consider the following options:
174
+ * ### Additional updates
205
175
  *
206
- * - **App developers** can use a higher
207
- * [permission](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions),
208
- * such as `MANAGE BOOKINGS - ALL PERMISSIONS`.
209
- * - **Site developers** can utilize
210
- * [elevation](https://dev.wix.com/docs/develop-websites/articles/coding-with-velo/authorization/elevation).
176
+ * - __Payment status__: Updates if you specify a new `markAsPendingBookingsInfo.paymentStatus`.
177
+ * - __Customer notifications__: Send messages using `participantNotification`.
178
+ * - __Revision control__: Requires current revision numbers for all single-service bookings.
211
179
  *
212
- * Granting additional permissions and using elevation permits method calls that
213
- * would typically fail due to authorization checks. Therefore, you should use
214
- * them intentionally and securely.
215
- * @param - The booking to create.
180
+ * See [Mark Booking as Pending](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/mark-booking-as-pending) for more details about marking single-service bookings as pending.
181
+ * @param - ID of the multi-service booking to mark as `PENDING`.
216
182
  */
217
- (booking: NonNullablePaths<Booking, `additionalFields.${number}._id` | `bookedEntity`, 4>, options?: CreateBookingOptions): Promise<NonNullablePaths<CreateBookingResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7> & {
218
- __applicationErrorsType?: CreateBookingApplicationErrors;
183
+ (multiServiceBookingId: string, options?: MarkMultiServiceBookingAsPendingOptions): Promise<NonNullablePaths<MarkMultiServiceBookingAsPendingResponse, `multiServiceBooking.bookings` | `multiServiceBooking.bookings.${number}.booking.totalParticipants` | `multiServiceBooking.bookings.${number}.booking.status` | `multiServiceBooking.bookings.${number}.booking.paymentStatus` | `multiServiceBooking.bookings.${number}.booking.selectedPaymentOption` | `multiServiceBooking.bookings.${number}.booking.createdBy.anonymousVisitorId` | `multiServiceBooking.bookings.${number}.booking.createdBy.memberId` | `multiServiceBooking.bookings.${number}.booking.createdBy.wixUserId` | `multiServiceBooking.bookings.${number}.booking.createdBy.appId`, 7> & {
184
+ __applicationErrorsType?: MarkMultiServiceBookingAsPendingApplicationErrors;
219
185
  }>;
220
186
  }
221
- declare function bulkCreateBooking$1(httpClient: HttpClient): BulkCreateBookingSignature;
222
- interface BulkCreateBookingSignature {
187
+ declare function confirmMultiServiceBooking$1(httpClient: HttpClient): ConfirmMultiServiceBookingSignature;
188
+ interface ConfirmMultiServiceBookingSignature {
223
189
  /**
224
- * Creates up to 8 bookings.
190
+ * Updates the status for all single-service bookings in a multi-service booking to `CONFIRMED`.
225
191
  *
226
192
  *
227
- * See [Create Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/create-booking)
228
- * for more information.
193
+ * Call this method for multi-service bookings requiring manual business approval.
229
194
  *
230
- * If any of the specified bookings is missing a required field the entire call
231
- * fails.
195
+ * ### Status requirements
232
196
  *
233
- * If you specify 1 or more unavailable bookings, the call succeeds
234
- * while the unavailable bookings aren't created. Instead, they're counted as
235
- * failures in the returned `bulkActionMetadata`.
236
- * @param - Bookings to create.
197
+ * - __Original status__: All single-service bookings must have `PENDING`, `CREATED`, or `WAITING_LIST` status.
198
+ * - __Target status__: All bookings move to `CONFIRMED` together (all-or-nothing operation).
237
199
  *
238
- * Max: 8 bookings
200
+ * ### Checkout restrictions
201
+ *
202
+ * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,
203
+ * Wix Bookings automatically manages the bookings' statuses based on payment processing.
204
+ *
205
+ * ### Additional updates
206
+ *
207
+ * - __Payment status__: Updates if you specify a new `confirmBookingsInfo.paymentStatus`.
208
+ * - __Customer notifications__: Send messages using `participantNotification`.
209
+ * - __Revision control__: Requires current revision numbers for all single-service bookings.
210
+ *
211
+ * See [Confirm Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-booking) for more details about confirming single-service bookings.
212
+ * @param - ID of the multi-service booking to confirm its related bookings.
239
213
  */
240
- (createBookingsInfo: NonNullablePaths<CreateBookingInfo, `booking` | `booking.additionalFields.${number}._id` | `booking.bookedEntity`, 5>[], options?: BulkCreateBookingOptions): Promise<NonNullablePaths<BulkCreateBookingResponse, `results` | `results.${number}.itemMetadata.originalIndex` | `results.${number}.itemMetadata.success` | `results.${number}.itemMetadata.error.code` | `results.${number}.itemMetadata.error.description` | `results.${number}.item.totalParticipants` | `results.${number}.item.status` | `results.${number}.item.paymentStatus` | `results.${number}.item.selectedPaymentOption` | `results.${number}.item.createdBy.anonymousVisitorId` | `results.${number}.item.createdBy.memberId` | `results.${number}.item.createdBy.wixUserId` | `results.${number}.item.createdBy.appId` | `bulkActionMetadata.totalSuccesses` | `bulkActionMetadata.totalFailures` | `bulkActionMetadata.undetailedFailures`, 6> & {
241
- __applicationErrorsType?: BulkCreateBookingApplicationErrors;
214
+ (multiServiceBookingId: string, options?: ConfirmMultiServiceBookingOptions): Promise<NonNullablePaths<ConfirmMultiServiceBookingResponse, `multiServiceBooking.bookings` | `multiServiceBooking.bookings.${number}.booking.totalParticipants` | `multiServiceBooking.bookings.${number}.booking.status` | `multiServiceBooking.bookings.${number}.booking.paymentStatus` | `multiServiceBooking.bookings.${number}.booking.selectedPaymentOption` | `multiServiceBooking.bookings.${number}.booking.createdBy.anonymousVisitorId` | `multiServiceBooking.bookings.${number}.booking.createdBy.memberId` | `multiServiceBooking.bookings.${number}.booking.createdBy.wixUserId` | `multiServiceBooking.bookings.${number}.booking.createdBy.appId`, 7> & {
215
+ __applicationErrorsType?: ConfirmMultiServiceBookingApplicationErrors;
242
216
  }>;
243
217
  }
244
- declare function rescheduleBooking$1(httpClient: HttpClient): RescheduleBookingSignature;
245
- interface RescheduleBookingSignature {
218
+ declare function declineMultiServiceBooking$1(httpClient: HttpClient): DeclineMultiServiceBookingSignature;
219
+ interface DeclineMultiServiceBookingSignature {
246
220
  /**
247
- * Reschedules an appointment booking to a different slot or a class booking to
248
- * a different session.
221
+ * Updates the status for all single-service bookings in a multi-service booking to `DECLINED`.
249
222
  *
250
223
  *
251
- * ### Updating add-ons
224
+ * Call this method to reject multi-service bookings that can't be accommodated or don't meet business requirements.
252
225
  *
253
- * You can also call this method to update the list of [add-ons](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/add-ons/introduction) associated with the booking.
254
- * To do so, both of these conditions must be met:
255
- * + The booking must have been created with `flowControlSettings.allowAddOnChanges` set to `true`.
256
- * + You must have `BOOKINGS.MANAGE_ADDONS` permissions and specify `flowControlSettings.allowAddOnChanges` as `true`.
226
+ * ### Status requirements
257
227
  *
258
- * ### Course booking limitation
228
+ * - __Original status__: All single-service bookings must have `PENDING`, `CREATED`, or `WAITING_LIST` status.
229
+ * - __Target status__: All bookings move to `DECLINED` together (all-or-nothing operation).
259
230
  *
260
- * You can't reschedule course bookings.
231
+ * ### Checkout restrictions
261
232
  *
262
- * ### Appointment sessions
233
+ * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,
234
+ * Wix Bookings automatically manages the bookings' statuses based on payment processing.
263
235
  *
264
- * For appointments, the old session is removed from the business calendar
265
- * while a new session is added. We recommend calling [Query Availability](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/availability-calendar/query-availability)
266
- * first and specifying the entire retrieved `slot`.
236
+ * ### Additional updates
267
237
  *
268
- * ### Class sessions
238
+ * - __Payment status__: Updates if you specify a new `declineBookingsInfo.paymentStatus`.
239
+ * - __Customer notifications__: Send messages using `participantNotification`.
240
+ * - __Revision control__: Requires current revision numbers for all single-service bookings.
269
241
  *
270
- * For classes, the new session must be an existing session belonging to the
271
- * same class. We recommend retrieving `availabilityEntries.slot.eventId`
272
- * from [Query Availability](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/availability-calendar/query-availability)
273
- * to avoid failed Reschedule Booking calls due to unavailability. Specify
274
- * only `slot.eventId` instead of the entire `slot` object.
242
+ * Refer to [Decline Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/decline-booking) for more details about declining single-service bookings.
243
+ * @param - ID of the multi-service booking to decline.
244
+ */
245
+ (multiServiceBookingId: string, options?: DeclineMultiServiceBookingOptions): Promise<NonNullablePaths<DeclineMultiServiceBookingResponse, `multiServiceBooking.bookings` | `multiServiceBooking.bookings.${number}.booking.totalParticipants` | `multiServiceBooking.bookings.${number}.booking.status` | `multiServiceBooking.bookings.${number}.booking.paymentStatus` | `multiServiceBooking.bookings.${number}.booking.selectedPaymentOption` | `multiServiceBooking.bookings.${number}.booking.createdBy.anonymousVisitorId` | `multiServiceBooking.bookings.${number}.booking.createdBy.memberId` | `multiServiceBooking.bookings.${number}.booking.createdBy.wixUserId` | `multiServiceBooking.bookings.${number}.booking.createdBy.appId`, 7> & {
246
+ __applicationErrorsType?: DeclineMultiServiceBookingApplicationErrors;
247
+ }>;
248
+ }
249
+ declare function bulkGetMultiServiceBookingAllowedActions$1(httpClient: HttpClient): BulkGetMultiServiceBookingAllowedActionsSignature;
250
+ interface BulkGetMultiServiceBookingAllowedActionsSignature {
251
+ /**
252
+ * Retrieves information about which actions the customer can perform for up to 50 multi-service bookings.
275
253
  *
276
- * ### Notify customers
277
254
  *
278
- * You can specify a `participantNotification.message` for the customer. To send
279
- * the message, you must also specify `participantNotification.notifyParticipants`
280
- * as `true`.
255
+ * For each multi-service booking, the response indicates which actions are currently allowed:
256
+ * - `cancel`: Whether the customer can cancel the multi-service booking.
257
+ * - `reschedule`: Whether the customer can adjust the multi-service booking's timing.
281
258
  *
282
- * ### Admin overwrites
259
+ * Bear the following considerations in mind when calling this method:
283
260
  *
284
- * There are small but important differences when you specify special
285
- * `flowControlSettings`:
261
+ * __Real-time validation__: Wix Bookings calculates allowed actions based on current multi-service booking status, [booking policies](https://dev.wix.com/docs/rest/business-solutions/bookings/policies/booking-policies/introduction), and [available resources](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/resources-v2/introduction) at the time of the call.
286
262
  *
287
- * - `{"ignoreReschedulePolicy": true}`: The call succeeds even if the
288
- * service's `reschedulePolicy` doesn't allow it.
289
- * - `{"skipAvailabilityValidation": true}`: The call succeeds even if
290
- * the specified session, slot, or resource isn't available. If you don't
291
- * specify any resource, the call succeeds even if no resource of the relevant
292
- * type is available.
293
- * - `{"skipBusinessConfirmation": true}`: Any `PENDING` booking is
294
- * automatically confirmed even if the services requires the merchants's
295
- * manual confirmation.
263
+ * __Permission context__: Depending on the permissions of the calling [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities), you may see different allowed actions for the same multi-service booking. For example, if the identity has permissions to read only part of the multi-service booking, the response indicates which single-service bookings the identity can read.
296
264
  *
297
- * When using special `flowControlSettings`, ensure you have sufficient
298
- * permissions. If you encounter failed calls due to insufficient permissions,
299
- * consider the following options:
265
+ * __Status dependencies__: Allowed actions change as bookings progress through their lifecycle (`CREATED` `PENDING` `CONFIRMED`/`DECLINED` → `CANCELED`).
266
+ * Bookings can skip `PENDING` and move directly from `CREATED` to `CONFIRMED`/`DECLINED` based on service configuration.
267
+ * @param - IDs of the multi-service bookings to retrieve allowed actions for.
268
+ */
269
+ (multiServiceBookingIds: string[]): Promise<NonNullablePaths<BulkGetMultiServiceBookingAllowedActionsResponse, `results` | `results.${number}.itemMetadata.originalIndex` | `results.${number}.itemMetadata.success` | `results.${number}.itemMetadata.error.code` | `results.${number}.itemMetadata.error.description` | `results.${number}.item.cancel` | `results.${number}.item.reschedule` | `bulkActionMetadata.totalSuccesses` | `bulkActionMetadata.totalFailures` | `bulkActionMetadata.undetailedFailures`, 6>>;
270
+ }
271
+ declare function getMultiServiceBooking$1(httpClient: HttpClient): GetMultiServiceBookingSignature;
272
+ interface GetMultiServiceBookingSignature {
273
+ /**
274
+ * Retrieves a multi-service booking and all its associated single-service bookings.
300
275
  *
301
- * - **App developers** can use a higher
302
- * [permission](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions),
303
- * such as `MANAGE BOOKINGS - ALL PERMISSIONS`.
304
- * - **Site developers** can utilize
305
- * [elevation](https://dev.wix.com/docs/develop-websites/articles/coding-with-velo/authorization/elevation).
306
276
  *
307
- * Granting additional permissions and using elevation permits method calls that
308
- * would typically fail due to authorization checks. Therefore, you should use
309
- * them intentionally and securely.
310
- * @param - ID of the booking to reschedule.
311
- * @param - New slot of the booking.
312
- * @param - An object representing the available options for rescheduling a booking.
277
+ * Returns the complete multi-service booking information including its ID, associated single-service bookings, and the total number of scheduled single-service bookings.
278
+ *
279
+ * If you call on behalf of an [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities) with permissions to read only part of the multi-service booking, only the permitted single-service bookings are retrieved.
280
+ * The returned total number includes single-service bookings for which you don't have permissions.
281
+ *
282
+ * See [Query Extended Bookings](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-reader-v2/query-extended-bookings) for details about retrieving individual single-service bookings and additional metadata.
283
+ * @param - ID of the multi-service booking.
284
+ * @returns Retrieved multi-service booking.
313
285
  */
314
- (bookingId: string, slot: V2Slot, options?: NonNullablePaths<RescheduleBookingOptions, `revision`, 2>): Promise<NonNullablePaths<RescheduleBookingResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7> & {
315
- __applicationErrorsType?: RescheduleBookingApplicationErrors;
316
- }>;
286
+ (multiServiceBookingId: string): Promise<NonNullablePaths<MultiServiceBooking, `bookings` | `bookings.${number}.booking.totalParticipants` | `bookings.${number}.booking.status` | `bookings.${number}.booking.paymentStatus` | `bookings.${number}.booking.selectedPaymentOption` | `bookings.${number}.booking.createdBy.anonymousVisitorId` | `bookings.${number}.booking.createdBy.memberId` | `bookings.${number}.booking.createdBy.wixUserId` | `bookings.${number}.booking.createdBy.appId`, 6>>;
317
287
  }
318
- declare function confirmBooking$1(httpClient: HttpClient): ConfirmBookingSignature;
319
- interface ConfirmBookingSignature {
288
+ declare function addBookingsToMultiServiceBooking$1(httpClient: HttpClient): AddBookingsToMultiServiceBookingSignature;
289
+ interface AddBookingsToMultiServiceBookingSignature {
320
290
  /**
321
- * Updates the booking status to `CONFIRMED` without checking whether the relevant slot or schedule is still available.
291
+ * Expands an existing multi-service booking by adding existing single-service bookings to the package.
322
292
  *
323
293
  *
324
- * ### eCommerce checkout restriction
294
+ * ### When to call this method
325
295
  *
326
- * Call this method only when using a custom checkout page. Don't
327
- * call it when using a [Wix eCommerce checkout](https://dev.wix.com/docs/rest/business-solutions/e-commerce/checkout/introduction).
328
- * In such cases, Wix automatically updates the booking status based on
329
- * the `paymentStatus` of the corresponding [Wix eCommerce order](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction).
296
+ * Call this method to add 1 or more existing single-service bookings to an existing multi-service booking.
297
+ * For creating a new multi-service booking with new single-service bookings, call [Create Multi Service Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/create-multi-service-booking) instead.
330
298
  *
331
- * ### When to call Confirm Or Decline Booking instead
299
+ * ### Package integration
332
300
  *
333
- * Confirm Booking doesn't check whether a slot or schedule is still available.
334
- * For these checks, call [Confirm or Decline Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-or-decline-booking) instead.
301
+ * The timing of the single-service bookings to add must be compatible with the multi-service booking's sequential schedule to ensure no gaps or overlaps between services in the updated package.
335
302
  *
336
- * ### Original status validation
303
+ * ### Requirements and limitations
337
304
  *
338
- * You can only confirm bookings with a status of `PENDING`, `CREATED`, or
339
- * `WAITING_LIST`.
305
+ * - __Maximum capacity__: The total number of single-service bookings can't exceed 8.
306
+ * - __Booking eligibility__: You can add only independent single-service bookings that aren't part of another multi-service booking.
307
+ * - __Status compatibility__: Added bookings must have compatible status with the target multi-service booking.
308
+ * - __Revision control__: You must provide current revision numbers for all single-service bookings to add.
309
+ * @param - ID of the multi-service booking.
310
+ */
311
+ (multiServiceBookingId: string, options?: NonNullablePaths<AddBookingsToMultiServiceBookingOptions, `bookings` | `bookings.${number}.bookingId` | `bookings.${number}.revision`, 4>): Promise<NonNullablePaths<AddBookingsToMultiServiceBookingResponse, `bookings` | `bookings.${number}.booking.totalParticipants` | `bookings.${number}.booking.status` | `bookings.${number}.booking.paymentStatus` | `bookings.${number}.booking.selectedPaymentOption` | `bookings.${number}.booking.createdBy.anonymousVisitorId` | `bookings.${number}.booking.createdBy.memberId` | `bookings.${number}.booking.createdBy.wixUserId` | `bookings.${number}.booking.createdBy.appId`, 6> & {
312
+ __applicationErrorsType?: AddBookingsToMultiServiceBookingApplicationErrors;
313
+ }>;
314
+ }
315
+ declare function removeBookingsFromMultiServiceBooking$1(httpClient: HttpClient): RemoveBookingsFromMultiServiceBookingSignature;
316
+ interface RemoveBookingsFromMultiServiceBookingSignature {
317
+ /**
318
+ * Removes single-service bookings from a multi-service booking and converts them to independent single-service bookings.
340
319
  *
341
- * ### Double bookings
342
320
  *
343
- * Confirm Booking doesn't check whether a slot or schedule is still available.
344
- * You can specify
321
+ * ### Removal options
345
322
  *
346
- * ```json
347
- * {
348
- * "flowControlSettings": {
349
- * "checkAvailabilityValidation": true
350
- * },
351
- * "doubleBooked": true
352
- * }
353
- * ```
354
- * to forcefully set the booking's `doubleBooked` flag to `true`, regardless of
355
- * a potential double booking conflict. You must call with `Manage Bookings`
356
- * permissions to do so. For the default flow control settings
357
- * `{"checkAvailabilityValidation": false}`, the specified `doubleBooked` value
358
- * is ignored.
323
+ * __Remove all permitted bookings__: If you specify an empty `bookings` array, all single-service bookings for which the call's [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities) has read permissions are removed from the multi-service booking.
359
324
  *
360
- * ### Payment status
325
+ * __Selective removal__: Specify single-service booking IDs and revisions to remove only specific single-service bookings from the package.
361
326
  *
362
- * Also updates the booking's `paymentStatus`, if you specify a new payment
363
- * status.
327
+ * __Sequential scheduling__: To maintain sequential scheduling, remove only first or last single-service bookings. For middle bookings, first reschedule all relevant single-service bookings to eliminate gaps. To do so, call [Reschedule Multi Service Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/reschedule-multi-service-booking) before removing the unwanted bookings.
364
328
  *
365
- * ### Notify customers
329
+ * ### Removal behavior
366
330
  *
367
- * You can specify a `participantNotification.message` for the customer. To send
368
- * the message, you must also specify `participantNotification.notifyParticipants`
369
- * as `true`.
370
- * @param - ID of the booking to confirm.
371
- * @param - Revision number, which increments by 1 each time the booking is updated.
372
- * To prevent conflicting changes, the current revision must be passed when
373
- * updating the booking.
374
- * @param - An object representing the available options for canceling a booking.
375
- */
376
- (bookingId: string, revision: string, options?: ConfirmBookingOptions): Promise<NonNullablePaths<ConfirmBookingResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7> & {
377
- __applicationErrorsType?: ConfirmBookingApplicationErrors;
378
- }>;
379
- }
380
- declare function setBookingSubmissionId$1(httpClient: HttpClient): SetBookingSubmissionIdSignature;
381
- interface SetBookingSubmissionIdSignature {
382
- /**
383
- * Setting `submission_id` for a booking after the form submission is created.
384
- * @param - ID of the booking to set `submissionId` for.
385
- * @param - ID of the form submission to set on the booking.
331
+ * __Independent bookings__: Removed single-service bookings become independent bookings.
332
+ * You can manage them using single-service booking methods.
333
+ *
334
+ * __Automatic cleanup__: Multi-service bookings must contain at least 2 services.
335
+ * If removal results in only 1 remaining single-service booking for the multi-service booking, the entire multi-service booking is deleted and the remaining single-service booking becomes a standalone booking.
336
+ *
337
+ * __Revision control__: Specify current revision numbers to prevent conflicting modifications during the removal process.
338
+ * @param - ID of the multi-service booking.
386
339
  */
387
- (bookingId: string, submissionId: string): Promise<NonNullablePaths<SetBookingSubmissionIdResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7> & {
388
- __applicationErrorsType?: SetBookingSubmissionIdApplicationErrors;
340
+ (multiServiceBookingId: string, options?: RemoveBookingsFromMultiServiceBookingOptions): Promise<NonNullablePaths<RemoveBookingsFromMultiServiceBookingResponse, `bookings` | `bookings.${number}.booking.totalParticipants` | `bookings.${number}.booking.status` | `bookings.${number}.booking.paymentStatus` | `bookings.${number}.booking.selectedPaymentOption` | `bookings.${number}.booking.createdBy.anonymousVisitorId` | `bookings.${number}.booking.createdBy.memberId` | `bookings.${number}.booking.createdBy.wixUserId` | `bookings.${number}.booking.createdBy.appId`, 6> & {
341
+ __applicationErrorsType?: RemoveBookingsFromMultiServiceBookingApplicationErrors;
389
342
  }>;
390
343
  }
391
- declare function updateExtendedFields$1(httpClient: HttpClient): UpdateExtendedFieldsSignature;
392
- interface UpdateExtendedFieldsSignature {
344
+ declare function createBooking$1(httpClient: HttpClient): CreateBookingSignature;
345
+ interface CreateBookingSignature {
393
346
  /**
394
- * Updates the extended fields for a booking.
347
+ * Creates a booking.
395
348
  *
396
349
  *
397
- * If you specify an extended field `namespace` that doesn't exist yet, it's
398
- * created.
350
+ * ### Appointment booking
399
351
  *
400
- * Learn more about [extended fields](https://dev.wix.com/docs/build-apps/develop-your-app/extensions/backend-extensions/about-backend-extensions#schema-plugin-extensions).
401
- * @param - ID of the booking for which to update extended fields.
402
- * @param - [Namespace](https://dev.wix.com/docs/build-apps/develop-your-app/extensions/backend-extensions/schema-plugins/about-reading-and-writing-schema-plugin-fields#namespaces) of the app for which to update extended fields.
403
- * @param - Options for updating the booking's extended fields.
404
- */
405
- (_id: string, namespace: string, options: NonNullablePaths<UpdateExtendedFieldsOptions, `namespaceData`, 2>): Promise<NonNullablePaths<UpdateExtendedFieldsResponse, `namespace`, 2> & {
406
- __applicationErrorsType?: UpdateExtendedFieldsApplicationErrors;
407
- }>;
408
- }
409
- declare function declineBooking$1(httpClient: HttpClient): DeclineBookingSignature;
410
- interface DeclineBookingSignature {
411
- /**
412
- * Updates the booking status to `DECLINED` and updates the relevant session's
413
- * `participants.approvalStatus` to `DECLINED` without checking whether the relevant
414
- * slot or schedule is still available.
352
+ * For appointment-based services, specify the relevant time slot in `bookedEntity.slot`.
415
353
  *
354
+ * We recommend following the [appointment booking sample flow](https://dev.wix.com/docs/api-reference/business-solutions/bookings/bookings/bookings-writer-v2/sample-flows#book-an-appointment) using Time Slots V2.
355
+ * Specify the slot's `startDate`, `endDate`, `resource`, and `location` in `booking.bookedEntity.slot`.
416
356
  *
417
- * ### eCommerce checkout restriction
357
+ * ### Class session booking
418
358
  *
419
- * Call this method only when using a custom checkout page. Don't
420
- * call it when using a [Wix eCommerce checkout](https://dev.wix.com/docs/rest/business-solutions/e-commerce/checkout/introduction).
421
- * In such cases, Wix automatically updates the booking status based on
422
- * the `paymentStatus` of the corresponding [Wix eCommerce order](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction).
359
+ * For class services, specify the relevant event ID as `bookedEntity.slot.eventId`.
423
360
  *
424
- * ### When to call Confirm Or Decline Booking instead
361
+ * We recommend following the [class session booking sample flow](https://dev.wix.com/docs/api-reference/business-solutions/bookings/bookings/bookings-writer-v2/sample-flows#book-a-class-session) using Time Slots V2.
362
+ * Specify the `eventId` from the selected time slot in `booking.bookedEntity.slot.eventId`.
425
363
  *
426
- * The method doesn't check whether a slot or schedule is still available. For
427
- * these checks you can call [Confirm or Decline Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-or-decline-booking).
364
+ * When you specify `eventId`, Wix Bookings automatically derives `startDate`, `endDate`, `timezone`, `resource`, and `location` based on the event details. Manually specified values are ignored.
428
365
  *
429
- * ### Original status validation
366
+ * ### Course booking
430
367
  *
431
- * You can only decline bookings with a `status` of `PENDING`, `CREATED`, or
432
- * `WAITING_LIST`.
368
+ * For course services, specify the course's schedule ID in `bookedEntity.schedule.scheduleId`.
369
+ * We recommend following [this sample flow](https://dev.wix.com/docs/rest/business-solutions/bookings/end-to-end-booking-flows#book-a-course)
370
+ * to minimize failed calls due to unavailability.
433
371
  *
434
- * ### Payment status
372
+ * ### Booking status
435
373
  *
436
- * Also updates the booking's `paymentStatus`, if you specify a new payment
437
- * status.
374
+ * Create Booking defaults to `status=CREATED`. Such bookings aren't visible in the [Booking Calendar](https://support.wix.com/en/article/wix-bookings-about-the-wix-booking-calendar).
438
375
  *
439
- * ### Notify customers
376
+ * Only [identities](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities) with `Manage Bookings` permissions can set `status=CONFIRMED`.
440
377
  *
441
- * You can specify a `participantNotification.message` for the customer. To send
442
- * the message, you must also specify `participantNotification.notifyParticipants`
443
- * as `true`.
444
- * @param - ID of the booking to decline.
445
- * @param - Revision number, which increments by 1 each time the booking is updated.
378
+ * ### Related resources
446
379
  *
447
- * To prevent conflicting changes, the current revision must be specified when
448
- * declining the booking.
449
- * @param - An object representing the available options for declining a booking.
450
- */
451
- (bookingId: string, revision: string, options?: DeclineBookingOptions): Promise<NonNullablePaths<DeclineBookingResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7> & {
452
- __applicationErrorsType?: DeclineBookingApplicationErrors;
453
- }>;
454
- }
455
- declare function cancelBooking$1(httpClient: HttpClient): CancelBookingSignature;
456
- interface CancelBookingSignature {
457
- /**
458
- * Updates the booking status to `CANCELED`.
380
+ * Specifying a `resource` triggers an availability check, and the Create Booking call fails if the resource is unavailable.
459
381
  *
382
+ * If you omit `resource`, resource assignment and availability validation occur during booking confirmation.
383
+ * If no resources are available, the behavior depends on the confirmation method used and payment status.
460
384
  *
461
- * ### Appointments
385
+ * ### Booking form data
462
386
  *
463
- * For appointments, the corresponding event is removed from the Bookings
464
- * calendar.
387
+ * When customers sign up for a service, they must fill out the [booking form](https://support.wix.com/en/article/wix-bookings-creating-and-setting-up-your-booking-forms).
388
+ * To create a booking with a completed booking form, specify the relevant data in `formSubmission`.
389
+ * Ensure the values of the corresponding fields in `booking.contactDetails` and `formSubmission` are identical.
390
+ * If these values don't match, Create Booking fails.
391
+ * Therefore, we recommend specifying only `booking.contactDetails.contactId` when providing `formSubmission`.
392
+ * Learn more about the [Bookings and Wix Forms integration](https://dev.wix.com/docs/rest/business-solutions/bookings/wix-forms-integration).
465
393
  *
466
- * ### Class and course bookings
394
+ * ### Participant information
467
395
  *
468
- * For class or course bookings, the relevant participants are removed
469
- * from the class session or the course. However, the class session or course
470
- * remain on the business calendar.
396
+ * You must specify either `participantsChoices` or `totalParticipants`.
397
+ * The call fails if the specified `participantsChoices` aren't among the supported
398
+ * [service options and variants](https://dev.wix.com/docs/rest/business-solutions/bookings/services/service-options-and-variants/introduction).
399
+ *
400
+ * ### Add-ons
401
+ *
402
+ * You can include [add-ons](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/add-ons/introduction) when creating a booking by specifying `bookedAddOns`.
403
+ * Each selected add-on must belong to an [add-on group](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/services-v2/about-add-on-groups) associated with the service and respect the group's selection limits.
471
404
  *
472
405
  * ### Notify customers
473
406
  *
474
- * You can specify a `participantNotification.message` for the customer. To send
475
- * the message, you must also specify `participantNotification.notifyParticipants`
476
- * as `true`.
407
+ * You can specify a `participantNotification.message` for the customer that's send
408
+ * immediately. Ensure `participantNotification.notifyParticipants` is set to `true`
409
+ * to send the message.
410
+ *
411
+ * If you specify `{"sendSmsReminder": true}`, the customer receives an SMS 24 hours
412
+ * before the session starts. The phone number is taken from `contactDetails.phone`.
413
+ *
414
+ * ### Payment options
415
+ *
416
+ * The specified `selectedPaymentOption` indicates how the customer intends to pay, allowing for later changes to a different method supported by the service.
417
+ *
418
+ * ### Payment status
419
+ *
420
+ * All bookings are created with `paymentStatus=UNDEFINED`, ignoring the payment status you specify.
421
+ *
422
+ * For customers paying with a [Wix eCommerce checkout](https://dev.wix.com/docs/rest/business-solutions/e-commerce/purchase-flow/checkout/checkout/introduction), Wix Bookings automatically syncs the booking's payment status from the corresponding [eCommerce order](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction).
423
+ *
424
+ * For customers using a custom checkout, call [Confirm or Decline Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-or-decline-booking) to update booking's payment status manually.
477
425
  *
478
426
  * ### Admin overwrites
479
427
  *
480
428
  * There are small but important differences when you specify special
481
429
  * `flowControlSettings`:
482
430
  *
483
- * - `{"ignoreCancellationPolicy": true}`: The call succeeds even if the
484
- * service's `cancellationPolicy` doesn't allow it.
485
- * - `{"withRefund": true}`: The customer is refunded even if the service's
486
- * `refundPolicy` doesn't allow it.
487
- * - `{"waiveCancellationFee": true}`: The customer doesn't have to pay
488
- * the cancellation fee, even if the service's `cancellationPolicy` requires it.
431
+ * - `{"skipAvailabilityValidation": true}`: The call succeeds
432
+ * regardless of availability. If you don't specify any resource, the call
433
+ * succeeds even if no resource of the relevant type is available.
434
+ * - `{"skipBusinessConfirmation": true}`: Automatically confirms `PENDING`
435
+ * bookings that require manual confirmation.
436
+ * - `{"skipSelectedPaymentOptionValidation": true}`: Allows customers to pay
437
+ * with payment methods that aren't supported for the service.
438
+ * - `{"skipAddOnValidation": true}`: Allows customers to choose add-ons that aren't associated with the service or exceed group selection limits.
439
+ * - `{"allowAddOnChanges": true}`: Allows customers to update the list of add-ons associated with the booking when rescheduling.
489
440
  *
490
441
  * When using special `flowControlSettings`, ensure you have sufficient
491
442
  * permissions. If you encounter failed calls due to insufficient permissions,
@@ -500,411 +451,458 @@ interface CancelBookingSignature {
500
451
  * Granting additional permissions and using elevation permits method calls that
501
452
  * would typically fail due to authorization checks. Therefore, you should use
502
453
  * them intentionally and securely.
503
- * @param - ID of the booking to cancel.
504
- * @param - An object representing the available options for canceling a booking.
454
+ * @param - The booking to create.
505
455
  */
506
- (bookingId: string, options?: NonNullablePaths<CancelBookingOptions, `revision`, 2>): Promise<NonNullablePaths<CancelBookingResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7> & {
507
- __applicationErrorsType?: CancelBookingApplicationErrors;
456
+ (booking: NonNullablePaths<Booking, `additionalFields.${number}._id` | `bookedEntity`, 4>, options?: CreateBookingOptions): Promise<NonNullablePaths<CreateBookingResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7> & {
457
+ __applicationErrorsType?: CreateBookingApplicationErrors;
508
458
  }>;
509
459
  }
510
- declare function updateNumberOfParticipants$1(httpClient: HttpClient): UpdateNumberOfParticipantsSignature;
511
- interface UpdateNumberOfParticipantsSignature {
460
+ declare function bulkCreateBooking$1(httpClient: HttpClient): BulkCreateBookingSignature;
461
+ interface BulkCreateBookingSignature {
512
462
  /**
513
- * Updates the number of participants for a class or course booking and changes
514
- * the `totalNumberOfParticipants` for the relevant sessions.
463
+ * Creates up to 8 bookings.
515
464
  *
516
465
  *
517
- * ### Appointment limitation
466
+ * See [Create Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/create-booking)
467
+ * for more information.
518
468
  *
519
- * You can't update the number of participants for appointment bookings.
469
+ * If any of the specified bookings is missing a required field the entire call
470
+ * fails.
520
471
  *
521
- * ### Participant information
472
+ * If you specify 1 or more unavailable bookings, the call succeeds
473
+ * while the unavailable bookings aren't created. Instead, they're counted as
474
+ * failures in the returned `bulkActionMetadata`.
475
+ * @param - Bookings to create.
522
476
  *
523
- * You must specify either `participantsChoices` or `totalParticipants`.
524
- * The call fails if the specified `participantsChoices` aren't among the
525
- * supported [service options and variants](https://dev.wix.com/docs/rest/business-solutions/bookings/services/service-options-and-variants/introduction).
526
- * @param - ID of the booking to update the number of participants for.
477
+ * Max: 8 bookings
527
478
  */
528
- (bookingId: string, options?: NonNullablePaths<UpdateNumberOfParticipantsOptions, `revision`, 2>): Promise<NonNullablePaths<UpdateNumberOfParticipantsResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7> & {
529
- __applicationErrorsType?: UpdateNumberOfParticipantsApplicationErrors;
479
+ (createBookingsInfo: NonNullablePaths<CreateBookingInfo, `booking` | `booking.additionalFields.${number}._id` | `booking.bookedEntity`, 5>[], options?: BulkCreateBookingOptions): Promise<NonNullablePaths<BulkCreateBookingResponse, `results` | `results.${number}.itemMetadata.originalIndex` | `results.${number}.itemMetadata.success` | `results.${number}.itemMetadata.error.code` | `results.${number}.itemMetadata.error.description` | `results.${number}.item.totalParticipants` | `results.${number}.item.status` | `results.${number}.item.paymentStatus` | `results.${number}.item.selectedPaymentOption` | `results.${number}.item.createdBy.anonymousVisitorId` | `results.${number}.item.createdBy.memberId` | `results.${number}.item.createdBy.wixUserId` | `results.${number}.item.createdBy.appId` | `bulkActionMetadata.totalSuccesses` | `bulkActionMetadata.totalFailures` | `bulkActionMetadata.undetailedFailures`, 6> & {
480
+ __applicationErrorsType?: BulkCreateBookingApplicationErrors;
530
481
  }>;
531
482
  }
532
- declare function markBookingAsPending$1(httpClient: HttpClient): MarkBookingAsPendingSignature;
533
- interface MarkBookingAsPendingSignature {
483
+ declare function rescheduleBooking$1(httpClient: HttpClient): RescheduleBookingSignature;
484
+ interface RescheduleBookingSignature {
534
485
  /**
535
- * Updates the booking status to `PENDING`.
536
- *
537
- *
538
- * ### Service requirement
539
- *
540
- * By default, this method only works for [services](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/introduction) with `service.onlineBooking.requireManualApproval` set to `true`.
541
- * If you attempt to mark a booking as pending for a service that doesn't require approval, the call fails unless you use the `skipPendingApprovalServiceValidation` admin overwrite.
542
- *
543
- * ### Status requirements
544
- *
545
- * - __Original status__: Booking must have `CREATED` status.
546
- * - __Target status__: Booking moves to `PENDING`.
547
- *
548
- * ### Checkout restrictions
486
+ * Reschedules an appointment booking to a different slot or a class booking to
487
+ * a different session.
549
488
  *
550
- * Only call this method if the customer paid via a custom checkout. For [Wix eCommerce checkouts](https://dev.wix.com/docs/rest/business-solutions/e-commerce/purchase-flow/checkout/introduction), Wix Bookings automatically manages the bookings' statuses based on payment processing.
551
489
  *
552
- * When using custom checkouts, you can also update the booking's `paymentStatus` by specifying a new payment status.
490
+ * ### Updating add-ons
553
491
  *
554
- * ### Business workflow
492
+ * You can also call this method to update the list of [add-ons](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/add-ons/introduction) associated with the booking.
493
+ * To do so, both of these conditions must be met:
494
+ * + The booking must have been created with `flowControlSettings.allowAddOnChanges` set to `true`.
495
+ * + You must have `BOOKINGS.MANAGE_ADDONS` permissions and specify `flowControlSettings.allowAddOnChanges` as `true`.
555
496
  *
556
- * After marking a booking as `PENDING`, the business must manually approve or reject it. You can call these methods:
557
- * - [Confirm Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-booking).
558
- * - [Decline Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/decline-booking).
497
+ * ### Course booking limitation
559
498
  *
560
- * ### Resource availability and scheduling
499
+ * You can't reschedule course bookings.
561
500
  *
562
- * Marking a booking as `PENDING` immediately affects resource availability:
501
+ * ### Appointment sessions
563
502
  *
564
- * - **Calendar impact**: The booking appears on the business calendar.
565
- * - **Availability**: The time slot becomes unavailable for other bookings, even while pending approval.
566
- * - **Resource assignment**: Available [resources](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/resources-v2/introduction) are automatically assigned if none were explicitly selected during booking creation.
503
+ * For appointments, the old session is removed from the business calendar
504
+ * while a new session is added. We recommend calling [Query Availability](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/availability-calendar/query-availability)
505
+ * first and specifying the entire retrieved `slot`.
567
506
  *
568
- * ### Double bookings
507
+ * ### Class sessions
569
508
  *
570
- * By default, the method doesn't check for availability conflicts. To detect and handle double bookings, use the `checkAvailabilityValidation: true` admin overwrite.
509
+ * For classes, the new session must be an existing session belonging to the
510
+ * same class. We recommend retrieving `availabilityEntries.slot.eventId`
511
+ * from [Query Availability](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/availability-calendar/query-availability)
512
+ * to avoid failed Reschedule Booking calls due to unavailability. Specify
513
+ * only `slot.eventId` instead of the entire `slot` object.
571
514
  *
572
515
  * ### Notify customers
573
516
  *
574
- * You can specify a `participantNotification.message` for the customer.
575
- * To send the message, you must also specify `participantNotification.notifyParticipants` as `true`.
517
+ * You can specify a `participantNotification.message` for the customer. To send
518
+ * the message, you must also specify `participantNotification.notifyParticipants`
519
+ * as `true`.
576
520
  *
577
521
  * ### Admin overwrites
578
522
  *
579
523
  * There are small but important differences when you specify special
580
524
  * `flowControlSettings`:
581
525
  *
582
- * - `{"checkAvailabilityValidation": true}`: Checks for double booking conflicts before updating the status.
583
- * When conflicts exist, the booking is still marked as `PENDING` and `doubleBooked` is set to `true` for the business to resolve manually.
584
- * - `{"skipPendingApprovalServiceValidation": true}`: Allows marking any booking as pending, even if the service doesn't require manual approval.
526
+ * - `{"ignoreReschedulePolicy": true}`: The call succeeds even if the
527
+ * service's `reschedulePolicy` doesn't allow it.
528
+ * - `{"skipAvailabilityValidation": true}`: The call succeeds even if
529
+ * the specified session, slot, or resource isn't available. If you don't
530
+ * specify any resource, the call succeeds even if no resource of the relevant
531
+ * type is available.
532
+ * - `{"skipBusinessConfirmation": true}`: Any `PENDING` booking is
533
+ * automatically confirmed even if the services requires the merchants's
534
+ * manual confirmation.
585
535
  *
586
- * When using special `flowControlSettings`, ensure you have sufficient permissions.
587
- * If you encounter failed calls due to insufficient permissions, consider the following options:
536
+ * When using special `flowControlSettings`, ensure you have sufficient
537
+ * permissions. If you encounter failed calls due to insufficient permissions,
538
+ * consider the following options:
588
539
  *
589
- * - __App developers__ can use a higher
590
- * [permission](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions), such as `MANAGE BOOKINGS - ALL PERMISSIONS`.
591
- * - __Site developers__ can utilize
540
+ * - **App developers** can use a higher
541
+ * [permission](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions),
542
+ * such as `MANAGE BOOKINGS - ALL PERMISSIONS`.
543
+ * - **Site developers** can utilize
592
544
  * [elevation](https://dev.wix.com/docs/develop-websites/articles/coding-with-velo/authorization/elevation).
593
545
  *
594
- * Granting additional permissions and using elevation permits method calls that would typically fail due to authorization checks.
595
- * Therefore, you should use them intentionally and securely.
596
- * @param - ID of the booking to mark as `PENDING`.
597
- * @param - Revision number, which increments by 1 each time the booking is updated.
598
- *
599
- * To prevent conflicting changes, the current revision must be specified when
600
- * managing the booking.
546
+ * Granting additional permissions and using elevation permits method calls that
547
+ * would typically fail due to authorization checks. Therefore, you should use
548
+ * them intentionally and securely.
549
+ * @param - ID of the booking to reschedule.
550
+ * @param - New slot of the booking.
551
+ * @param - An object representing the available options for rescheduling a booking.
601
552
  */
602
- (bookingId: string, revision: string, options?: MarkBookingAsPendingOptions): Promise<NonNullablePaths<MarkBookingAsPendingResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7> & {
603
- __applicationErrorsType?: MarkBookingAsPendingApplicationErrors;
553
+ (bookingId: string, slot: V2Slot, options?: NonNullablePaths<RescheduleBookingOptions, `revision`, 2>): Promise<NonNullablePaths<RescheduleBookingResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7> & {
554
+ __applicationErrorsType?: RescheduleBookingApplicationErrors;
604
555
  }>;
605
556
  }
606
- declare function createMultiServiceBooking$1(httpClient: HttpClient): CreateMultiServiceBookingSignature;
607
- interface CreateMultiServiceBookingSignature {
557
+ declare function confirmBooking$1(httpClient: HttpClient): ConfirmBookingSignature;
558
+ interface ConfirmBookingSignature {
608
559
  /**
609
- * Creates a multi-service booking and all included single-service bookings simultaneously.
560
+ * Updates the booking status to `CONFIRMED` without checking whether the relevant slot or schedule is still available.
610
561
  *
611
562
  *
612
- * ### When to call this method
563
+ * ### eCommerce checkout restriction
613
564
  *
614
- * Create sequential appointments where customers book related services together. For adding existing single-service bookings to an existing multi-service booking, call [Add Bookings to Multi Service Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/add-bookings-to-multi-service-booking) instead.
565
+ * Call this method only when using a custom checkout page. Don't
566
+ * call it when using a [Wix eCommerce checkout](https://dev.wix.com/docs/rest/business-solutions/e-commerce/checkout/introduction).
567
+ * In such cases, Wix automatically updates the booking status based on
568
+ * the `paymentStatus` of the corresponding [Wix eCommerce order](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction).
615
569
  *
616
- * ### Requirements and behavior
570
+ * ### When to call Confirm Or Decline Booking instead
617
571
  *
618
- * __Package constraints__: Multi-service bookings support 2-8 appointment-based single-service bookings only (course and class bookings aren't supported). All single-service bookings must be at the same location with sequential scheduling and no gaps between appointments.
572
+ * Confirm Booking doesn't check whether a slot or schedule is still available.
573
+ * For these checks, call [Confirm or Decline Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-or-decline-booking) instead.
619
574
  *
620
- * __Timing specification__: You must provide complete `slot` details (`scheduleId`, `startDate`, `endDate`) for each single-service booking. Wix Bookings validates sequential timing but doesn't auto-calculate it.
575
+ * ### Original status validation
621
576
  *
622
- * __Package pricing__: The total price equals the sum of individual services. Wix Bookings automatically syncs the payment status from the corresponding [Wix eCommerce order](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction) if the customer paid via an [eCommerce checkout](https://dev.wix.com/docs/rest/business-solutions/e-commerce/checkout/introduction).
577
+ * You can only confirm bookings with a status of `PENDING`, `CREATED`, or
578
+ * `WAITING_LIST`.
623
579
  *
624
- * __Package notifications__: Customers receive 1 unified notification for the entire multi-service booking. Wix Bookings doesn't send notifications for the package's individual single-service bookings.
580
+ * ### Double bookings
625
581
  *
626
- * ### Related methods
582
+ * Confirm Booking doesn't check whether a slot or schedule is still available.
583
+ * You can specify
627
584
  *
628
- * Verify availability first with [List Multi Service Availability Time Slots](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/time-slots-v2/list-multi-service-availability-time-slots).
585
+ * ```json
586
+ * {
587
+ * "flowControlSettings": {
588
+ * "checkAvailabilityValidation": true
589
+ * },
590
+ * "doubleBooked": true
591
+ * }
592
+ * ```
593
+ * to forcefully set the booking's `doubleBooked` flag to `true`, regardless of
594
+ * a potential double booking conflict. You must call with `Manage Bookings`
595
+ * permissions to do so. For the default flow control settings
596
+ * `{"checkAvailabilityValidation": false}`, the specified `doubleBooked` value
597
+ * is ignored.
629
598
  *
630
- * See [Create Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/create-booking) for more details about constraints and effects of creating single-service bookings.
631
- * @param - Between 2 to 8 new single-service booking specifications to create and combine in a multi-service booking.
599
+ * ### Payment status
632
600
  *
633
- * Each single-service booking specification must include `slot` details (`scheduleId`, `startDate`, and `endDate`).
634
- * Specify contact details, number of participants, and any additional fields as needed.
601
+ * Also updates the booking's `paymentStatus`, if you specify a new payment
602
+ * status.
635
603
  *
636
- * For sequential bookings, ensure the timing allows services to be scheduled back-to-back.
604
+ * ### Notify customers
605
+ *
606
+ * You can specify a `participantNotification.message` for the customer. To send
607
+ * the message, you must also specify `participantNotification.notifyParticipants`
608
+ * as `true`.
609
+ * @param - ID of the booking to confirm.
610
+ * @param - Revision number, which increments by 1 each time the booking is updated.
611
+ * To prevent conflicting changes, the current revision must be passed when
612
+ * updating the booking.
613
+ * @param - An object representing the available options for canceling a booking.
637
614
  */
638
- (bookings: NonNullablePaths<Booking, `additionalFields.${number}._id` | `bookedEntity` | `bookedEntity.slot` | `bookedEntity.slot.endDate` | `bookedEntity.slot.location.locationType` | `bookedEntity.slot.scheduleId` | `bookedEntity.slot.startDate`, 5>[], options?: CreateMultiServiceBookingOptions): Promise<NonNullablePaths<CreateMultiServiceBookingResponse, `multiServiceBooking.bookings` | `multiServiceBooking.bookings.${number}.booking.totalParticipants` | `multiServiceBooking.bookings.${number}.booking.status` | `multiServiceBooking.bookings.${number}.booking.paymentStatus` | `multiServiceBooking.bookings.${number}.booking.selectedPaymentOption` | `multiServiceBooking.bookings.${number}.booking.createdBy.anonymousVisitorId` | `multiServiceBooking.bookings.${number}.booking.createdBy.memberId` | `multiServiceBooking.bookings.${number}.booking.createdBy.wixUserId` | `multiServiceBooking.bookings.${number}.booking.createdBy.appId`, 7> & {
639
- __applicationErrorsType?: CreateMultiServiceBookingApplicationErrors;
615
+ (bookingId: string, revision: string, options?: ConfirmBookingOptions): Promise<NonNullablePaths<ConfirmBookingResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7> & {
616
+ __applicationErrorsType?: ConfirmBookingApplicationErrors;
640
617
  }>;
641
618
  }
642
- declare function rescheduleMultiServiceBooking$1(httpClient: HttpClient): RescheduleMultiServiceBookingSignature;
643
- interface RescheduleMultiServiceBookingSignature {
619
+ declare function setBookingSubmissionId$1(httpClient: HttpClient): SetBookingSubmissionIdSignature;
620
+ interface SetBookingSubmissionIdSignature {
644
621
  /**
645
- * Reschedules a multi-service booking by changing the timing for all or specific single-service bookings in the package.
646
- *
647
- *
648
- * This method reschedules single-service bookings within the multi-service booking while maintaining sequential order. You must specify exact new timing for each service to ensure they remain back-to-back with no gaps or overlaps.
649
- *
650
- * This method fails if it can't reschedule at least 1 single-service booking. You must provide the current revision number for each single-service booking you're rescheduling to prevent conflicting changes.
651
- *
652
- * See [Reschedule Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/reschedule-booking) for single-service booking rescheduling details.
653
- * @param - ID of the multi-service booking to reschedule.
654
- * @param - Information about the single-service bookings to reschedule.
622
+ * Setting `submission_id` for a booking after the form submission is created.
623
+ * @param - ID of the booking to set `submissionId` for.
624
+ * @param - ID of the form submission to set on the booking.
655
625
  */
656
- (multiServiceBookingId: string, rescheduleBookingsInfo: NonNullablePaths<RescheduleBookingInfo, `bookingId` | `revision` | `slot`, 2>[], options?: RescheduleMultiServiceBookingOptions): Promise<NonNullablePaths<RescheduleMultiServiceBookingResponse, `multiServiceBooking.bookings` | `multiServiceBooking.bookings.${number}.booking.totalParticipants` | `multiServiceBooking.bookings.${number}.booking.status` | `multiServiceBooking.bookings.${number}.booking.paymentStatus` | `multiServiceBooking.bookings.${number}.booking.selectedPaymentOption` | `multiServiceBooking.bookings.${number}.booking.createdBy.anonymousVisitorId` | `multiServiceBooking.bookings.${number}.booking.createdBy.memberId` | `multiServiceBooking.bookings.${number}.booking.createdBy.wixUserId` | `multiServiceBooking.bookings.${number}.booking.createdBy.appId`, 7> & {
657
- __applicationErrorsType?: RescheduleMultiServiceBookingApplicationErrors;
626
+ (bookingId: string, submissionId: string): Promise<NonNullablePaths<SetBookingSubmissionIdResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7> & {
627
+ __applicationErrorsType?: SetBookingSubmissionIdApplicationErrors;
658
628
  }>;
659
629
  }
660
- declare function getMultiServiceBookingAvailability$1(httpClient: HttpClient): GetMultiServiceBookingAvailabilitySignature;
661
- interface GetMultiServiceBookingAvailabilitySignature {
630
+ declare function updateExtendedFields$1(httpClient: HttpClient): UpdateExtendedFieldsSignature;
631
+ interface UpdateExtendedFieldsSignature {
662
632
  /**
663
- * Checks if the business can still accommodate an existing multi-service booking and returns overall bookability status, capacity details, and policy violations.
664
- *
633
+ * Updates the extended fields for a booking.
665
634
  *
666
- * Wix Bookings considers:
667
- * - The relevant services' [booking policies](https://dev.wix.com/docs/rest/business-solutions/bookings/policies/booking-policies/introduction).
668
- * - The availability of all required [resources](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/resources-v2/introduction).
669
635
  *
670
- * Call this method to check if an existing multi-service booking is still valid after business configuration changes.
671
- * For example, staff changes, policy updates, or capacity modifications.
636
+ * If you specify an extended field `namespace` that doesn't exist yet, it's
637
+ * created.
672
638
  *
673
- * For checking availability before creating new multi-service bookings, call [List Multi Service Availability Time Slots](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/time-slots-v2/list-multi-service-availability-time-slots) instead.
674
- * @param - ID of the multi-service booking to retrieve.
639
+ * Learn more about [extended fields](https://dev.wix.com/docs/build-apps/develop-your-app/extensions/backend-extensions/about-backend-extensions#schema-plugin-extensions).
640
+ * @param - ID of the booking for which to update extended fields.
641
+ * @param - [Namespace](https://dev.wix.com/docs/build-apps/develop-your-app/extensions/backend-extensions/schema-plugins/about-reading-and-writing-schema-plugin-fields#namespaces) of the app for which to update extended fields.
642
+ * @param - Options for updating the booking's extended fields.
675
643
  */
676
- (multiServiceBookingId: string): Promise<NonNullablePaths<GetMultiServiceBookingAvailabilityResponse, `bookable` | `multiServiceBookingInfo`, 2> & {
677
- __applicationErrorsType?: GetMultiServiceBookingAvailabilityApplicationErrors;
644
+ (_id: string, namespace: string, options: NonNullablePaths<UpdateExtendedFieldsOptions, `namespaceData`, 2>): Promise<NonNullablePaths<UpdateExtendedFieldsResponse, `namespace`, 2> & {
645
+ __applicationErrorsType?: UpdateExtendedFieldsApplicationErrors;
678
646
  }>;
679
647
  }
680
- declare function cancelMultiServiceBooking$1(httpClient: HttpClient): CancelMultiServiceBookingSignature;
681
- interface CancelMultiServiceBookingSignature {
648
+ declare function declineBooking$1(httpClient: HttpClient): DeclineBookingSignature;
649
+ interface DeclineBookingSignature {
682
650
  /**
683
- * Cancels a multi-service booking and all its associated single-service bookings.
651
+ * Updates the booking status to `DECLINED` and updates the relevant session's
652
+ * `participants.approvalStatus` to `DECLINED` without checking whether the relevant
653
+ * slot or schedule is still available.
684
654
  *
685
655
  *
686
- * Cancels the entire multi-service booking, updating the status of all single-service bookings to `CANCELED`.
687
- * The call fails if all single-service bookings are already canceled or declined.
656
+ * ### eCommerce checkout restriction
688
657
  *
689
- * See [Cancel Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/cancel-booking) for single-service booking cancellation details.
690
- * @param - ID of the multi-service booking to cancel.
691
- */
692
- (multiServiceBookingId: string, options?: CancelMultiServiceBookingOptions): Promise<NonNullablePaths<CancelMultiServiceBookingResponse, `multiServiceBooking.bookings` | `multiServiceBooking.bookings.${number}.booking.totalParticipants` | `multiServiceBooking.bookings.${number}.booking.status` | `multiServiceBooking.bookings.${number}.booking.paymentStatus` | `multiServiceBooking.bookings.${number}.booking.selectedPaymentOption` | `multiServiceBooking.bookings.${number}.booking.createdBy.anonymousVisitorId` | `multiServiceBooking.bookings.${number}.booking.createdBy.memberId` | `multiServiceBooking.bookings.${number}.booking.createdBy.wixUserId` | `multiServiceBooking.bookings.${number}.booking.createdBy.appId`, 7> & {
693
- __applicationErrorsType?: CancelMultiServiceBookingApplicationErrors;
694
- }>;
695
- }
696
- declare function markMultiServiceBookingAsPending$1(httpClient: HttpClient): MarkMultiServiceBookingAsPendingSignature;
697
- interface MarkMultiServiceBookingAsPendingSignature {
698
- /**
699
- * Updates the status for all single-service bookings in a multi-service booking to `PENDING`.
658
+ * Call this method only when using a custom checkout page. Don't
659
+ * call it when using a [Wix eCommerce checkout](https://dev.wix.com/docs/rest/business-solutions/e-commerce/checkout/introduction).
660
+ * In such cases, Wix automatically updates the booking status based on
661
+ * the `paymentStatus` of the corresponding [Wix eCommerce order](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction).
700
662
  *
663
+ * ### When to call Confirm Or Decline Booking instead
701
664
  *
702
- * Call this method for multi-service bookings requiring manual business approval before confirmation.
665
+ * The method doesn't check whether a slot or schedule is still available. For
666
+ * these checks you can call [Confirm or Decline Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-or-decline-booking).
703
667
  *
704
- * ### Status requirements
668
+ * ### Original status validation
705
669
  *
706
- * - __Original status__: All single-service bookings must have `CREATED` status.
707
- * - __Target status__: All bookings move to `PENDING` together (all-or-nothing operation).
670
+ * You can only decline bookings with a `status` of `PENDING`, `CREATED`, or
671
+ * `WAITING_LIST`.
708
672
  *
709
- * ### Checkout restrictions
673
+ * ### Payment status
710
674
  *
711
- * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,
712
- * Wix Bookings automatically manages the bookings' statuses based on payment processing.
675
+ * Also updates the booking's `paymentStatus`, if you specify a new payment
676
+ * status.
713
677
  *
714
- * ### Additional updates
678
+ * ### Notify customers
715
679
  *
716
- * - __Payment status__: Updates if you specify a new `markAsPendingBookingsInfo.paymentStatus`.
717
- * - __Customer notifications__: Send messages using `participantNotification`.
718
- * - __Revision control__: Requires current revision numbers for all single-service bookings.
680
+ * You can specify a `participantNotification.message` for the customer. To send
681
+ * the message, you must also specify `participantNotification.notifyParticipants`
682
+ * as `true`.
683
+ * @param - ID of the booking to decline.
684
+ * @param - Revision number, which increments by 1 each time the booking is updated.
719
685
  *
720
- * See [Mark Booking as Pending](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/mark-booking-as-pending) for more details about marking single-service bookings as pending.
721
- * @param - ID of the multi-service booking to mark as `PENDING`.
686
+ * To prevent conflicting changes, the current revision must be specified when
687
+ * declining the booking.
688
+ * @param - An object representing the available options for declining a booking.
722
689
  */
723
- (multiServiceBookingId: string, options?: MarkMultiServiceBookingAsPendingOptions): Promise<NonNullablePaths<MarkMultiServiceBookingAsPendingResponse, `multiServiceBooking.bookings` | `multiServiceBooking.bookings.${number}.booking.totalParticipants` | `multiServiceBooking.bookings.${number}.booking.status` | `multiServiceBooking.bookings.${number}.booking.paymentStatus` | `multiServiceBooking.bookings.${number}.booking.selectedPaymentOption` | `multiServiceBooking.bookings.${number}.booking.createdBy.anonymousVisitorId` | `multiServiceBooking.bookings.${number}.booking.createdBy.memberId` | `multiServiceBooking.bookings.${number}.booking.createdBy.wixUserId` | `multiServiceBooking.bookings.${number}.booking.createdBy.appId`, 7> & {
724
- __applicationErrorsType?: MarkMultiServiceBookingAsPendingApplicationErrors;
690
+ (bookingId: string, revision: string, options?: DeclineBookingOptions): Promise<NonNullablePaths<DeclineBookingResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7> & {
691
+ __applicationErrorsType?: DeclineBookingApplicationErrors;
725
692
  }>;
726
693
  }
727
- declare function confirmMultiServiceBooking$1(httpClient: HttpClient): ConfirmMultiServiceBookingSignature;
728
- interface ConfirmMultiServiceBookingSignature {
694
+ declare function cancelBooking$1(httpClient: HttpClient): CancelBookingSignature;
695
+ interface CancelBookingSignature {
729
696
  /**
730
- * Updates the status for all single-service bookings in a multi-service booking to `CONFIRMED`.
731
- *
732
- *
733
- * Call this method for multi-service bookings requiring manual business approval.
734
- *
735
- * ### Status requirements
736
- *
737
- * - __Original status__: All single-service bookings must have `PENDING`, `CREATED`, or `WAITING_LIST` status.
738
- * - __Target status__: All bookings move to `CONFIRMED` together (all-or-nothing operation).
739
- *
740
- * ### Checkout restrictions
697
+ * Updates the booking status to `CANCELED`.
741
698
  *
742
- * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,
743
- * Wix Bookings automatically manages the bookings' statuses based on payment processing.
744
699
  *
745
- * ### Additional updates
700
+ * ### Appointments
746
701
  *
747
- * - __Payment status__: Updates if you specify a new `confirmBookingsInfo.paymentStatus`.
748
- * - __Customer notifications__: Send messages using `participantNotification`.
749
- * - __Revision control__: Requires current revision numbers for all single-service bookings.
702
+ * For appointments, the corresponding event is removed from the Bookings
703
+ * calendar.
750
704
  *
751
- * See [Confirm Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-booking) for more details about confirming single-service bookings.
752
- * @param - ID of the multi-service booking to confirm its related bookings.
753
- */
754
- (multiServiceBookingId: string, options?: ConfirmMultiServiceBookingOptions): Promise<NonNullablePaths<ConfirmMultiServiceBookingResponse, `multiServiceBooking.bookings` | `multiServiceBooking.bookings.${number}.booking.totalParticipants` | `multiServiceBooking.bookings.${number}.booking.status` | `multiServiceBooking.bookings.${number}.booking.paymentStatus` | `multiServiceBooking.bookings.${number}.booking.selectedPaymentOption` | `multiServiceBooking.bookings.${number}.booking.createdBy.anonymousVisitorId` | `multiServiceBooking.bookings.${number}.booking.createdBy.memberId` | `multiServiceBooking.bookings.${number}.booking.createdBy.wixUserId` | `multiServiceBooking.bookings.${number}.booking.createdBy.appId`, 7> & {
755
- __applicationErrorsType?: ConfirmMultiServiceBookingApplicationErrors;
756
- }>;
757
- }
758
- declare function declineMultiServiceBooking$1(httpClient: HttpClient): DeclineMultiServiceBookingSignature;
759
- interface DeclineMultiServiceBookingSignature {
760
- /**
761
- * Updates the status for all single-service bookings in a multi-service booking to `DECLINED`.
705
+ * ### Class and course bookings
762
706
  *
707
+ * For class or course bookings, the relevant participants are removed
708
+ * from the class session or the course. However, the class session or course
709
+ * remain on the business calendar.
763
710
  *
764
- * Call this method to reject multi-service bookings that can't be accommodated or don't meet business requirements.
711
+ * ### Notify customers
765
712
  *
766
- * ### Status requirements
713
+ * You can specify a `participantNotification.message` for the customer. To send
714
+ * the message, you must also specify `participantNotification.notifyParticipants`
715
+ * as `true`.
767
716
  *
768
- * - __Original status__: All single-service bookings must have `PENDING`, `CREATED`, or `WAITING_LIST` status.
769
- * - __Target status__: All bookings move to `DECLINED` together (all-or-nothing operation).
717
+ * ### Admin overwrites
770
718
  *
771
- * ### Checkout restrictions
719
+ * There are small but important differences when you specify special
720
+ * `flowControlSettings`:
772
721
  *
773
- * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,
774
- * Wix Bookings automatically manages the bookings' statuses based on payment processing.
722
+ * - `{"ignoreCancellationPolicy": true}`: The call succeeds even if the
723
+ * service's `cancellationPolicy` doesn't allow it.
724
+ * - `{"withRefund": true}`: The customer is refunded even if the service's
725
+ * `refundPolicy` doesn't allow it.
726
+ * - `{"waiveCancellationFee": true}`: The customer doesn't have to pay
727
+ * the cancellation fee, even if the service's `cancellationPolicy` requires it.
775
728
  *
776
- * ### Additional updates
729
+ * When using special `flowControlSettings`, ensure you have sufficient
730
+ * permissions. If you encounter failed calls due to insufficient permissions,
731
+ * consider the following options:
777
732
  *
778
- * - __Payment status__: Updates if you specify a new `declineBookingsInfo.paymentStatus`.
779
- * - __Customer notifications__: Send messages using `participantNotification`.
780
- * - __Revision control__: Requires current revision numbers for all single-service bookings.
733
+ * - **App developers** can use a higher
734
+ * [permission](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions),
735
+ * such as `MANAGE BOOKINGS - ALL PERMISSIONS`.
736
+ * - **Site developers** can utilize
737
+ * [elevation](https://dev.wix.com/docs/develop-websites/articles/coding-with-velo/authorization/elevation).
781
738
  *
782
- * Refer to [Decline Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/decline-booking) for more details about declining single-service bookings.
783
- * @param - ID of the multi-service booking to decline.
739
+ * Granting additional permissions and using elevation permits method calls that
740
+ * would typically fail due to authorization checks. Therefore, you should use
741
+ * them intentionally and securely.
742
+ * @param - ID of the booking to cancel.
743
+ * @param - An object representing the available options for canceling a booking.
784
744
  */
785
- (multiServiceBookingId: string, options?: DeclineMultiServiceBookingOptions): Promise<NonNullablePaths<DeclineMultiServiceBookingResponse, `multiServiceBooking.bookings` | `multiServiceBooking.bookings.${number}.booking.totalParticipants` | `multiServiceBooking.bookings.${number}.booking.status` | `multiServiceBooking.bookings.${number}.booking.paymentStatus` | `multiServiceBooking.bookings.${number}.booking.selectedPaymentOption` | `multiServiceBooking.bookings.${number}.booking.createdBy.anonymousVisitorId` | `multiServiceBooking.bookings.${number}.booking.createdBy.memberId` | `multiServiceBooking.bookings.${number}.booking.createdBy.wixUserId` | `multiServiceBooking.bookings.${number}.booking.createdBy.appId`, 7> & {
786
- __applicationErrorsType?: DeclineMultiServiceBookingApplicationErrors;
745
+ (bookingId: string, options?: NonNullablePaths<CancelBookingOptions, `revision`, 2>): Promise<NonNullablePaths<CancelBookingResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7> & {
746
+ __applicationErrorsType?: CancelBookingApplicationErrors;
787
747
  }>;
788
748
  }
789
- declare function bulkGetMultiServiceBookingAllowedActions$1(httpClient: HttpClient): BulkGetMultiServiceBookingAllowedActionsSignature;
790
- interface BulkGetMultiServiceBookingAllowedActionsSignature {
749
+ declare function updateNumberOfParticipants$1(httpClient: HttpClient): UpdateNumberOfParticipantsSignature;
750
+ interface UpdateNumberOfParticipantsSignature {
791
751
  /**
792
- * Retrieves information about which actions the customer can perform for up to 50 multi-service bookings.
793
- *
752
+ * Updates the number of participants for a class or course booking and changes
753
+ * the `totalNumberOfParticipants` for the relevant sessions.
794
754
  *
795
- * For each multi-service booking, the response indicates which actions are currently allowed:
796
- * - `cancel`: Whether the customer can cancel the multi-service booking.
797
- * - `reschedule`: Whether the customer can adjust the multi-service booking's timing.
798
755
  *
799
- * Bear the following considerations in mind when calling this method:
756
+ * ### Appointment limitation
800
757
  *
801
- * __Real-time validation__: Wix Bookings calculates allowed actions based on current multi-service booking status, [booking policies](https://dev.wix.com/docs/rest/business-solutions/bookings/policies/booking-policies/introduction), and [available resources](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/resources-v2/introduction) at the time of the call.
758
+ * You can't update the number of participants for appointment bookings.
802
759
  *
803
- * __Permission context__: Depending on the permissions of the calling [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities), you may see different allowed actions for the same multi-service booking. For example, if the identity has permissions to read only part of the multi-service booking, the response indicates which single-service bookings the identity can read.
760
+ * ### Participant information
804
761
  *
805
- * __Status dependencies__: Allowed actions change as bookings progress through their lifecycle (`CREATED` `PENDING` → `CONFIRMED`/`DECLINED` → `CANCELED`).
806
- * Bookings can skip `PENDING` and move directly from `CREATED` to `CONFIRMED`/`DECLINED` based on service configuration.
807
- * @param - IDs of the multi-service bookings to retrieve allowed actions for.
762
+ * You must specify either `participantsChoices` or `totalParticipants`.
763
+ * The call fails if the specified `participantsChoices` aren't among the
764
+ * supported [service options and variants](https://dev.wix.com/docs/rest/business-solutions/bookings/services/service-options-and-variants/introduction).
765
+ * @param - ID of the booking to update the number of participants for.
808
766
  */
809
- (multiServiceBookingIds: string[]): Promise<NonNullablePaths<BulkGetMultiServiceBookingAllowedActionsResponse, `results` | `results.${number}.itemMetadata.originalIndex` | `results.${number}.itemMetadata.success` | `results.${number}.itemMetadata.error.code` | `results.${number}.itemMetadata.error.description` | `results.${number}.item.cancel` | `results.${number}.item.reschedule` | `bulkActionMetadata.totalSuccesses` | `bulkActionMetadata.totalFailures` | `bulkActionMetadata.undetailedFailures`, 6>>;
767
+ (bookingId: string, options?: NonNullablePaths<UpdateNumberOfParticipantsOptions, `revision`, 2>): Promise<NonNullablePaths<UpdateNumberOfParticipantsResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7> & {
768
+ __applicationErrorsType?: UpdateNumberOfParticipantsApplicationErrors;
769
+ }>;
810
770
  }
811
- declare function getMultiServiceBooking$1(httpClient: HttpClient): GetMultiServiceBookingSignature;
812
- interface GetMultiServiceBookingSignature {
771
+ declare function bulkCalculateAllowedActions$1(httpClient: HttpClient): BulkCalculateAllowedActionsSignature;
772
+ interface BulkCalculateAllowedActionsSignature {
813
773
  /**
814
- * Retrieves a multi-service booking and all its associated single-service bookings.
815
- *
816
- *
817
- * Returns the complete multi-service booking information including its ID, associated single-service bookings, and the total number of scheduled single-service bookings.
774
+ * Checks whether you can [reschedule](https://dev.wix.com/docs/api-reference/business-solutions/bookings/bookings/bookings-writer-v2/reschedule-booking) or [cancel](https://dev.wix.com/docs/api-reference/business-solutions/bookings/bookings/bookings-writer-v2/cancel-booking) a list of bookings without using force resolution.
818
775
  *
819
- * If you call on behalf of an [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities) with permissions to read only part of the multi-service booking, only the permitted single-service bookings are retrieved.
820
- * The returned total number includes single-service bookings for which you don't have permissions.
821
776
  *
822
- * See [Query Extended Bookings](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-reader-v2/query-extended-bookings) for details about retrieving individual single-service bookings and additional metadata.
823
- * @param - ID of the multi-service booking.
824
- * @returns Retrieved multi-service booking.
777
+ * Call this method to determine which standard actions are available before attempting to modify bookings. If standard actions aren't available, you may need to use [force resolution](https://dev.wix.com/docs/rest/business-solutions/bookings/end-to-end-booking-flows/sample-flows#force-resolution) to override business rules and availability validation.
778
+ * @param - List of booking IDs to calculate allowed actions for.
825
779
  */
826
- (multiServiceBookingId: string): Promise<NonNullablePaths<MultiServiceBooking, `bookings` | `bookings.${number}.booking.totalParticipants` | `bookings.${number}.booking.status` | `bookings.${number}.booking.paymentStatus` | `bookings.${number}.booking.selectedPaymentOption` | `bookings.${number}.booking.createdBy.anonymousVisitorId` | `bookings.${number}.booking.createdBy.memberId` | `bookings.${number}.booking.createdBy.wixUserId` | `bookings.${number}.booking.createdBy.appId`, 6>>;
780
+ (bookingIds: string[]): Promise<NonNullablePaths<BulkCalculateAllowedActionsResponse, `results` | `results.${number}.itemMetadata.originalIndex` | `results.${number}.itemMetadata.success` | `results.${number}.itemMetadata.error.code` | `results.${number}.itemMetadata.error.description` | `results.${number}.item.cancel` | `results.${number}.item.reschedule` | `bulkActionMetadata.totalSuccesses` | `bulkActionMetadata.totalFailures` | `bulkActionMetadata.undetailedFailures`, 6>>;
827
781
  }
828
- declare function addBookingsToMultiServiceBooking$1(httpClient: HttpClient): AddBookingsToMultiServiceBookingSignature;
829
- interface AddBookingsToMultiServiceBookingSignature {
782
+ declare function markBookingAsPending$1(httpClient: HttpClient): MarkBookingAsPendingSignature;
783
+ interface MarkBookingAsPendingSignature {
830
784
  /**
831
- * Expands an existing multi-service booking by adding existing single-service bookings to the package.
785
+ * Updates the booking status to `PENDING`.
832
786
  *
833
787
  *
834
- * ### When to call this method
788
+ * ### Service requirement
835
789
  *
836
- * Call this method to add 1 or more existing single-service bookings to an existing multi-service booking.
837
- * For creating a new multi-service booking with new single-service bookings, call [Create Multi Service Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/create-multi-service-booking) instead.
790
+ * By default, this method only works for [services](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/introduction) with `service.onlineBooking.requireManualApproval` set to `true`.
791
+ * If you attempt to mark a booking as pending for a service that doesn't require approval, the call fails unless you use the `skipPendingApprovalServiceValidation` admin overwrite.
838
792
  *
839
- * ### Package integration
793
+ * ### Status requirements
840
794
  *
841
- * The timing of the single-service bookings to add must be compatible with the multi-service booking's sequential schedule to ensure no gaps or overlaps between services in the updated package.
795
+ * - __Original status__: Booking must have `CREATED` status.
796
+ * - __Target status__: Booking moves to `PENDING`.
842
797
  *
843
- * ### Requirements and limitations
798
+ * ### Checkout restrictions
844
799
  *
845
- * - __Maximum capacity__: The total number of single-service bookings can't exceed 8.
846
- * - __Booking eligibility__: You can add only independent single-service bookings that aren't part of another multi-service booking.
847
- * - __Status compatibility__: Added bookings must have compatible status with the target multi-service booking.
848
- * - __Revision control__: You must provide current revision numbers for all single-service bookings to add.
849
- * @param - ID of the multi-service booking.
850
- */
851
- (multiServiceBookingId: string, options?: NonNullablePaths<AddBookingsToMultiServiceBookingOptions, `bookings` | `bookings.${number}.bookingId` | `bookings.${number}.revision`, 4>): Promise<NonNullablePaths<AddBookingsToMultiServiceBookingResponse, `bookings` | `bookings.${number}.booking.totalParticipants` | `bookings.${number}.booking.status` | `bookings.${number}.booking.paymentStatus` | `bookings.${number}.booking.selectedPaymentOption` | `bookings.${number}.booking.createdBy.anonymousVisitorId` | `bookings.${number}.booking.createdBy.memberId` | `bookings.${number}.booking.createdBy.wixUserId` | `bookings.${number}.booking.createdBy.appId`, 6> & {
852
- __applicationErrorsType?: AddBookingsToMultiServiceBookingApplicationErrors;
853
- }>;
854
- }
855
- declare function removeBookingsFromMultiServiceBooking$1(httpClient: HttpClient): RemoveBookingsFromMultiServiceBookingSignature;
856
- interface RemoveBookingsFromMultiServiceBookingSignature {
857
- /**
858
- * Removes single-service bookings from a multi-service booking and converts them to independent single-service bookings.
800
+ * Only call this method if the customer paid via a custom checkout. For [Wix eCommerce checkouts](https://dev.wix.com/docs/rest/business-solutions/e-commerce/purchase-flow/checkout/introduction), Wix Bookings automatically manages the bookings' statuses based on payment processing.
859
801
  *
802
+ * When using custom checkouts, you can also update the booking's `paymentStatus` by specifying a new payment status.
860
803
  *
861
- * ### Removal options
804
+ * ### Business workflow
862
805
  *
863
- * __Remove all permitted bookings__: If you specify an empty `bookings` array, all single-service bookings for which the call's [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities) has read permissions are removed from the multi-service booking.
806
+ * After marking a booking as `PENDING`, the business must manually approve or reject it. You can call these methods:
807
+ * - [Confirm Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-booking).
808
+ * - [Decline Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/decline-booking).
864
809
  *
865
- * __Selective removal__: Specify single-service booking IDs and revisions to remove only specific single-service bookings from the package.
810
+ * ### Resource availability and scheduling
866
811
  *
867
- * __Sequential scheduling__: To maintain sequential scheduling, remove only first or last single-service bookings. For middle bookings, first reschedule all relevant single-service bookings to eliminate gaps. To do so, call [Reschedule Multi Service Booking](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/reschedule-multi-service-booking) before removing the unwanted bookings.
812
+ * Marking a booking as `PENDING` immediately affects resource availability:
868
813
  *
869
- * ### Removal behavior
814
+ * - **Calendar impact**: The booking appears on the business calendar.
815
+ * - **Availability**: The time slot becomes unavailable for other bookings, even while pending approval.
816
+ * - **Resource assignment**: Available [resources](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/resources-v2/introduction) are automatically assigned if none were explicitly selected during booking creation.
870
817
  *
871
- * __Independent bookings__: Removed single-service bookings become independent bookings.
872
- * You can manage them using single-service booking methods.
818
+ * ### Double bookings
873
819
  *
874
- * __Automatic cleanup__: Multi-service bookings must contain at least 2 services.
875
- * If removal results in only 1 remaining single-service booking for the multi-service booking, the entire multi-service booking is deleted and the remaining single-service booking becomes a standalone booking.
820
+ * By default, the method doesn't check for availability conflicts. To detect and handle double bookings, use the `checkAvailabilityValidation: true` admin overwrite.
876
821
  *
877
- * __Revision control__: Specify current revision numbers to prevent conflicting modifications during the removal process.
878
- * @param - ID of the multi-service booking.
822
+ * ### Notify customers
823
+ *
824
+ * You can specify a `participantNotification.message` for the customer.
825
+ * To send the message, you must also specify `participantNotification.notifyParticipants` as `true`.
826
+ *
827
+ * ### Admin overwrites
828
+ *
829
+ * There are small but important differences when you specify special
830
+ * `flowControlSettings`:
831
+ *
832
+ * - `{"checkAvailabilityValidation": true}`: Checks for double booking conflicts before updating the status.
833
+ * When conflicts exist, the booking is still marked as `PENDING` and `doubleBooked` is set to `true` for the business to resolve manually.
834
+ * - `{"skipPendingApprovalServiceValidation": true}`: Allows marking any booking as pending, even if the service doesn't require manual approval.
835
+ *
836
+ * When using special `flowControlSettings`, ensure you have sufficient permissions.
837
+ * If you encounter failed calls due to insufficient permissions, consider the following options:
838
+ *
839
+ * - __App developers__ can use a higher
840
+ * [permission](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions), such as `MANAGE BOOKINGS - ALL PERMISSIONS`.
841
+ * - __Site developers__ can utilize
842
+ * [elevation](https://dev.wix.com/docs/develop-websites/articles/coding-with-velo/authorization/elevation).
843
+ *
844
+ * Granting additional permissions and using elevation permits method calls that would typically fail due to authorization checks.
845
+ * Therefore, you should use them intentionally and securely.
846
+ * @param - ID of the booking to mark as `PENDING`.
847
+ * @param - Revision number, which increments by 1 each time the booking is updated.
848
+ *
849
+ * To prevent conflicting changes, the current revision must be specified when
850
+ * managing the booking.
879
851
  */
880
- (multiServiceBookingId: string, options?: RemoveBookingsFromMultiServiceBookingOptions): Promise<NonNullablePaths<RemoveBookingsFromMultiServiceBookingResponse, `bookings` | `bookings.${number}.booking.totalParticipants` | `bookings.${number}.booking.status` | `bookings.${number}.booking.paymentStatus` | `bookings.${number}.booking.selectedPaymentOption` | `bookings.${number}.booking.createdBy.anonymousVisitorId` | `bookings.${number}.booking.createdBy.memberId` | `bookings.${number}.booking.createdBy.wixUserId` | `bookings.${number}.booking.createdBy.appId`, 6> & {
881
- __applicationErrorsType?: RemoveBookingsFromMultiServiceBookingApplicationErrors;
852
+ (bookingId: string, revision: string, options?: MarkBookingAsPendingOptions): Promise<NonNullablePaths<MarkBookingAsPendingResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7> & {
853
+ __applicationErrorsType?: MarkBookingAsPendingApplicationErrors;
882
854
  }>;
883
855
  }
856
+ declare function getAnonymousActionDetails$1(httpClient: HttpClient): GetAnonymousActionDetailsSignature;
857
+ interface GetAnonymousActionDetailsSignature {
858
+ /**
859
+ * Returns booking details related to AnonymousActions
860
+ * Anonymous tokens for getting, canceling or rescheduling the booking.
861
+ * That token is symmetrically encrypted and Url-safe.
862
+ * That allows the UoU to cancel or reschedule without Authentication.
863
+ * @returns Response for GetAnonymousActionDetails
864
+ */
865
+ (options?: GetAnonymousActionDetailsOptions): Promise<GetAnonymousActionDetailsResponse>;
866
+ }
867
+ declare function cancelBookingAnonymously$1(httpClient: HttpClient): CancelBookingAnonymouslySignature;
868
+ interface CancelBookingAnonymouslySignature {
869
+ /**
870
+ * Cancel booking using an anonymous token
871
+ * @param - The token provided in the booking links for anonymous access
872
+ * @returns Response for CancelBookingAnonymously
873
+ */
874
+ (token: string, options?: CancelBookingAnonymouslyOptions): Promise<NonNullablePaths<CancelBookingAnonymouslyResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7>>;
875
+ }
876
+ declare function rescheduleBookingAnonymously$1(httpClient: HttpClient): RescheduleBookingAnonymouslySignature;
877
+ interface RescheduleBookingAnonymouslySignature {
878
+ /**
879
+ * Reschedule booking using an anonymous token
880
+ * @param - The token provided in the booking links for anonymous access
881
+ * @param - New slot of the booking.
882
+ * @returns Response for RescheduleBookingAnonymously
883
+ */
884
+ (token: string, slot: V2Slot, options: NonNullablePaths<RescheduleBookingAnonymouslyOptions, `revision`, 2>): Promise<NonNullablePaths<RescheduleBookingAnonymouslyResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId`, 7>>;
885
+ }
886
+ declare function getBookingAnonymously$1(httpClient: HttpClient): GetBookingAnonymouslySignature;
887
+ interface GetBookingAnonymouslySignature {
888
+ /**
889
+ * Get booking using an anonymous token
890
+ * @param - The token provided in the booking links for anonymous access
891
+ * @returns Response for GetBookingAnonymously
892
+ */
893
+ (token: string): Promise<NonNullablePaths<GetBookingAnonymouslyResponse, `booking.totalParticipants` | `booking.participantsChoices.serviceChoices` | `booking.bookedEntity.slot.serviceId` | `booking.bookedEntity.slot.scheduleId` | `booking.bookedEntity.slot.resource._id` | `booking.bookedEntity.slot.location.locationType` | `booking.bookedEntity.schedule.scheduleId` | `booking.bookedEntity.tags` | `booking.contactDetails.fullAddress.streetAddress.number` | `booking.contactDetails.fullAddress.streetAddress.name` | `booking.contactDetails.fullAddress.streetAddress.apt` | `booking.contactDetails.fullAddress.subdivisions` | `booking.contactDetails.fullAddress.subdivisions.${number}.code` | `booking.contactDetails.fullAddress.subdivisions.${number}.name` | `booking.additionalFields` | `booking.additionalFields.${number}._id` | `booking.additionalFields.${number}.valueType` | `booking.status` | `booking.paymentStatus` | `booking.selectedPaymentOption` | `booking.createdBy.anonymousVisitorId` | `booking.createdBy.memberId` | `booking.createdBy.wixUserId` | `booking.createdBy.appId` | `booking.bookedAddOns` | `booking.bookedAddOns.${number}._id` | `booking.bookedAddOns.${number}.groupId` | `allowedActionsAnonymously.cancel` | `allowedActionsAnonymously.reschedule`, 7>>;
894
+ }
884
895
  declare const onBookingCanceled$1: EventDefinition<BookingCanceledEnvelope, "wix.bookings.v2.booking_canceled">;
885
896
  declare const onBookingConfirmed$1: EventDefinition<BookingConfirmedEnvelope, "wix.bookings.v2.booking_confirmed">;
886
897
  declare const onBookingCreated$1: EventDefinition<BookingCreatedEnvelope, "wix.bookings.v2.booking_created">;
887
898
  declare const onBookingDeclined$1: EventDefinition<BookingDeclinedEnvelope, "wix.bookings.v2.booking_declined">;
888
- declare const onBookingNumberOfParticipantsUpdated$1: EventDefinition<BookingNumberOfParticipantsUpdatedEnvelope, "wix.bookings.v2.booking_number_of_participants_updated">;
889
899
  declare const onBookingRescheduled$1: EventDefinition<BookingRescheduledEnvelope, "wix.bookings.v2.booking_rescheduled">;
890
900
  declare const onBookingUpdated$1: EventDefinition<BookingUpdatedEnvelope, "wix.bookings.v2.booking_updated">;
901
+ declare const onBookingMarkedAsPending$1: EventDefinition<BookingMarkedAsPendingEnvelope, "wix.bookings.v2.booking_markedAsPending">;
902
+ declare const onBookingNumberOfParticipantsUpdated$1: EventDefinition<BookingNumberOfParticipantsUpdatedEnvelope, "wix.bookings.v2.booking_number_of_participants_updated">;
891
903
 
892
- declare const getAnonymousActionDetails: MaybeContext<BuildRESTFunction<typeof getAnonymousActionDetails$1> & typeof getAnonymousActionDetails$1>;
893
- declare const cancelBookingAnonymously: MaybeContext<BuildRESTFunction<typeof cancelBookingAnonymously$1> & typeof cancelBookingAnonymously$1>;
894
- declare const rescheduleBookingAnonymously: MaybeContext<BuildRESTFunction<typeof rescheduleBookingAnonymously$1> & typeof rescheduleBookingAnonymously$1>;
895
- declare const getBookingAnonymously: MaybeContext<BuildRESTFunction<typeof getBookingAnonymously$1> & typeof getBookingAnonymously$1>;
896
904
  declare const confirmOrDeclineBooking: MaybeContext<BuildRESTFunction<typeof confirmOrDeclineBooking$1> & typeof confirmOrDeclineBooking$1>;
897
905
  declare const bulkConfirmOrDeclineBooking: MaybeContext<BuildRESTFunction<typeof bulkConfirmOrDeclineBooking$1> & typeof bulkConfirmOrDeclineBooking$1>;
898
- declare const createBooking: MaybeContext<BuildRESTFunction<typeof createBooking$1> & typeof createBooking$1>;
899
- declare const bulkCreateBooking: MaybeContext<BuildRESTFunction<typeof bulkCreateBooking$1> & typeof bulkCreateBooking$1>;
900
- declare const rescheduleBooking: MaybeContext<BuildRESTFunction<typeof rescheduleBooking$1> & typeof rescheduleBooking$1>;
901
- declare const confirmBooking: MaybeContext<BuildRESTFunction<typeof confirmBooking$1> & typeof confirmBooking$1>;
902
- declare const setBookingSubmissionId: MaybeContext<BuildRESTFunction<typeof setBookingSubmissionId$1> & typeof setBookingSubmissionId$1>;
903
- declare const updateExtendedFields: MaybeContext<BuildRESTFunction<typeof updateExtendedFields$1> & typeof updateExtendedFields$1>;
904
- declare const declineBooking: MaybeContext<BuildRESTFunction<typeof declineBooking$1> & typeof declineBooking$1>;
905
- declare const cancelBooking: MaybeContext<BuildRESTFunction<typeof cancelBooking$1> & typeof cancelBooking$1>;
906
- declare const updateNumberOfParticipants: MaybeContext<BuildRESTFunction<typeof updateNumberOfParticipants$1> & typeof updateNumberOfParticipants$1>;
907
- declare const markBookingAsPending: MaybeContext<BuildRESTFunction<typeof markBookingAsPending$1> & typeof markBookingAsPending$1>;
908
906
  declare const createMultiServiceBooking: MaybeContext<BuildRESTFunction<typeof createMultiServiceBooking$1> & typeof createMultiServiceBooking$1>;
909
907
  declare const rescheduleMultiServiceBooking: MaybeContext<BuildRESTFunction<typeof rescheduleMultiServiceBooking$1> & typeof rescheduleMultiServiceBooking$1>;
910
908
  declare const getMultiServiceBookingAvailability: MaybeContext<BuildRESTFunction<typeof getMultiServiceBookingAvailability$1> & typeof getMultiServiceBookingAvailability$1>;
@@ -916,6 +914,21 @@ declare const bulkGetMultiServiceBookingAllowedActions: MaybeContext<BuildRESTFu
916
914
  declare const getMultiServiceBooking: MaybeContext<BuildRESTFunction<typeof getMultiServiceBooking$1> & typeof getMultiServiceBooking$1>;
917
915
  declare const addBookingsToMultiServiceBooking: MaybeContext<BuildRESTFunction<typeof addBookingsToMultiServiceBooking$1> & typeof addBookingsToMultiServiceBooking$1>;
918
916
  declare const removeBookingsFromMultiServiceBooking: MaybeContext<BuildRESTFunction<typeof removeBookingsFromMultiServiceBooking$1> & typeof removeBookingsFromMultiServiceBooking$1>;
917
+ declare const createBooking: MaybeContext<BuildRESTFunction<typeof createBooking$1> & typeof createBooking$1>;
918
+ declare const bulkCreateBooking: MaybeContext<BuildRESTFunction<typeof bulkCreateBooking$1> & typeof bulkCreateBooking$1>;
919
+ declare const rescheduleBooking: MaybeContext<BuildRESTFunction<typeof rescheduleBooking$1> & typeof rescheduleBooking$1>;
920
+ declare const confirmBooking: MaybeContext<BuildRESTFunction<typeof confirmBooking$1> & typeof confirmBooking$1>;
921
+ declare const setBookingSubmissionId: MaybeContext<BuildRESTFunction<typeof setBookingSubmissionId$1> & typeof setBookingSubmissionId$1>;
922
+ declare const updateExtendedFields: MaybeContext<BuildRESTFunction<typeof updateExtendedFields$1> & typeof updateExtendedFields$1>;
923
+ declare const declineBooking: MaybeContext<BuildRESTFunction<typeof declineBooking$1> & typeof declineBooking$1>;
924
+ declare const cancelBooking: MaybeContext<BuildRESTFunction<typeof cancelBooking$1> & typeof cancelBooking$1>;
925
+ declare const updateNumberOfParticipants: MaybeContext<BuildRESTFunction<typeof updateNumberOfParticipants$1> & typeof updateNumberOfParticipants$1>;
926
+ declare const bulkCalculateAllowedActions: MaybeContext<BuildRESTFunction<typeof bulkCalculateAllowedActions$1> & typeof bulkCalculateAllowedActions$1>;
927
+ declare const markBookingAsPending: MaybeContext<BuildRESTFunction<typeof markBookingAsPending$1> & typeof markBookingAsPending$1>;
928
+ declare const getAnonymousActionDetails: MaybeContext<BuildRESTFunction<typeof getAnonymousActionDetails$1> & typeof getAnonymousActionDetails$1>;
929
+ declare const cancelBookingAnonymously: MaybeContext<BuildRESTFunction<typeof cancelBookingAnonymously$1> & typeof cancelBookingAnonymously$1>;
930
+ declare const rescheduleBookingAnonymously: MaybeContext<BuildRESTFunction<typeof rescheduleBookingAnonymously$1> & typeof rescheduleBookingAnonymously$1>;
931
+ declare const getBookingAnonymously: MaybeContext<BuildRESTFunction<typeof getBookingAnonymously$1> & typeof getBookingAnonymously$1>;
919
932
  /**
920
933
  * Triggered when a booking is canceled.
921
934
  */
@@ -932,10 +945,6 @@ declare const onBookingCreated: BuildEventDefinition<typeof onBookingCreated$1>
932
945
  * Triggered when a booking is declined.
933
946
  */
934
947
  declare const onBookingDeclined: BuildEventDefinition<typeof onBookingDeclined$1> & typeof onBookingDeclined$1;
935
- /**
936
- * Triggered when the number of participants is updated.
937
- */
938
- declare const onBookingNumberOfParticipantsUpdated: BuildEventDefinition<typeof onBookingNumberOfParticipantsUpdated$1> & typeof onBookingNumberOfParticipantsUpdated$1;
939
948
  /**
940
949
  * Triggered when a booking is rescheduled.
941
950
  */
@@ -944,5 +953,13 @@ declare const onBookingRescheduled: BuildEventDefinition<typeof onBookingResched
944
953
  * Triggered when a booked schedule is updated.
945
954
  */
946
955
  declare const onBookingUpdated: BuildEventDefinition<typeof onBookingUpdated$1> & typeof onBookingUpdated$1;
956
+ /**
957
+ * Triggered when a booking is marked as pending.
958
+ */
959
+ declare const onBookingMarkedAsPending: BuildEventDefinition<typeof onBookingMarkedAsPending$1> & typeof onBookingMarkedAsPending$1;
960
+ /**
961
+ * Triggered when the number of participants is updated.
962
+ */
963
+ declare const onBookingNumberOfParticipantsUpdated: BuildEventDefinition<typeof onBookingNumberOfParticipantsUpdated$1> & typeof onBookingNumberOfParticipantsUpdated$1;
947
964
 
948
- export { AddBookingsToMultiServiceBookingApplicationErrors, AddBookingsToMultiServiceBookingOptions, AddBookingsToMultiServiceBookingResponse, Booking, BookingCanceledEnvelope, BookingConfirmedEnvelope, BookingCreatedEnvelope, BookingDeclinedEnvelope, BookingNumberOfParticipantsUpdatedEnvelope, BookingRescheduledEnvelope, BookingUpdatedEnvelope, BulkConfirmOrDeclineBookingApplicationErrors, BulkConfirmOrDeclineBookingOptions, BulkConfirmOrDeclineBookingRequestBookingDetails, BulkConfirmOrDeclineBookingResponse, BulkCreateBookingApplicationErrors, BulkCreateBookingOptions, BulkCreateBookingResponse, BulkGetMultiServiceBookingAllowedActionsResponse, CancelBookingAnonymouslyOptions, CancelBookingAnonymouslyResponse, CancelBookingApplicationErrors, CancelBookingOptions, CancelBookingResponse, CancelMultiServiceBookingApplicationErrors, CancelMultiServiceBookingOptions, CancelMultiServiceBookingResponse, ConfirmBookingApplicationErrors, ConfirmBookingOptions, ConfirmBookingResponse, ConfirmMultiServiceBookingApplicationErrors, ConfirmMultiServiceBookingOptions, ConfirmMultiServiceBookingResponse, ConfirmOrDeclineBookingApplicationErrors, ConfirmOrDeclineBookingOptions, ConfirmOrDeclineBookingResponse, CreateBookingApplicationErrors, CreateBookingInfo, CreateBookingOptions, CreateBookingResponse, CreateMultiServiceBookingApplicationErrors, CreateMultiServiceBookingOptions, CreateMultiServiceBookingResponse, DeclineBookingApplicationErrors, DeclineBookingOptions, DeclineBookingResponse, DeclineMultiServiceBookingApplicationErrors, DeclineMultiServiceBookingOptions, DeclineMultiServiceBookingResponse, GetAnonymousActionDetailsOptions, GetAnonymousActionDetailsResponse, GetBookingAnonymouslyResponse, GetMultiServiceBookingAvailabilityApplicationErrors, GetMultiServiceBookingAvailabilityResponse, MarkBookingAsPendingApplicationErrors, MarkBookingAsPendingOptions, MarkBookingAsPendingResponse, MarkMultiServiceBookingAsPendingApplicationErrors, MarkMultiServiceBookingAsPendingOptions, MarkMultiServiceBookingAsPendingResponse, MultiServiceBooking, RemoveBookingsFromMultiServiceBookingApplicationErrors, RemoveBookingsFromMultiServiceBookingOptions, RemoveBookingsFromMultiServiceBookingResponse, RescheduleBookingAnonymouslyOptions, RescheduleBookingAnonymouslyResponse, RescheduleBookingApplicationErrors, RescheduleBookingInfo, RescheduleBookingOptions, RescheduleBookingResponse, RescheduleMultiServiceBookingApplicationErrors, RescheduleMultiServiceBookingOptions, RescheduleMultiServiceBookingResponse, SetBookingSubmissionIdApplicationErrors, SetBookingSubmissionIdResponse, UpdateExtendedFieldsApplicationErrors, UpdateExtendedFieldsOptions, UpdateExtendedFieldsResponse, UpdateNumberOfParticipantsApplicationErrors, UpdateNumberOfParticipantsOptions, UpdateNumberOfParticipantsResponse, V2Slot, addBookingsToMultiServiceBooking, bulkConfirmOrDeclineBooking, bulkCreateBooking, bulkGetMultiServiceBookingAllowedActions, cancelBooking, cancelBookingAnonymously, cancelMultiServiceBooking, confirmBooking, confirmMultiServiceBooking, confirmOrDeclineBooking, createBooking, createMultiServiceBooking, declineBooking, declineMultiServiceBooking, getAnonymousActionDetails, getBookingAnonymously, getMultiServiceBooking, getMultiServiceBookingAvailability, markBookingAsPending, markMultiServiceBookingAsPending, onBookingCanceled, onBookingConfirmed, onBookingCreated, onBookingDeclined, onBookingNumberOfParticipantsUpdated, onBookingRescheduled, onBookingUpdated, removeBookingsFromMultiServiceBooking, rescheduleBooking, rescheduleBookingAnonymously, rescheduleMultiServiceBooking, setBookingSubmissionId, updateExtendedFields, updateNumberOfParticipants };
965
+ export { AddBookingsToMultiServiceBookingApplicationErrors, AddBookingsToMultiServiceBookingOptions, AddBookingsToMultiServiceBookingResponse, Booking, BookingCanceledEnvelope, BookingConfirmedEnvelope, BookingCreatedEnvelope, BookingDeclinedEnvelope, BookingMarkedAsPendingEnvelope, BookingNumberOfParticipantsUpdatedEnvelope, BookingRescheduledEnvelope, BookingUpdatedEnvelope, BulkCalculateAllowedActionsResponse, BulkConfirmOrDeclineBookingApplicationErrors, BulkConfirmOrDeclineBookingOptions, BulkConfirmOrDeclineBookingRequestBookingDetails, BulkConfirmOrDeclineBookingResponse, BulkCreateBookingApplicationErrors, BulkCreateBookingOptions, BulkCreateBookingResponse, BulkGetMultiServiceBookingAllowedActionsResponse, CancelBookingAnonymouslyOptions, CancelBookingAnonymouslyResponse, CancelBookingApplicationErrors, CancelBookingOptions, CancelBookingResponse, CancelMultiServiceBookingApplicationErrors, CancelMultiServiceBookingOptions, CancelMultiServiceBookingResponse, ConfirmBookingApplicationErrors, ConfirmBookingOptions, ConfirmBookingResponse, ConfirmMultiServiceBookingApplicationErrors, ConfirmMultiServiceBookingOptions, ConfirmMultiServiceBookingResponse, ConfirmOrDeclineBookingApplicationErrors, ConfirmOrDeclineBookingOptions, ConfirmOrDeclineBookingResponse, CreateBookingApplicationErrors, CreateBookingInfo, CreateBookingOptions, CreateBookingResponse, CreateMultiServiceBookingApplicationErrors, CreateMultiServiceBookingOptions, CreateMultiServiceBookingResponse, DeclineBookingApplicationErrors, DeclineBookingOptions, DeclineBookingResponse, DeclineMultiServiceBookingApplicationErrors, DeclineMultiServiceBookingOptions, DeclineMultiServiceBookingResponse, GetAnonymousActionDetailsOptions, GetAnonymousActionDetailsResponse, GetBookingAnonymouslyResponse, GetMultiServiceBookingAvailabilityApplicationErrors, GetMultiServiceBookingAvailabilityResponse, MarkBookingAsPendingApplicationErrors, MarkBookingAsPendingOptions, MarkBookingAsPendingResponse, MarkMultiServiceBookingAsPendingApplicationErrors, MarkMultiServiceBookingAsPendingOptions, MarkMultiServiceBookingAsPendingResponse, MultiServiceBooking, RemoveBookingsFromMultiServiceBookingApplicationErrors, RemoveBookingsFromMultiServiceBookingOptions, RemoveBookingsFromMultiServiceBookingResponse, RescheduleBookingAnonymouslyOptions, RescheduleBookingAnonymouslyResponse, RescheduleBookingApplicationErrors, RescheduleBookingInfo, RescheduleBookingOptions, RescheduleBookingResponse, RescheduleMultiServiceBookingApplicationErrors, RescheduleMultiServiceBookingOptions, RescheduleMultiServiceBookingResponse, SetBookingSubmissionIdApplicationErrors, SetBookingSubmissionIdResponse, UpdateExtendedFieldsApplicationErrors, UpdateExtendedFieldsOptions, UpdateExtendedFieldsResponse, UpdateNumberOfParticipantsApplicationErrors, UpdateNumberOfParticipantsOptions, UpdateNumberOfParticipantsResponse, V2Slot, addBookingsToMultiServiceBooking, bulkCalculateAllowedActions, bulkConfirmOrDeclineBooking, bulkCreateBooking, bulkGetMultiServiceBookingAllowedActions, cancelBooking, cancelBookingAnonymously, cancelMultiServiceBooking, confirmBooking, confirmMultiServiceBooking, confirmOrDeclineBooking, createBooking, createMultiServiceBooking, declineBooking, declineMultiServiceBooking, getAnonymousActionDetails, getBookingAnonymously, getMultiServiceBooking, getMultiServiceBookingAvailability, markBookingAsPending, markMultiServiceBookingAsPending, onBookingCanceled, onBookingConfirmed, onBookingCreated, onBookingDeclined, onBookingMarkedAsPending, onBookingNumberOfParticipantsUpdated, onBookingRescheduled, onBookingUpdated, removeBookingsFromMultiServiceBooking, rescheduleBooking, rescheduleBookingAnonymously, rescheduleMultiServiceBooking, setBookingSubmissionId, updateExtendedFields, updateNumberOfParticipants };