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