@wix/auto_sdk_bookings_availability-time-slots 1.0.270 → 1.0.271

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.
@@ -467,281 +467,6 @@ interface GetEventTimeSlotResponse {
467
467
  */
468
468
  timeZone?: string | null;
469
469
  }
470
- interface ListMultiServiceAvailabilityTimeSlotsRequest {
471
- /**
472
- * Services for which the multi-service time slots are returned.
473
- * Each service can include its own resource filters.
474
- *
475
- * Required unless you specify `cursorPaging.cursor`.
476
- *
477
- * Min: 2 services
478
- * Max: 40 services
479
- * @maxSize 40
480
- */
481
- services?: Service[];
482
- /**
483
- * Lower boundary for `localStartDate` in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
484
- * For example, `2026-01-30T13:30:00`.
485
- * Each returned time slot has a `localStartDate` between `fromLocalDate` and `toLocalDate`.
486
- *
487
- * Required unless you specify `cursorPaging.cursor`.
488
- * @format LOCAL_DATE_TIME
489
- */
490
- fromLocalDate?: string | null;
491
- /**
492
- * Upper boundary for `localToDate` in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
493
- * For example, `2026-01-30T13:30:00`.
494
- * Each returned time slot has a `localEndDate` between `fromLocalDate` and `toLocalDate`.
495
- *
496
- * Required unless you specify `cursorPaging.cursor`.
497
- * @format LOCAL_DATE_TIME
498
- */
499
- toLocalDate?: string | null;
500
- /**
501
- * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) for adjusting `fromLocalDate` and `toLocalDate` values. For example, `America/New_York` or `UTC`.
502
- *
503
- * Required unless you specify `cursorPaging.cursor`.
504
- *
505
- * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
506
- * @minLength 1
507
- * @maxLength 150
508
- */
509
- timeZone?: string | null;
510
- /**
511
- * Location for which the multi-service time slots are returned. If you filter by `{"type": "BUSINESS"}`, you must also specify a location ID. Filters for `location.name` and `location.formattedAddress` are ignored.
512
- *
513
- * Required unless you specify `cursorPaging.cursor`.
514
- */
515
- location?: Location;
516
- /**
517
- * Whether the time slot is bookable according to all services' booking policies.
518
- * If not specified, returns both bookable and non-bookable time slots.
519
- */
520
- bookable?: boolean | null;
521
- /**
522
- * Indicators for service's booking policy violations.
523
- * Allows filtering for time slots with specific violation types based on [booking policies](https://dev.wix.com/docs/api-reference/business-solutions/bookings/policies/booking-policies/introduction). When you don't specify `bookingPolicyViolations` filters, all slots are returned regardless of their booking policy status.
524
- */
525
- bookingPolicyViolations?: BookingPolicyViolations;
526
- /**
527
- * Maximum number of slots to return for each day in the specified time range.
528
- * If `bookable` filter isn't specified, bookable slots are returned first.
529
- */
530
- timeSlotsPerDay?: number | null;
531
- /**
532
- * Cursor-based paging configuration.
533
- * Enables fetching results in smaller chunks by setting a limit on the number of results.
534
- * For consistent pagination behavior, use the same `limit` value throughout a pagination sequence.
535
- * When specifying a new `limit` in follow-up requests, the API respects the new value.
536
- */
537
- cursorPaging?: CursorPaging;
538
- }
539
- interface Service {
540
- /**
541
- * Service ID.
542
- * @format GUID
543
- */
544
- serviceId?: string;
545
- /**
546
- * ID of the [resources](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/resources-v2/introduction) to include in response.
547
- * Takes precedence over `resourceTypes`.
548
- * @internal
549
- * @format GUID
550
- * @maxSize 135
551
- * @deprecated ID of the [resources](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/resources-v2/introduction) to include in response.
552
- * Takes precedence over `resourceTypes`.
553
- * @replacedBy resource_types
554
- * @targetRemovalDate 2025-09-01
555
- */
556
- resourceIds?: string[];
557
- /**
558
- * Resource [type IDs](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/resource-types-v2/introduction) to include in returned time slots.
559
- * This is in addition to the specifically requested resources.
560
- *
561
- * <blockquote>
562
- * Currently supported only for Staff Member resource type.
563
- * Staff members belong to resource type ID `1cd44cf8-756f-41c3-bd90-3e2ffcaf1155`.
564
- * </blockquote>
565
- * @format GUID
566
- * @maxSize 100
567
- */
568
- includeResourceTypeIds?: string[];
569
- /**
570
- * Selected customer choices.
571
- * If specified, the selected choices are used to calculate service configuration.
572
- * If not specified, the service default configuration is used.
573
- * Enforcing this field is the responsibility of the service plugin implementer, and not the Time Slots V2 API.
574
- *
575
- * When using [add-ons](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/add-ons/introduction), we recommend passing only `addOnIds` and omitting `durationInMinutes`. Wix Bookings then calculates the total duration automatically. If you specify both `addOnIds` and `durationInMinutes`, `durationInMinutes` must equal the service duration plus all selected add-on durations.
576
- */
577
- customerChoices?: V2CustomerChoices;
578
- /**
579
- * Resource types to filter time slots.
580
- * Only returns time slots that have these specific resource types available.
581
- * This filters the time slots themselves, unlike `includeResourceTypeIds` which only controls response details.
582
- * @maxSize 8
583
- */
584
- resourceTypes?: ResourceType[];
585
- }
586
- /**
587
- * Selected customer choices.
588
- *
589
- * These choices are selected by the customer during the book flow and used to calculate the service's availability configuration.
590
- */
591
- interface V2CustomerChoices {
592
- /**
593
- * Selected duration in minutes, based on a [service variant](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/service-options-and-variants/introduction) the customer chose.
594
- * When using [add-ons](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/add-ons/introduction), we recommend passing only `addOnIds` instead of `durationInMinutes`. Wix Bookings then calculates the total duration automatically. If you specify both `addOnIds` and `durationInMinutes`, `durationInMinutes` must equal the service duration plus all selected add-on durations.
595
- *
596
- * Min: `1` minute
597
- * Max: `57600` minutes (40 days)
598
- * Default: `15` minutes
599
- * @min 1
600
- * @max 57600
601
- */
602
- durationInMinutes?: number | null;
603
- /**
604
- * Selected [add-on](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/add-ons/introduction) IDs.
605
- * When specifying this field, we recommend omitting `durationInMinutes`. Wix Bookings then calculates the total duration based on the service duration plus all selected add-on durations.
606
- *
607
- * Max: 21 (3 add-on groups × 7 add-ons per group).
608
- * @format GUID
609
- * @maxSize 21
610
- */
611
- addOnIds?: string[] | null;
612
- /**
613
- * Selected duration choice ID.
614
- * @format GUID
615
- */
616
- durationChoiceId?: string | null;
617
- /**
618
- * Gender the customer narrowed an "any staff member" selection to.
619
- * Only time slots served by staff members of that gender are returned.
620
- * Omit to keep "any staff member" unnarrowed.
621
- *
622
- * Requires `genderPubliclyAccessible` to be enabled in the business's [staff member settings](https://dev.wix.com/docs/api-reference/business-solutions/bookings/staff-members/staff-member-settings/introduction). The call fails with `REQUESTED_GENDER_NOT_ALLOWED` when it's disabled.
623
- * @internal
624
- */
625
- requestedGender?: V2RequestedGenderValue;
626
- }
627
- /** Gender narrowing for an "any staff member" selection. */
628
- interface V2RequestedGenderValue {
629
- /** Gender the customer narrowed "any staff member" to. */
630
- gender?: RequestedGenderValueRequestedGenderWithLiterals;
631
- }
632
- /**
633
- * Selectable genders. Staff members of any other gender are reachable
634
- * through plain "any staff member" or by name.
635
- */
636
- declare enum RequestedGenderValueRequestedGender {
637
- /**
638
- * Any male staff member.
639
- * @documentationMaturity preview
640
- * @internal
641
- */
642
- ANY_MALE = "ANY_MALE",
643
- /**
644
- * Any female staff member.
645
- * @documentationMaturity preview
646
- * @internal
647
- */
648
- ANY_FEMALE = "ANY_FEMALE"
649
- }
650
- /** @enumType */
651
- type RequestedGenderValueRequestedGenderWithLiterals = RequestedGenderValueRequestedGender;
652
- interface ResourceType {
653
- /**
654
- * [Resource type ID](https://dev.wix.com/docs/api-reference/business-solutions/bookings/resources/resource-types-v2/introduction).
655
- * @format GUID
656
- */
657
- resourceTypeId?: string | null;
658
- /**
659
- * Resource IDs.
660
- * Available only if there is at least 1 resource available for the slot.
661
- * @format GUID
662
- * @maxSize 135
663
- */
664
- resourceIds?: string[] | null;
665
- /**
666
- * Whether to return resources of this type in a sorted order.
667
- * + `true`: Resources are sorted using the relevant implementor of the [Resource Sorting service plugin](https://dev.wix.com/docs/api-reference/business-solutions/bookings/resources/resource-sorting-service-plugin/introduction).
668
- * + `false`: Resources are returned in an unpredictable, but not entirely random, order.
669
- * Sorting is not supported in the [List Availability Time Slots](https://dev.wix.com/docs/api-reference/business-solutions/bookings/time-slots/time-slots-v2/list-availability-time-slots) and [List Multi Service Availability Time Slots](https://dev.wix.com/docs/api-reference/business-solutions/bookings/time-slots/time-slots-v2/list-multi-service-availability-time-slots) methods.
670
- *
671
- * Default: `false`
672
- * @internal
673
- */
674
- sorted?: boolean | null;
675
- }
676
- interface ListMultiServiceAvailabilityTimeSlotsResponse {
677
- /**
678
- * Retrieved time slots.
679
- * Sorted by `localStartDate` in ascending order. When multiple slots have the same start time, no specific secondary sorting is guaranteed.
680
- * @maxSize 1000
681
- */
682
- timeSlots?: TimeSlot[];
683
- /**
684
- * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) for adjusting `fromLocalDate` and `toLocalDate`.
685
- * For example, `America/New_York` or `UTC`.
686
- * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
687
- * @minLength 1
688
- * @maxLength 150
689
- */
690
- timeZone?: string | null;
691
- /**
692
- * Paging metadata for the next page of results.
693
- * Contains a cursor if there are more than 1000 results.
694
- */
695
- cursorPagingMetadata?: CursorPagingMetadata;
696
- }
697
- interface GetMultiServiceAvailabilityTimeSlotRequest {
698
- /**
699
- * Services for which the multi-service time slots are returned.
700
- * You can specify resource filters for each service.
701
- * @minSize 2
702
- * @maxSize 40
703
- */
704
- services?: Service[];
705
- /**
706
- * Local start date of the time slot in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
707
- * For example, `2026-01-30T13:30:00`.
708
- * @format LOCAL_DATE_TIME
709
- */
710
- localStartDate?: string;
711
- /**
712
- * Local end date of the time slot in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
713
- * For example, `2026-01-30T13:30:00`.
714
- * @format LOCAL_DATE_TIME
715
- */
716
- localEndDate?: string;
717
- /**
718
- * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) for adjusting `fromLocalDate` and `toLocalDate` values.
719
- * For example, `America/New_York` or `UTC`.
720
- *
721
- * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
722
- * @minLength 1
723
- * @maxLength 150
724
- */
725
- timeZone?: string | null;
726
- /**
727
- * Location for which the multi-service time slots are returned. If you filter by `{"type": "BUSINESS"}`, you must also specify a location ID. A filter for `location.name` is ignored.
728
- *
729
- * Required unless you specify `cursorPaging.cursor`.
730
- */
731
- location?: Location;
732
- }
733
- interface GetMultiServiceAvailabilityTimeSlotResponse {
734
- /** Retrieved time slot. */
735
- timeSlot?: TimeSlot;
736
- /**
737
- * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) for adjusting `fromLocalDate` and `toLocalDate`.
738
- * For example, `America/New_York` or `UTC`.
739
- * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
740
- * @minLength 1
741
- * @maxLength 150
742
- */
743
- timeZone?: string | null;
744
- }
745
470
  interface ListAvailabilityTimeSlotsRequest {
746
471
  /**
747
472
  * Service ID for which to retrieve time slots. You must specify the ID of an appointment-based service.
@@ -904,10 +629,34 @@ declare enum RequestedGender {
904
629
  * @documentationMaturity preview
905
630
  * @internal
906
631
  */
907
- ANY_FEMALE = "ANY_FEMALE"
632
+ ANY_FEMALE = "ANY_FEMALE"
633
+ }
634
+ /** @enumType */
635
+ type RequestedGenderWithLiterals = RequestedGender;
636
+ interface ResourceType {
637
+ /**
638
+ * [Resource type ID](https://dev.wix.com/docs/api-reference/business-solutions/bookings/resources/resource-types-v2/introduction).
639
+ * @format GUID
640
+ */
641
+ resourceTypeId?: string | null;
642
+ /**
643
+ * Resource IDs.
644
+ * Available only if there is at least 1 resource available for the slot.
645
+ * @format GUID
646
+ * @maxSize 135
647
+ */
648
+ resourceIds?: string[] | null;
649
+ /**
650
+ * Whether to return resources of this type in a sorted order.
651
+ * + `true`: Resources are sorted using the relevant implementor of the [Resource Sorting service plugin](https://dev.wix.com/docs/api-reference/business-solutions/bookings/resources/resource-sorting-service-plugin/introduction).
652
+ * + `false`: Resources are returned in an unpredictable, but not entirely random, order.
653
+ * Sorting is not supported in the [List Availability Time Slots](https://dev.wix.com/docs/api-reference/business-solutions/bookings/time-slots/time-slots-v2/list-availability-time-slots) and [List Multi Service Availability Time Slots](https://dev.wix.com/docs/api-reference/business-solutions/bookings/time-slots/time-slots-v2/list-multi-service-availability-time-slots) methods.
654
+ *
655
+ * Default: `false`
656
+ * @internal
657
+ */
658
+ sorted?: boolean | null;
908
659
  }
909
- /** @enumType */
910
- type RequestedGenderWithLiterals = RequestedGender;
911
660
  interface ListAvailabilityTimeSlotsResponse {
912
661
  /**
913
662
  * Retrieved time slots.
@@ -1048,6 +797,31 @@ interface GetAvailabilityTimeSlotRequest {
1048
797
  */
1049
798
  resourceTypes?: ResourceType[];
1050
799
  }
800
+ /** Gender narrowing for an "any staff member" selection. */
801
+ interface V2RequestedGenderValue {
802
+ /** Gender the customer narrowed "any staff member" to. */
803
+ gender?: RequestedGenderValueRequestedGenderWithLiterals;
804
+ }
805
+ /**
806
+ * Selectable genders. Staff members of any other gender are reachable
807
+ * through plain "any staff member" or by name.
808
+ */
809
+ declare enum RequestedGenderValueRequestedGender {
810
+ /**
811
+ * Any male staff member.
812
+ * @documentationMaturity preview
813
+ * @internal
814
+ */
815
+ ANY_MALE = "ANY_MALE",
816
+ /**
817
+ * Any female staff member.
818
+ * @documentationMaturity preview
819
+ * @internal
820
+ */
821
+ ANY_FEMALE = "ANY_FEMALE"
822
+ }
823
+ /** @enumType */
824
+ type RequestedGenderValueRequestedGenderWithLiterals = RequestedGenderValueRequestedGender;
1051
825
  interface GetAvailabilityTimeSlotRequestCustomerChoices {
1052
826
  /**
1053
827
  * Selected add-on IDs.
@@ -1427,6 +1201,232 @@ interface BulkActionMetadata {
1427
1201
  /** Number of failures without details because detailed failure threshold was exceeded. */
1428
1202
  undetailedFailures?: number;
1429
1203
  }
1204
+ interface ListMultiServiceAvailabilityTimeSlotsRequest {
1205
+ /**
1206
+ * Services for which the multi-service time slots are returned.
1207
+ * Each service can include its own resource filters.
1208
+ *
1209
+ * Required unless you specify `cursorPaging.cursor`.
1210
+ *
1211
+ * Min: 2 services
1212
+ * Max: 40 services
1213
+ * @maxSize 40
1214
+ */
1215
+ services?: Service[];
1216
+ /**
1217
+ * Lower boundary for `localStartDate` in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
1218
+ * For example, `2026-01-30T13:30:00`.
1219
+ * Each returned time slot has a `localStartDate` between `fromLocalDate` and `toLocalDate`.
1220
+ *
1221
+ * Required unless you specify `cursorPaging.cursor`.
1222
+ * @format LOCAL_DATE_TIME
1223
+ */
1224
+ fromLocalDate?: string | null;
1225
+ /**
1226
+ * Upper boundary for `localToDate` in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
1227
+ * For example, `2026-01-30T13:30:00`.
1228
+ * Each returned time slot has a `localEndDate` between `fromLocalDate` and `toLocalDate`.
1229
+ *
1230
+ * Required unless you specify `cursorPaging.cursor`.
1231
+ * @format LOCAL_DATE_TIME
1232
+ */
1233
+ toLocalDate?: string | null;
1234
+ /**
1235
+ * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) for adjusting `fromLocalDate` and `toLocalDate` values. For example, `America/New_York` or `UTC`.
1236
+ *
1237
+ * Required unless you specify `cursorPaging.cursor`.
1238
+ *
1239
+ * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
1240
+ * @minLength 1
1241
+ * @maxLength 150
1242
+ */
1243
+ timeZone?: string | null;
1244
+ /**
1245
+ * Location for which the multi-service time slots are returned. If you filter by `{"type": "BUSINESS"}`, you must also specify a location ID. Filters for `location.name` and `location.formattedAddress` are ignored.
1246
+ *
1247
+ * Required unless you specify `cursorPaging.cursor`.
1248
+ */
1249
+ location?: Location;
1250
+ /**
1251
+ * Whether the time slot is bookable according to all services' booking policies.
1252
+ * If not specified, returns both bookable and non-bookable time slots.
1253
+ */
1254
+ bookable?: boolean | null;
1255
+ /**
1256
+ * Indicators for service's booking policy violations.
1257
+ * Allows filtering for time slots with specific violation types based on [booking policies](https://dev.wix.com/docs/api-reference/business-solutions/bookings/policies/booking-policies/introduction). When you don't specify `bookingPolicyViolations` filters, all slots are returned regardless of their booking policy status.
1258
+ */
1259
+ bookingPolicyViolations?: BookingPolicyViolations;
1260
+ /**
1261
+ * Maximum number of slots to return for each day in the specified time range.
1262
+ * If `bookable` filter isn't specified, bookable slots are returned first.
1263
+ */
1264
+ timeSlotsPerDay?: number | null;
1265
+ /**
1266
+ * Cursor-based paging configuration.
1267
+ * Enables fetching results in smaller chunks by setting a limit on the number of results.
1268
+ * For consistent pagination behavior, use the same `limit` value throughout a pagination sequence.
1269
+ * When specifying a new `limit` in follow-up requests, the API respects the new value.
1270
+ */
1271
+ cursorPaging?: CursorPaging;
1272
+ }
1273
+ interface Service {
1274
+ /**
1275
+ * Service ID.
1276
+ * @format GUID
1277
+ */
1278
+ serviceId?: string;
1279
+ /**
1280
+ * ID of the [resources](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/resources-v2/introduction) to include in response.
1281
+ * Takes precedence over `resourceTypes`.
1282
+ * @internal
1283
+ * @format GUID
1284
+ * @maxSize 135
1285
+ * @deprecated ID of the [resources](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/resources-v2/introduction) to include in response.
1286
+ * Takes precedence over `resourceTypes`.
1287
+ * @replacedBy resource_types
1288
+ * @targetRemovalDate 2025-09-01
1289
+ */
1290
+ resourceIds?: string[];
1291
+ /**
1292
+ * Resource [type IDs](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/resource-types-v2/introduction) to include in returned time slots.
1293
+ * This is in addition to the specifically requested resources.
1294
+ *
1295
+ * <blockquote>
1296
+ * Currently supported only for Staff Member resource type.
1297
+ * Staff members belong to resource type ID `1cd44cf8-756f-41c3-bd90-3e2ffcaf1155`.
1298
+ * </blockquote>
1299
+ * @format GUID
1300
+ * @maxSize 100
1301
+ */
1302
+ includeResourceTypeIds?: string[];
1303
+ /**
1304
+ * Selected customer choices.
1305
+ * If specified, the selected choices are used to calculate service configuration.
1306
+ * If not specified, the service default configuration is used.
1307
+ * Enforcing this field is the responsibility of the service plugin implementer, and not the Time Slots V2 API.
1308
+ *
1309
+ * When using [add-ons](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/add-ons/introduction), we recommend passing only `addOnIds` and omitting `durationInMinutes`. Wix Bookings then calculates the total duration automatically. If you specify both `addOnIds` and `durationInMinutes`, `durationInMinutes` must equal the service duration plus all selected add-on durations.
1310
+ */
1311
+ customerChoices?: V2CustomerChoices;
1312
+ /**
1313
+ * Resource types to filter time slots.
1314
+ * Only returns time slots that have these specific resource types available.
1315
+ * This filters the time slots themselves, unlike `includeResourceTypeIds` which only controls response details.
1316
+ * @maxSize 8
1317
+ */
1318
+ resourceTypes?: ResourceType[];
1319
+ }
1320
+ /**
1321
+ * Selected customer choices.
1322
+ *
1323
+ * These choices are selected by the customer during the book flow and used to calculate the service's availability configuration.
1324
+ */
1325
+ interface V2CustomerChoices {
1326
+ /**
1327
+ * Selected duration in minutes, based on a [service variant](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/service-options-and-variants/introduction) the customer chose.
1328
+ * When using [add-ons](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/add-ons/introduction), we recommend passing only `addOnIds` instead of `durationInMinutes`. Wix Bookings then calculates the total duration automatically. If you specify both `addOnIds` and `durationInMinutes`, `durationInMinutes` must equal the service duration plus all selected add-on durations.
1329
+ *
1330
+ * Min: `1` minute
1331
+ * Max: `57600` minutes (40 days)
1332
+ * Default: `15` minutes
1333
+ * @min 1
1334
+ * @max 57600
1335
+ */
1336
+ durationInMinutes?: number | null;
1337
+ /**
1338
+ * Selected [add-on](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/add-ons/introduction) IDs.
1339
+ * When specifying this field, we recommend omitting `durationInMinutes`. Wix Bookings then calculates the total duration based on the service duration plus all selected add-on durations.
1340
+ *
1341
+ * Max: 21 (3 add-on groups × 7 add-ons per group).
1342
+ * @format GUID
1343
+ * @maxSize 21
1344
+ */
1345
+ addOnIds?: string[] | null;
1346
+ /**
1347
+ * Selected duration choice ID.
1348
+ * @format GUID
1349
+ */
1350
+ durationChoiceId?: string | null;
1351
+ /**
1352
+ * Gender the customer narrowed an "any staff member" selection to.
1353
+ * Only time slots served by staff members of that gender are returned.
1354
+ * Omit to keep "any staff member" unnarrowed.
1355
+ *
1356
+ * Requires `genderPubliclyAccessible` to be enabled in the business's [staff member settings](https://dev.wix.com/docs/api-reference/business-solutions/bookings/staff-members/staff-member-settings/introduction). The call fails with `REQUESTED_GENDER_NOT_ALLOWED` when it's disabled.
1357
+ * @internal
1358
+ */
1359
+ requestedGender?: V2RequestedGenderValue;
1360
+ }
1361
+ interface ListMultiServiceAvailabilityTimeSlotsResponse {
1362
+ /**
1363
+ * Retrieved time slots.
1364
+ * Sorted by `localStartDate` in ascending order. When multiple slots have the same start time, no specific secondary sorting is guaranteed.
1365
+ * @maxSize 1000
1366
+ */
1367
+ timeSlots?: TimeSlot[];
1368
+ /**
1369
+ * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) for adjusting `fromLocalDate` and `toLocalDate`.
1370
+ * For example, `America/New_York` or `UTC`.
1371
+ * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
1372
+ * @minLength 1
1373
+ * @maxLength 150
1374
+ */
1375
+ timeZone?: string | null;
1376
+ /**
1377
+ * Paging metadata for the next page of results.
1378
+ * Contains a cursor if there are more than 1000 results.
1379
+ */
1380
+ cursorPagingMetadata?: CursorPagingMetadata;
1381
+ }
1382
+ interface GetMultiServiceAvailabilityTimeSlotRequest {
1383
+ /**
1384
+ * Services for which the multi-service time slots are returned.
1385
+ * You can specify resource filters for each service.
1386
+ * @minSize 2
1387
+ * @maxSize 40
1388
+ */
1389
+ services?: Service[];
1390
+ /**
1391
+ * Local start date of the time slot in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
1392
+ * For example, `2026-01-30T13:30:00`.
1393
+ * @format LOCAL_DATE_TIME
1394
+ */
1395
+ localStartDate?: string;
1396
+ /**
1397
+ * Local end date of the time slot in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
1398
+ * For example, `2026-01-30T13:30:00`.
1399
+ * @format LOCAL_DATE_TIME
1400
+ */
1401
+ localEndDate?: string;
1402
+ /**
1403
+ * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) for adjusting `fromLocalDate` and `toLocalDate` values.
1404
+ * For example, `America/New_York` or `UTC`.
1405
+ *
1406
+ * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
1407
+ * @minLength 1
1408
+ * @maxLength 150
1409
+ */
1410
+ timeZone?: string | null;
1411
+ /**
1412
+ * Location for which the multi-service time slots are returned. If you filter by `{"type": "BUSINESS"}`, you must also specify a location ID. A filter for `location.name` is ignored.
1413
+ *
1414
+ * Required unless you specify `cursorPaging.cursor`.
1415
+ */
1416
+ location?: Location;
1417
+ }
1418
+ interface GetMultiServiceAvailabilityTimeSlotResponse {
1419
+ /** Retrieved time slot. */
1420
+ timeSlot?: TimeSlot;
1421
+ /**
1422
+ * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) for adjusting `fromLocalDate` and `toLocalDate`.
1423
+ * For example, `America/New_York` or `UTC`.
1424
+ * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
1425
+ * @minLength 1
1426
+ * @maxLength 150
1427
+ */
1428
+ timeZone?: string | null;
1429
+ }
1430
1430
  /** @docsIgnore */
1431
1431
  type ListAvailabilityTimeSlotsApplicationErrors = {
1432
1432
  code?: 'NO_IMPLEMENTERS_FOUND';