@wix/auto_sdk_bookings_availability-time-slots 1.0.253 → 1.0.255

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.
@@ -444,225 +444,6 @@ interface GetEventTimeSlotResponse {
444
444
  */
445
445
  timeZone?: string | null;
446
446
  }
447
- interface ListMultiServiceAvailabilityTimeSlotsRequest {
448
- /**
449
- * Services for which the multi-service time slots are returned.
450
- * Each service can include its own resource filters.
451
- *
452
- * Required unless you specify `cursorPaging.cursor`.
453
- *
454
- * Min: 2 services
455
- * Max: 8 services
456
- * @maxSize 8
457
- */
458
- services?: Service[];
459
- /**
460
- * Lower boundary for `localStartDate` in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
461
- * For example, `2026-01-30T13:30:00`.
462
- * Each returned time slot has a `localStartDate` between `fromLocalDate` and `toLocalDate`.
463
- *
464
- * Required unless you specify `cursorPaging.cursor`.
465
- * @format LOCAL_DATE_TIME
466
- */
467
- fromLocalDate?: string | null;
468
- /**
469
- * Upper boundary for `localToDate` in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
470
- * For example, `2026-01-30T13:30:00`.
471
- * Each returned time slot has a `localEndDate` between `fromLocalDate` and `toLocalDate`.
472
- *
473
- * Required unless you specify `cursorPaging.cursor`.
474
- * @format LOCAL_DATE_TIME
475
- */
476
- toLocalDate?: string | null;
477
- /**
478
- * 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`.
479
- *
480
- * Required unless you specify `cursorPaging.cursor`.
481
- *
482
- * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
483
- * @minLength 1
484
- * @maxLength 150
485
- */
486
- timeZone?: string | null;
487
- /**
488
- * 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.
489
- *
490
- * Required unless you specify `cursorPaging.cursor`.
491
- */
492
- location?: Location;
493
- /**
494
- * Whether the time slot is bookable according to all services' booking policies.
495
- * If not specified, returns both bookable and non-bookable time slots.
496
- */
497
- bookable?: boolean | null;
498
- /**
499
- * Indicators for service's booking policy violations.
500
- * 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.
501
- */
502
- bookingPolicyViolations?: BookingPolicyViolations;
503
- /**
504
- * Maximum number of slots to return for each day in the specified time range.
505
- * If `bookable` filter isn't specified, bookable slots are returned first.
506
- */
507
- timeSlotsPerDay?: number | null;
508
- /**
509
- * Cursor-based paging configuration.
510
- * Enables fetching results in smaller chunks by setting a limit on the number of results.
511
- * For consistent pagination behavior, use the same `limit` value throughout a pagination sequence.
512
- * When specifying a new `limit` in follow-up requests, the API respects the new value.
513
- */
514
- cursorPaging?: CursorPaging;
515
- }
516
- interface Service {
517
- /**
518
- * Service ID.
519
- * @format GUID
520
- */
521
- serviceId?: string;
522
- /**
523
- * Resource [type IDs](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/resource-types-v2/introduction) to include in returned time slots.
524
- * This is in addition to the specifically requested resources.
525
- *
526
- * <blockquote>
527
- * Currently supported only for Staff Member resource type.
528
- * Staff members belong to resource type ID `1cd44cf8-756f-41c3-bd90-3e2ffcaf1155`.
529
- * </blockquote>
530
- * @format GUID
531
- * @maxSize 100
532
- */
533
- includeResourceTypeIds?: string[];
534
- /**
535
- * Selected customer choices.
536
- * If specified, the selected choices are used to calculate service configuration.
537
- * If not specified, the service default configuration is used.
538
- * Enforcing this field is the responsibility of the service plugin implementer, and not the Time Slots V2 API.
539
- *
540
- * 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.
541
- */
542
- customerChoices?: V2CustomerChoices;
543
- /**
544
- * Resource types to filter time slots.
545
- * Only returns time slots that have these specific resource types available.
546
- * This filters the time slots themselves, unlike `includeResourceTypeIds` which only controls response details.
547
- * @maxSize 3
548
- */
549
- resourceTypes?: ResourceType[];
550
- }
551
- /**
552
- * Selected customer choices.
553
- *
554
- * These choices are selected by the customer during the book flow and used to calculate the service's availability configuration.
555
- */
556
- interface V2CustomerChoices {
557
- /**
558
- * 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.
559
- * 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.
560
- *
561
- * Min: `1` minute
562
- * Max: `44639` minutes (30 days, 23 hours, and 59 minutes)
563
- * Default: `15` minutes
564
- * @min 1
565
- * @max 44639
566
- */
567
- durationInMinutes?: number | null;
568
- /**
569
- * Selected [add-on](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/add-ons/introduction) IDs.
570
- * 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.
571
- *
572
- * Max: 21 (3 add-on groups × 7 add-ons per group).
573
- * @format GUID
574
- * @maxSize 21
575
- */
576
- addOnIds?: string[] | null;
577
- /**
578
- * Selected duration choice ID.
579
- * @format GUID
580
- */
581
- durationChoiceId?: string | null;
582
- }
583
- interface ResourceType {
584
- /**
585
- * [Resource type ID](https://dev.wix.com/docs/api-reference/business-solutions/bookings/resources/resource-types-v2/introduction).
586
- * @format GUID
587
- */
588
- resourceTypeId?: string | null;
589
- /**
590
- * Resource IDs.
591
- * Available only if there is at least 1 resource available for the slot.
592
- * @format GUID
593
- * @maxSize 135
594
- */
595
- resourceIds?: string[] | null;
596
- }
597
- interface ListMultiServiceAvailabilityTimeSlotsResponse {
598
- /**
599
- * Retrieved time slots.
600
- * Sorted by `localStartDate` in ascending order. When multiple slots have the same start time, no specific secondary sorting is guaranteed.
601
- * @maxSize 1000
602
- */
603
- timeSlots?: TimeSlot[];
604
- /**
605
- * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) for adjusting `fromLocalDate` and `toLocalDate`.
606
- * For example, `America/New_York` or `UTC`.
607
- * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
608
- * @minLength 1
609
- * @maxLength 150
610
- */
611
- timeZone?: string | null;
612
- /**
613
- * Paging metadata for the next page of results.
614
- * Contains a cursor if there are more than 1000 results.
615
- */
616
- cursorPagingMetadata?: CursorPagingMetadata;
617
- }
618
- interface GetMultiServiceAvailabilityTimeSlotRequest {
619
- /**
620
- * Services for which the multi-service time slots are returned.
621
- * You can specify resource filters for each service.
622
- * @minSize 2
623
- * @maxSize 8
624
- */
625
- services?: Service[];
626
- /**
627
- * Local start date of the time slot in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
628
- * For example, `2026-01-30T13:30:00`.
629
- * @format LOCAL_DATE_TIME
630
- */
631
- localStartDate?: string;
632
- /**
633
- * Local end date of the time slot in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
634
- * For example, `2026-01-30T13:30:00`.
635
- * @format LOCAL_DATE_TIME
636
- */
637
- localEndDate?: string;
638
- /**
639
- * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) for adjusting `fromLocalDate` and `toLocalDate` values.
640
- * For example, `America/New_York` or `UTC`.
641
- *
642
- * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
643
- * @minLength 1
644
- * @maxLength 150
645
- */
646
- timeZone?: string | null;
647
- /**
648
- * 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.
649
- *
650
- * Required unless you specify `cursorPaging.cursor`.
651
- */
652
- location?: Location;
653
- }
654
- interface GetMultiServiceAvailabilityTimeSlotResponse {
655
- /** Retrieved time slot. */
656
- timeSlot?: TimeSlot;
657
- /**
658
- * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) for adjusting `fromLocalDate` and `toLocalDate`.
659
- * For example, `America/New_York` or `UTC`.
660
- * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
661
- * @minLength 1
662
- * @maxLength 150
663
- */
664
- timeZone?: string | null;
665
- }
666
447
  interface ListAvailabilityTimeSlotsRequest {
667
448
  /**
668
449
  * Service ID for which to retrieve time slots. You must specify the ID of an appointment-based service.
@@ -774,6 +555,20 @@ interface CustomerChoices {
774
555
  */
775
556
  durationChoiceId?: string | null;
776
557
  }
558
+ interface ResourceType {
559
+ /**
560
+ * [Resource type ID](https://dev.wix.com/docs/api-reference/business-solutions/bookings/resources/resource-types-v2/introduction).
561
+ * @format GUID
562
+ */
563
+ resourceTypeId?: string | null;
564
+ /**
565
+ * Resource IDs.
566
+ * Available only if there is at least 1 resource available for the slot.
567
+ * @format GUID
568
+ * @maxSize 135
569
+ */
570
+ resourceIds?: string[] | null;
571
+ }
777
572
  interface ListAvailabilityTimeSlotsResponse {
778
573
  /**
779
574
  * Retrieved time slots.
@@ -956,11 +751,11 @@ interface DiagnoseAvailabilityRequest {
956
751
  locations?: Location[];
957
752
  /**
958
753
  * Whether to run a deeper diagnosis. Optional; defaults to `false` — the fast, deterministic
959
- * configuration/setup checks (resource-availability-window checks are added to this path as they
960
- * roll out). Set `true` only when the default result is inconclusive (no reasons) and you need to
961
- * know *why* specific resources have no availability at specific times it samples resource
962
- * availability to attribute an empty window to a working-hours gap vs. blocked time, at extra
963
- * latency. Not supported yet `true` currently returns `DIAGNOSTIC_DEPTH_NOT_SUPPORTED`.
754
+ * configuration/setup and resource-availability-window checks. Set `true` to learn *why* resources
755
+ * have no availability windows: when the fast checks find none, it samples resource availability to
756
+ * attribute the empty result to a working-hours gap (`RESOURCE_NOT_IN_WORKING_HOURS`) vs. blocked time
757
+ * (`RESOURCE_BLOCKED`), at extra latency, falling back to `NO_RESOURCE_AVAILABILITY_WINDOWS` when
758
+ * sampling is inconclusive. Requires `serviceId`; otherwise returns `MISSING_ARGUMENTS`.
964
759
  */
965
760
  deep?: boolean;
966
761
  }
@@ -1079,6 +874,383 @@ interface ResolvedContext {
1079
874
  */
1080
875
  timeZone?: string | null;
1081
876
  }
877
+ interface BulkListAvailabilityTimeSlotsRequest {
878
+ /**
879
+ * IDs of the appointment-based services to retrieve time slots for.
880
+ * Non-appointment services and IDs that don't exist are returned as failed entries in `results`.
881
+ * @format GUID
882
+ * @minSize 1
883
+ * @maxSize 100
884
+ */
885
+ serviceIds?: string[];
886
+ /**
887
+ * Lower boundary for `localStartDate` to include, applied to every service.
888
+ * Each returned time slot has a `localStartDate` within the provided `fromLocalDate` and `toLocalDate` exclusive.
889
+ *
890
+ * Local start date in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
891
+ * For example, `2026-01-30T13:30:00`.
892
+ * @format LOCAL_DATE_TIME
893
+ */
894
+ fromLocalDate?: string | null;
895
+ /**
896
+ * Upper boundary for `localStartDate` to include, applied to every service.
897
+ * Each returned time slot has a `localStartDate` within the provided `fromLocalDate` and `toLocalDate` exclusive.
898
+ *
899
+ * Local end date in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
900
+ * For example, `2026-01-30T13:30:00`.
901
+ * @format LOCAL_DATE_TIME
902
+ */
903
+ toLocalDate?: string | null;
904
+ /**
905
+ * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) for adjusting `fromLocalDate` and `toLocalDate`.
906
+ * For example, `America/New_York` or `UTC`.
907
+ *
908
+ * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
909
+ * @minLength 1
910
+ * @maxLength 150
911
+ */
912
+ timeZone?: string | null;
913
+ /**
914
+ * Whether the time slot is bookable according to each service's booking policies.
915
+ * If not specified, returns both bookable and un-bookable time slots.
916
+ */
917
+ bookable?: boolean | null;
918
+ /**
919
+ * Maximum number of slots to return per service for each day in the specified time range.
920
+ * If `bookable` filter isn't specified, bookable slots are returned first.
921
+ *
922
+ * Min: `1`.
923
+ * @min 1
924
+ */
925
+ timeSlotsPerDay?: number | null;
926
+ /**
927
+ * Maximum number of time slots to return per service.
928
+ *
929
+ * Min: `1`. Max: `1000`.
930
+ *
931
+ * Default: `1000`.
932
+ * @min 1
933
+ * @max 1000
934
+ */
935
+ limitPerService?: number | null;
936
+ /**
937
+ * Locations to include in response, applied to every service.
938
+ * If not specified, returns time slots for all locations where each service is available.
939
+ * @maxSize 5
940
+ */
941
+ locations?: Location[];
942
+ /**
943
+ * Resource type IDs to include in the response, applied to every service.
944
+ * If specified, returns up to 10 `availableResources` with matching `resourceTypeId`.
945
+ * This controls which resource details are included in the response but doesn't filter the time slots themselves.
946
+ * @format GUID
947
+ * @maxSize 100
948
+ */
949
+ includeResourceTypeIds?: string[];
950
+ /**
951
+ * Indicators for services' booking policy violations, applied to every service.
952
+ * 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.
953
+ */
954
+ bookingPolicyViolations?: BookingPolicyViolations;
955
+ /**
956
+ * Selected customer choices for service configuration, applied to every service.
957
+ * If not specified, uses each service's default configuration.
958
+ *
959
+ * Not supported for services configured with a duration range (`availabilityConstraints.durationRange`).
960
+ *
961
+ * 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.
962
+ */
963
+ customerChoices?: CustomerChoices;
964
+ /**
965
+ * Resource types to filter time slots, applied to every service.
966
+ * Only returns time slots that have these specific resource types available.
967
+ * This filters the time slots themselves, unlike `includeResourceTypeIds` which only controls response details.
968
+ * @maxSize 3
969
+ */
970
+ resourceTypes?: ResourceType[];
971
+ }
972
+ interface BulkListAvailabilityTimeSlotsResponse {
973
+ /**
974
+ * Per-service results, one entry per requested `serviceId`.
975
+ * Each entry carries `itemMetadata` with the outcome, and `serviceTimeSlots` on success.
976
+ * Order isn't guaranteed to match the request; correlate via `itemMetadata.id` or `itemMetadata.originalIndex`.
977
+ * @maxSize 100
978
+ */
979
+ results?: BulkServiceTimeSlotsResult[];
980
+ /**
981
+ * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) used for all services.
982
+ * For example, `America/New_York` or `UTC`.
983
+ *
984
+ * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
985
+ * @minLength 1
986
+ * @maxLength 150
987
+ */
988
+ timeZone?: string | null;
989
+ /** Success and failure totals across all requested services. */
990
+ bulkActionMetadata?: BulkActionMetadata;
991
+ }
992
+ interface BulkServiceTimeSlotsResult {
993
+ /**
994
+ * Outcome for a single requested service.
995
+ * `id` echoes the `serviceId`, `originalIndex` is the service's position in the request, and
996
+ * `success`/`error` describe whether availability could be computed.
997
+ */
998
+ itemMetadata?: ItemMetadata;
999
+ /** Time slots for the service. Populated only when `itemMetadata.success` is `true`. */
1000
+ serviceTimeSlots?: ServiceTimeSlots;
1001
+ }
1002
+ interface ItemMetadata {
1003
+ /**
1004
+ * Item ID. Should always be available, unless it's impossible (for example, when failing to create an item).
1005
+ * @format GUID
1006
+ */
1007
+ id?: string | null;
1008
+ /** Index of the item within the request array. Allows for correlation between request and response items. */
1009
+ originalIndex?: number;
1010
+ /** Whether the requested action was successful for this item. When `false`, the `error` field is populated. */
1011
+ success?: boolean;
1012
+ /** Details about the error in case of failure. */
1013
+ error?: ApplicationError;
1014
+ }
1015
+ interface ApplicationError {
1016
+ /** Error code. */
1017
+ code?: string;
1018
+ /** Description of the error. */
1019
+ description?: string;
1020
+ /** Data related to the error. */
1021
+ data?: Record<string, any> | null;
1022
+ }
1023
+ interface ServiceTimeSlots {
1024
+ /**
1025
+ * Service the time slots belong to.
1026
+ * @format GUID
1027
+ */
1028
+ serviceId?: string;
1029
+ /**
1030
+ * Retrieved time slots for the service.
1031
+ * Sorted by `localStartDate` in ascending order. When multiple slots have the same start time, no specific secondary sorting is guaranteed.
1032
+ * @maxSize 1000
1033
+ */
1034
+ timeSlots?: TimeSlot[];
1035
+ /**
1036
+ * Paging metadata for the service's remaining slots.
1037
+ * To fetch more slots for this service, pass `cursors.next` to `ListAvailabilityTimeSlots`.
1038
+ */
1039
+ cursorPagingMetadata?: CursorPagingMetadata;
1040
+ }
1041
+ interface BulkActionMetadata {
1042
+ /** Number of items that were successfully processed. */
1043
+ totalSuccesses?: number;
1044
+ /** Number of items that couldn't be processed. */
1045
+ totalFailures?: number;
1046
+ /** Number of failures without details because detailed failure threshold was exceeded. */
1047
+ undetailedFailures?: number;
1048
+ }
1049
+ interface ListMultiServiceAvailabilityTimeSlotsRequest {
1050
+ /**
1051
+ * Services for which the multi-service time slots are returned.
1052
+ * Each service can include its own resource filters.
1053
+ *
1054
+ * Required unless you specify `cursorPaging.cursor`.
1055
+ *
1056
+ * Min: 2 services
1057
+ * Max: 8 services
1058
+ * @maxSize 8
1059
+ */
1060
+ services?: Service[];
1061
+ /**
1062
+ * Lower boundary for `localStartDate` in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
1063
+ * For example, `2026-01-30T13:30:00`.
1064
+ * Each returned time slot has a `localStartDate` between `fromLocalDate` and `toLocalDate`.
1065
+ *
1066
+ * Required unless you specify `cursorPaging.cursor`.
1067
+ * @format LOCAL_DATE_TIME
1068
+ */
1069
+ fromLocalDate?: string | null;
1070
+ /**
1071
+ * Upper boundary for `localToDate` in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
1072
+ * For example, `2026-01-30T13:30:00`.
1073
+ * Each returned time slot has a `localEndDate` between `fromLocalDate` and `toLocalDate`.
1074
+ *
1075
+ * Required unless you specify `cursorPaging.cursor`.
1076
+ * @format LOCAL_DATE_TIME
1077
+ */
1078
+ toLocalDate?: string | null;
1079
+ /**
1080
+ * 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`.
1081
+ *
1082
+ * Required unless you specify `cursorPaging.cursor`.
1083
+ *
1084
+ * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
1085
+ * @minLength 1
1086
+ * @maxLength 150
1087
+ */
1088
+ timeZone?: string | null;
1089
+ /**
1090
+ * 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.
1091
+ *
1092
+ * Required unless you specify `cursorPaging.cursor`.
1093
+ */
1094
+ location?: Location;
1095
+ /**
1096
+ * Whether the time slot is bookable according to all services' booking policies.
1097
+ * If not specified, returns both bookable and non-bookable time slots.
1098
+ */
1099
+ bookable?: boolean | null;
1100
+ /**
1101
+ * Indicators for service's booking policy violations.
1102
+ * 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.
1103
+ */
1104
+ bookingPolicyViolations?: BookingPolicyViolations;
1105
+ /**
1106
+ * Maximum number of slots to return for each day in the specified time range.
1107
+ * If `bookable` filter isn't specified, bookable slots are returned first.
1108
+ */
1109
+ timeSlotsPerDay?: number | null;
1110
+ /**
1111
+ * Cursor-based paging configuration.
1112
+ * Enables fetching results in smaller chunks by setting a limit on the number of results.
1113
+ * For consistent pagination behavior, use the same `limit` value throughout a pagination sequence.
1114
+ * When specifying a new `limit` in follow-up requests, the API respects the new value.
1115
+ */
1116
+ cursorPaging?: CursorPaging;
1117
+ }
1118
+ interface Service {
1119
+ /**
1120
+ * Service ID.
1121
+ * @format GUID
1122
+ */
1123
+ serviceId?: string;
1124
+ /**
1125
+ * Resource [type IDs](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/resource-types-v2/introduction) to include in returned time slots.
1126
+ * This is in addition to the specifically requested resources.
1127
+ *
1128
+ * <blockquote>
1129
+ * Currently supported only for Staff Member resource type.
1130
+ * Staff members belong to resource type ID `1cd44cf8-756f-41c3-bd90-3e2ffcaf1155`.
1131
+ * </blockquote>
1132
+ * @format GUID
1133
+ * @maxSize 100
1134
+ */
1135
+ includeResourceTypeIds?: string[];
1136
+ /**
1137
+ * Selected customer choices.
1138
+ * If specified, the selected choices are used to calculate service configuration.
1139
+ * If not specified, the service default configuration is used.
1140
+ * Enforcing this field is the responsibility of the service plugin implementer, and not the Time Slots V2 API.
1141
+ *
1142
+ * 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.
1143
+ */
1144
+ customerChoices?: V2CustomerChoices;
1145
+ /**
1146
+ * Resource types to filter time slots.
1147
+ * Only returns time slots that have these specific resource types available.
1148
+ * This filters the time slots themselves, unlike `includeResourceTypeIds` which only controls response details.
1149
+ * @maxSize 3
1150
+ */
1151
+ resourceTypes?: ResourceType[];
1152
+ }
1153
+ /**
1154
+ * Selected customer choices.
1155
+ *
1156
+ * These choices are selected by the customer during the book flow and used to calculate the service's availability configuration.
1157
+ */
1158
+ interface V2CustomerChoices {
1159
+ /**
1160
+ * 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.
1161
+ * 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.
1162
+ *
1163
+ * Min: `1` minute
1164
+ * Max: `44639` minutes (30 days, 23 hours, and 59 minutes)
1165
+ * Default: `15` minutes
1166
+ * @min 1
1167
+ * @max 44639
1168
+ */
1169
+ durationInMinutes?: number | null;
1170
+ /**
1171
+ * Selected [add-on](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/add-ons/introduction) IDs.
1172
+ * 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.
1173
+ *
1174
+ * Max: 21 (3 add-on groups × 7 add-ons per group).
1175
+ * @format GUID
1176
+ * @maxSize 21
1177
+ */
1178
+ addOnIds?: string[] | null;
1179
+ /**
1180
+ * Selected duration choice ID.
1181
+ * @format GUID
1182
+ */
1183
+ durationChoiceId?: string | null;
1184
+ }
1185
+ interface ListMultiServiceAvailabilityTimeSlotsResponse {
1186
+ /**
1187
+ * Retrieved time slots.
1188
+ * Sorted by `localStartDate` in ascending order. When multiple slots have the same start time, no specific secondary sorting is guaranteed.
1189
+ * @maxSize 1000
1190
+ */
1191
+ timeSlots?: TimeSlot[];
1192
+ /**
1193
+ * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) for adjusting `fromLocalDate` and `toLocalDate`.
1194
+ * For example, `America/New_York` or `UTC`.
1195
+ * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
1196
+ * @minLength 1
1197
+ * @maxLength 150
1198
+ */
1199
+ timeZone?: string | null;
1200
+ /**
1201
+ * Paging metadata for the next page of results.
1202
+ * Contains a cursor if there are more than 1000 results.
1203
+ */
1204
+ cursorPagingMetadata?: CursorPagingMetadata;
1205
+ }
1206
+ interface GetMultiServiceAvailabilityTimeSlotRequest {
1207
+ /**
1208
+ * Services for which the multi-service time slots are returned.
1209
+ * You can specify resource filters for each service.
1210
+ * @minSize 2
1211
+ * @maxSize 8
1212
+ */
1213
+ services?: Service[];
1214
+ /**
1215
+ * Local start date of the time slot in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
1216
+ * For example, `2026-01-30T13:30:00`.
1217
+ * @format LOCAL_DATE_TIME
1218
+ */
1219
+ localStartDate?: string;
1220
+ /**
1221
+ * Local end date of the time slot in `YYYY-MM-DDThh:mm:ss` [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601).
1222
+ * For example, `2026-01-30T13:30:00`.
1223
+ * @format LOCAL_DATE_TIME
1224
+ */
1225
+ localEndDate?: string;
1226
+ /**
1227
+ * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) for adjusting `fromLocalDate` and `toLocalDate` values.
1228
+ * For example, `America/New_York` or `UTC`.
1229
+ *
1230
+ * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
1231
+ * @minLength 1
1232
+ * @maxLength 150
1233
+ */
1234
+ timeZone?: string | null;
1235
+ /**
1236
+ * 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.
1237
+ *
1238
+ * Required unless you specify `cursorPaging.cursor`.
1239
+ */
1240
+ location?: Location;
1241
+ }
1242
+ interface GetMultiServiceAvailabilityTimeSlotResponse {
1243
+ /** Retrieved time slot. */
1244
+ timeSlot?: TimeSlot;
1245
+ /**
1246
+ * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) for adjusting `fromLocalDate` and `toLocalDate`.
1247
+ * For example, `America/New_York` or `UTC`.
1248
+ * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/api-reference/business-management/site-properties/properties/get-site-properties).
1249
+ * @minLength 1
1250
+ * @maxLength 150
1251
+ */
1252
+ timeZone?: string | null;
1253
+ }
1082
1254
  /** @docsIgnore */
1083
1255
  type ListAvailabilityTimeSlotsApplicationErrors = {
1084
1256
  code?: 'NO_IMPLEMENTERS_FOUND';
@@ -1160,4 +1332,4 @@ declare function listAvailabilityTimeSlots(): __PublicMethodMetaInfo<'POST', {},
1160
1332
  declare function listAvailabilityTimeSlotEndOptions(): __PublicMethodMetaInfo<'POST', {}, ListAvailabilityTimeSlotEndOptionsRequest$1, ListAvailabilityTimeSlotEndOptionsRequest, ListAvailabilityTimeSlotEndOptionsResponse$1, ListAvailabilityTimeSlotEndOptionsResponse>;
1161
1333
  declare function getAvailabilityTimeSlot(): __PublicMethodMetaInfo<'POST', {}, GetAvailabilityTimeSlotRequest$1, GetAvailabilityTimeSlotRequest, GetAvailabilityTimeSlotResponse$1, GetAvailabilityTimeSlotResponse>;
1162
1334
 
1163
- export { type AvailableResources as AvailableResourcesOriginal, type BookingPolicyViolations as BookingPolicyViolationsOriginal, type CursorPagingMetadata as CursorPagingMetadataOriginal, type CursorPaging as CursorPagingOriginal, type Cursors as CursorsOriginal, type CustomerChoices as CustomerChoicesOriginal, type DiagnoseAvailabilityRequest as DiagnoseAvailabilityRequestOriginal, type DiagnoseAvailabilityResponse as DiagnoseAvailabilityResponseOriginal, type DiagnosisReason as DiagnosisReasonOriginal, type EventInfo as EventInfoOriginal, type GetAvailabilityTimeSlotApplicationErrors as GetAvailabilityTimeSlotApplicationErrorsOriginal, type GetAvailabilityTimeSlotRequestCustomerChoices as GetAvailabilityTimeSlotRequestCustomerChoicesOriginal, type GetAvailabilityTimeSlotRequest as GetAvailabilityTimeSlotRequestOriginal, type GetAvailabilityTimeSlotResponse as GetAvailabilityTimeSlotResponseOriginal, type GetEventTimeSlotRequest as GetEventTimeSlotRequestOriginal, type GetEventTimeSlotResponse as GetEventTimeSlotResponseOriginal, type GetMultiServiceAvailabilityTimeSlotRequest as GetMultiServiceAvailabilityTimeSlotRequestOriginal, type GetMultiServiceAvailabilityTimeSlotResponse as GetMultiServiceAvailabilityTimeSlotResponseOriginal, type ListAvailabilityTimeSlotEndOptionsApplicationErrors as ListAvailabilityTimeSlotEndOptionsApplicationErrorsOriginal, type ListAvailabilityTimeSlotEndOptionsRequest as ListAvailabilityTimeSlotEndOptionsRequestOriginal, type ListAvailabilityTimeSlotEndOptionsResponse as ListAvailabilityTimeSlotEndOptionsResponseOriginal, type ListAvailabilityTimeSlotsApplicationErrors as ListAvailabilityTimeSlotsApplicationErrorsOriginal, type ListAvailabilityTimeSlotsRequest as ListAvailabilityTimeSlotsRequestOriginal, type ListAvailabilityTimeSlotsResponse as ListAvailabilityTimeSlotsResponseOriginal, type ListEventTimeSlotsRequest as ListEventTimeSlotsRequestOriginal, type ListEventTimeSlotsResponse as ListEventTimeSlotsResponseOriginal, type ListMultiServiceAvailabilityTimeSlotsRequest as ListMultiServiceAvailabilityTimeSlotsRequestOriginal, type ListMultiServiceAvailabilityTimeSlotsResponse as ListMultiServiceAvailabilityTimeSlotsResponseOriginal, type Location as LocationOriginal, LocationType as LocationTypeOriginal, type LocationTypeWithLiterals as LocationTypeWithLiteralsOriginal, type NestedTimeSlot as NestedTimeSlotOriginal, type NonBookableReasons as NonBookableReasonsOriginal, ReasonCode as ReasonCodeOriginal, type ReasonCodeWithLiterals as ReasonCodeWithLiteralsOriginal, type ResolvedContext as ResolvedContextOriginal, type Resource as ResourceOriginal, type ResourceType as ResourceTypeOriginal, type Service as ServiceOriginal, SuggestedAction as SuggestedActionOriginal, type SuggestedActionWithLiterals as SuggestedActionWithLiteralsOriginal, type TimeSlot as TimeSlotOriginal, type V2CustomerChoices as V2CustomerChoicesOriginal, type WaitingList as WaitingListOriginal, type __PublicMethodMetaInfo, getAvailabilityTimeSlot, listAvailabilityTimeSlotEndOptions, listAvailabilityTimeSlots };
1335
+ export { type ApplicationError as ApplicationErrorOriginal, type AvailableResources as AvailableResourcesOriginal, type BookingPolicyViolations as BookingPolicyViolationsOriginal, type BulkActionMetadata as BulkActionMetadataOriginal, type BulkListAvailabilityTimeSlotsRequest as BulkListAvailabilityTimeSlotsRequestOriginal, type BulkListAvailabilityTimeSlotsResponse as BulkListAvailabilityTimeSlotsResponseOriginal, type BulkServiceTimeSlotsResult as BulkServiceTimeSlotsResultOriginal, type CursorPagingMetadata as CursorPagingMetadataOriginal, type CursorPaging as CursorPagingOriginal, type Cursors as CursorsOriginal, type CustomerChoices as CustomerChoicesOriginal, type DiagnoseAvailabilityRequest as DiagnoseAvailabilityRequestOriginal, type DiagnoseAvailabilityResponse as DiagnoseAvailabilityResponseOriginal, type DiagnosisReason as DiagnosisReasonOriginal, type EventInfo as EventInfoOriginal, type GetAvailabilityTimeSlotApplicationErrors as GetAvailabilityTimeSlotApplicationErrorsOriginal, type GetAvailabilityTimeSlotRequestCustomerChoices as GetAvailabilityTimeSlotRequestCustomerChoicesOriginal, type GetAvailabilityTimeSlotRequest as GetAvailabilityTimeSlotRequestOriginal, type GetAvailabilityTimeSlotResponse as GetAvailabilityTimeSlotResponseOriginal, type GetEventTimeSlotRequest as GetEventTimeSlotRequestOriginal, type GetEventTimeSlotResponse as GetEventTimeSlotResponseOriginal, type GetMultiServiceAvailabilityTimeSlotRequest as GetMultiServiceAvailabilityTimeSlotRequestOriginal, type GetMultiServiceAvailabilityTimeSlotResponse as GetMultiServiceAvailabilityTimeSlotResponseOriginal, type ItemMetadata as ItemMetadataOriginal, type ListAvailabilityTimeSlotEndOptionsApplicationErrors as ListAvailabilityTimeSlotEndOptionsApplicationErrorsOriginal, type ListAvailabilityTimeSlotEndOptionsRequest as ListAvailabilityTimeSlotEndOptionsRequestOriginal, type ListAvailabilityTimeSlotEndOptionsResponse as ListAvailabilityTimeSlotEndOptionsResponseOriginal, type ListAvailabilityTimeSlotsApplicationErrors as ListAvailabilityTimeSlotsApplicationErrorsOriginal, type ListAvailabilityTimeSlotsRequest as ListAvailabilityTimeSlotsRequestOriginal, type ListAvailabilityTimeSlotsResponse as ListAvailabilityTimeSlotsResponseOriginal, type ListEventTimeSlotsRequest as ListEventTimeSlotsRequestOriginal, type ListEventTimeSlotsResponse as ListEventTimeSlotsResponseOriginal, type ListMultiServiceAvailabilityTimeSlotsRequest as ListMultiServiceAvailabilityTimeSlotsRequestOriginal, type ListMultiServiceAvailabilityTimeSlotsResponse as ListMultiServiceAvailabilityTimeSlotsResponseOriginal, type Location as LocationOriginal, LocationType as LocationTypeOriginal, type LocationTypeWithLiterals as LocationTypeWithLiteralsOriginal, type NestedTimeSlot as NestedTimeSlotOriginal, type NonBookableReasons as NonBookableReasonsOriginal, ReasonCode as ReasonCodeOriginal, type ReasonCodeWithLiterals as ReasonCodeWithLiteralsOriginal, type ResolvedContext as ResolvedContextOriginal, type Resource as ResourceOriginal, type ResourceType as ResourceTypeOriginal, type Service as ServiceOriginal, type ServiceTimeSlots as ServiceTimeSlotsOriginal, SuggestedAction as SuggestedActionOriginal, type SuggestedActionWithLiterals as SuggestedActionWithLiteralsOriginal, type TimeSlot as TimeSlotOriginal, type V2CustomerChoices as V2CustomerChoicesOriginal, type WaitingList as WaitingListOriginal, type __PublicMethodMetaInfo, getAvailabilityTimeSlot, listAvailabilityTimeSlotEndOptions, listAvailabilityTimeSlots };