@savvycal/appointments-core 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/dist/index.d.cts +1259 -86
  2. package/dist/index.d.ts +1259 -86
  3. package/package.json +1 -1
package/dist/index.d.ts CHANGED
@@ -1257,7 +1257,34 @@ interface components {
1257
1257
  */
1258
1258
  object: "block";
1259
1259
  /** @description The recurrence rule for the block (or null if there is no recurrence). */
1260
- recurrence_rule: components["schemas"]["RecurrenceRule"] | null;
1260
+ recurrence_rule: {
1261
+ /**
1262
+ * @description The days of the week on which the recurrence occurs.
1263
+ * @example [
1264
+ * "mo",
1265
+ * "we",
1266
+ * "fr"
1267
+ * ]
1268
+ */
1269
+ byday?: string[];
1270
+ /** @description Number of occurrences at which to end the recurrence. */
1271
+ count?: number | null;
1272
+ /**
1273
+ * @description The frequency of the recurrence.
1274
+ * @enum {string}
1275
+ */
1276
+ freq: "daily" | "weekly";
1277
+ /**
1278
+ * @description How often the recurrence rule repeats.
1279
+ * @example 2
1280
+ */
1281
+ interval?: number;
1282
+ /**
1283
+ * @description Date at which to end the recurrence (in ISO-8601 format).
1284
+ * @example 2024-01-02
1285
+ */
1286
+ until?: Record<string, never> | null;
1287
+ } | null;
1261
1288
  /** @description The ID of the service for the block. Required when `attachment_type` is `service_provider`. */
1262
1289
  service_id: string | null;
1263
1290
  /**
@@ -1391,6 +1418,9 @@ interface components {
1391
1418
  * "first_name": "John",
1392
1419
  * "id": "prov_d025a96ac0c6",
1393
1420
  * "last_name": "Smith",
1421
+ * "metadata": {
1422
+ * "external_id": "123"
1423
+ * },
1394
1424
  * "object": "provider",
1395
1425
  * "updated_at": "2017-09-13T10:11:12Z"
1396
1426
  * },
@@ -1623,6 +1653,9 @@ interface components {
1623
1653
  * "first_name": "John",
1624
1654
  * "id": "prov_d025a96ac0c6",
1625
1655
  * "last_name": "Smith",
1656
+ * "metadata": {
1657
+ * "external_id": "123"
1658
+ * },
1626
1659
  * "object": "provider",
1627
1660
  * "updated_at": "2017-09-13T10:11:12Z"
1628
1661
  * },
@@ -2080,6 +2113,9 @@ interface components {
2080
2113
  * "first_name": "John",
2081
2114
  * "id": "prov_d025a96ac0c6",
2082
2115
  * "last_name": "Smith",
2116
+ * "metadata": {
2117
+ * "external_id": "123"
2118
+ * },
2083
2119
  * "object": "provider",
2084
2120
  * "updated_at": "2017-09-13T10:11:12Z"
2085
2121
  * }
@@ -2098,6 +2134,8 @@ interface components {
2098
2134
  id: string;
2099
2135
  /** @description The provider's last name. */
2100
2136
  last_name: string;
2137
+ /** @description Set of key-value pairs attached to this provider. Maximum size is 16 KB. */
2138
+ metadata?: Record<string, never>;
2101
2139
  /**
2102
2140
  * @description String representing the object's type.
2103
2141
  * @enum {string}
@@ -2736,6 +2774,9 @@ interface components {
2736
2774
  * "first_name": "John",
2737
2775
  * "id": "prov_d025a96ac0c6",
2738
2776
  * "last_name": "Smith",
2777
+ * "metadata": {
2778
+ * "external_id": "123"
2779
+ * },
2739
2780
  * "object": "provider",
2740
2781
  * "updated_at": "2017-09-13T10:11:12Z"
2741
2782
  * },
@@ -2798,6 +2839,9 @@ interface components {
2798
2839
  * "first_name": "John",
2799
2840
  * "id": "prov_d025a96ac0c6",
2800
2841
  * "last_name": "Smith",
2842
+ * "metadata": {
2843
+ * "external_id": "123"
2844
+ * },
2801
2845
  * "object": "provider",
2802
2846
  * "updated_at": "2017-09-13T10:11:12Z"
2803
2847
  * },
@@ -2927,7 +2971,34 @@ interface components {
2927
2971
  /** @description The exception dates for the block. */
2928
2972
  exception_dates?: string[];
2929
2973
  /** @description The recurrence rule for the block (or null if there is no recurrence). */
2930
- recurrence_rule?: components["schemas"]["RecurrenceRule"] | null;
2974
+ recurrence_rule?: {
2975
+ /**
2976
+ * @description The days of the week on which the recurrence occurs.
2977
+ * @example [
2978
+ * "mo",
2979
+ * "we",
2980
+ * "fr"
2981
+ * ]
2982
+ */
2983
+ byday?: string[];
2984
+ /** @description Number of occurrences at which to end the recurrence. */
2985
+ count?: number | null;
2986
+ /**
2987
+ * @description The frequency of the recurrence.
2988
+ * @enum {string}
2989
+ */
2990
+ freq: "daily" | "weekly";
2991
+ /**
2992
+ * @description How often the recurrence rule repeats.
2993
+ * @example 2
2994
+ */
2995
+ interval?: number;
2996
+ /**
2997
+ * @description Date at which to end the recurrence (in ISO-8601 format).
2998
+ * @example 2024-01-02
2999
+ */
3000
+ until?: Record<string, never> | null;
3001
+ } | null;
2931
3002
  /** @description The ID of the service for the block. Required when `attachment_type` is `service_provider`. */
2932
3003
  service_id?: string | null;
2933
3004
  /**
@@ -3027,6 +3098,9 @@ interface components {
3027
3098
  * "first_name": "John",
3028
3099
  * "id": "prov_d025a96ac0c6",
3029
3100
  * "last_name": "Smith",
3101
+ * "metadata": {
3102
+ * "external_id": "123"
3103
+ * },
3030
3104
  * "object": "provider",
3031
3105
  * "updated_at": "2017-09-13T10:11:12Z"
3032
3106
  * },
@@ -3048,6 +3122,9 @@ interface components {
3048
3122
  * "email": "john.smith@tendermedical.com",
3049
3123
  * "first_name": "John",
3050
3124
  * "last_name": "Smith",
3125
+ * "metadata": {
3126
+ * "external_id": "123"
3127
+ * },
3051
3128
  * "notify": false,
3052
3129
  * "role_ids": [
3053
3130
  * "role_123456789012"
@@ -3068,6 +3145,8 @@ interface components {
3068
3145
  first_name: string;
3069
3146
  /** @description The provider's last name. */
3070
3147
  last_name: string;
3148
+ /** @description Set of key-value pairs to attach to this provider. Maximum size is 16 KB. */
3149
+ metadata?: Record<string, never>;
3071
3150
  /**
3072
3151
  * @description Whether to send an email notification to the user (if `add_user` is true). If they don't already have an account, they will receive an email with instructions to set their password when this property is true.
3073
3152
  * @default false
@@ -3089,6 +3168,9 @@ interface components {
3089
3168
  * "first_name": "John",
3090
3169
  * "id": "prov_d025a96ac0c6",
3091
3170
  * "last_name": "Smith",
3171
+ * "metadata": {
3172
+ * "external_id": "123"
3173
+ * },
3092
3174
  * "object": "provider",
3093
3175
  * "updated_at": "2017-09-13T10:11:12Z"
3094
3176
  * },
@@ -3424,6 +3506,8 @@ interface components {
3424
3506
  * CreateAccountUserRequest
3425
3507
  * @description Request schema for creating a user in an account
3426
3508
  * @example {
3509
+ * "add_provider": false,
3510
+ * "display_name": "Dr. John Doe",
3427
3511
  * "email": "john.doe@example.com",
3428
3512
  * "first_name": "John",
3429
3513
  * "last_name": "Doe",
@@ -3435,6 +3519,13 @@ interface components {
3435
3519
  * }
3436
3520
  */
3437
3521
  CreateAccountUserRequest: {
3522
+ /**
3523
+ * @description Whether to create a staff member (provider) for this user. If a provider with the same email already exists, it will be affiliated with this user instead of creating a new one.
3524
+ * @default false
3525
+ */
3526
+ add_provider: boolean;
3527
+ /** @description The display name for the staff member. Only used when `add_provider` is true. Defaults to 'FirstName LastName' if not provided. */
3528
+ display_name?: string;
3438
3529
  /**
3439
3530
  * Format: email
3440
3531
  * @description The user's email address.
@@ -3587,7 +3678,10 @@ interface components {
3587
3678
  * @example {
3588
3679
  * "display_name": "John Smith",
3589
3680
  * "first_name": "John",
3590
- * "last_name": "Smith"
3681
+ * "last_name": "Smith",
3682
+ * "metadata": {
3683
+ * "external_id": "123"
3684
+ * }
3591
3685
  * }
3592
3686
  */
3593
3687
  UpdateProviderRequest: {
@@ -3597,6 +3691,8 @@ interface components {
3597
3691
  first_name?: string;
3598
3692
  /** @description Provider's last name */
3599
3693
  last_name?: string;
3694
+ /** @description Set of key-value pairs to attach to this provider. Maximum size is 16 KB. */
3695
+ metadata?: Record<string, never>;
3600
3696
  };
3601
3697
  /**
3602
3698
  * PublicCancellationReason
@@ -3621,6 +3717,161 @@ interface components {
3621
3717
  /** @description The sort order of the cancellation reason. */
3622
3718
  sort_order: number;
3623
3719
  };
3720
+ /**
3721
+ * BlockUpdatedEventData
3722
+ * @description This is an object representing data for the block updated event.
3723
+ * @example {
3724
+ * "object": {
3725
+ * "all_day": false,
3726
+ * "attachment_type": "provider",
3727
+ * "attachments": [
3728
+ * "prov_d025a96ac0c6"
3729
+ * ],
3730
+ * "created_at": "2017-09-12T12:34:55Z",
3731
+ * "end_date": "2025-10-27",
3732
+ * "end_time": "17:00",
3733
+ * "exception_dates": [
3734
+ * "2025-10-27T09:00:00"
3735
+ * ],
3736
+ * "id": "blk_d025a96ac0c6",
3737
+ * "object": "block",
3738
+ * "recurrence_rule": {
3739
+ * "byday": [
3740
+ * "mo",
3741
+ * "we",
3742
+ * "fr"
3743
+ * ],
3744
+ * "freq": "weekly"
3745
+ * },
3746
+ * "service_id": null,
3747
+ * "start_date": "2025-10-27",
3748
+ * "start_time": "09:00",
3749
+ * "time_zone": "America/New_York",
3750
+ * "title": "Team Meeting",
3751
+ * "updated_at": "2017-09-13T10:11:12Z"
3752
+ * },
3753
+ * "type": "block.updated"
3754
+ * }
3755
+ */
3756
+ BlockUpdatedEventData: {
3757
+ /**
3758
+ * Block
3759
+ * @description This is an object representing a range of blocked time for a provider, service, service provider, or location.
3760
+ * @example {
3761
+ * "all_day": false,
3762
+ * "attachment_type": "provider",
3763
+ * "attachments": [
3764
+ * "prov_d025a96ac0c6"
3765
+ * ],
3766
+ * "created_at": "2017-09-12T12:34:55Z",
3767
+ * "end_date": "2025-10-27",
3768
+ * "end_time": "17:00",
3769
+ * "exception_dates": [
3770
+ * "2025-10-27T09:00:00"
3771
+ * ],
3772
+ * "id": "blk_d025a96ac0c6",
3773
+ * "object": "block",
3774
+ * "recurrence_rule": {
3775
+ * "byday": [
3776
+ * "mo",
3777
+ * "we",
3778
+ * "fr"
3779
+ * ],
3780
+ * "freq": "weekly"
3781
+ * },
3782
+ * "service_id": null,
3783
+ * "start_date": "2025-10-27",
3784
+ * "start_time": "09:00",
3785
+ * "time_zone": "America/New_York",
3786
+ * "title": "Team Meeting",
3787
+ * "updated_at": "2017-09-13T10:11:12Z"
3788
+ * }
3789
+ */
3790
+ object: {
3791
+ /** @description Whether the block is all day. */
3792
+ all_day: boolean;
3793
+ /**
3794
+ * @description The type of attachment for the block.
3795
+ * @enum {string}
3796
+ */
3797
+ attachment_type: "location" | "service" | "provider" | "service_provider";
3798
+ /** @description The resources to which this block is attached. These can be service IDs (to block availabilty for all providers on a service), provider IDs (to block availability for a specific provider), or location IDs (to block availability for a specific location). */
3799
+ attachments: string[];
3800
+ /**
3801
+ * Format: date-time
3802
+ * @description Time at which the object was created.
3803
+ */
3804
+ created_at: string;
3805
+ /**
3806
+ * Format: date
3807
+ * @description The end date of the block.
3808
+ */
3809
+ end_date: string;
3810
+ /** @description The end time of the block. */
3811
+ end_time: string | null;
3812
+ /** @description The exception dates for the block. */
3813
+ exception_dates: string[];
3814
+ /** @description Unique identifier for the object. */
3815
+ id: string;
3816
+ /**
3817
+ * @description String representing the object's type.
3818
+ * @enum {string}
3819
+ */
3820
+ object: "block";
3821
+ /** @description The recurrence rule for the block (or null if there is no recurrence). */
3822
+ recurrence_rule: {
3823
+ /**
3824
+ * @description The days of the week on which the recurrence occurs.
3825
+ * @example [
3826
+ * "mo",
3827
+ * "we",
3828
+ * "fr"
3829
+ * ]
3830
+ */
3831
+ byday?: string[];
3832
+ /** @description Number of occurrences at which to end the recurrence. */
3833
+ count?: number | null;
3834
+ /**
3835
+ * @description The frequency of the recurrence.
3836
+ * @enum {string}
3837
+ */
3838
+ freq: "daily" | "weekly";
3839
+ /**
3840
+ * @description How often the recurrence rule repeats.
3841
+ * @example 2
3842
+ */
3843
+ interval?: number;
3844
+ /**
3845
+ * @description Date at which to end the recurrence (in ISO-8601 format).
3846
+ * @example 2024-01-02
3847
+ */
3848
+ until?: Record<string, never> | null;
3849
+ } | null;
3850
+ /** @description The ID of the service for the block. Required when `attachment_type` is `service_provider`. */
3851
+ service_id: string | null;
3852
+ /**
3853
+ * Format: date
3854
+ * @description The start date of the block.
3855
+ */
3856
+ start_date: string;
3857
+ /** @description The start time of the block. */
3858
+ start_time: string | null;
3859
+ /** @description The time zone of the block. */
3860
+ time_zone: string | null;
3861
+ /** @description The title of the block. */
3862
+ title: string | null;
3863
+ /**
3864
+ * Format: date-time
3865
+ * @description Time at which the object was last updated.
3866
+ */
3867
+ updated_at: string;
3868
+ };
3869
+ /**
3870
+ * @description The event type. (enum property replaced by openapi-typescript)
3871
+ * @enum {string}
3872
+ */
3873
+ type: "block.updated";
3874
+ };
3624
3875
  /**
3625
3876
  * ReschedulePublicAppointmentRequest
3626
3877
  * @description Request schema for rescheduling a public appointment
@@ -4015,6 +4266,9 @@ interface components {
4015
4266
  * "first_name": "John",
4016
4267
  * "id": "prov_d025a96ac0c6",
4017
4268
  * "last_name": "Smith",
4269
+ * "metadata": {
4270
+ * "external_id": "123"
4271
+ * },
4018
4272
  * "object": "provider",
4019
4273
  * "updated_at": "2017-09-13T10:11:12Z"
4020
4274
  * },
@@ -4231,6 +4485,9 @@ interface components {
4231
4485
  * "first_name": "John",
4232
4486
  * "id": "prov_d025a96ac0c6",
4233
4487
  * "last_name": "Smith",
4488
+ * "metadata": {
4489
+ * "external_id": "123"
4490
+ * },
4234
4491
  * "object": "provider",
4235
4492
  * "updated_at": "2017-09-13T10:11:12Z"
4236
4493
  * },
@@ -4688,6 +4945,9 @@ interface components {
4688
4945
  * "first_name": "John",
4689
4946
  * "id": "prov_d025a96ac0c6",
4690
4947
  * "last_name": "Smith",
4948
+ * "metadata": {
4949
+ * "external_id": "123"
4950
+ * },
4691
4951
  * "object": "provider",
4692
4952
  * "updated_at": "2017-09-13T10:11:12Z"
4693
4953
  * }
@@ -4706,6 +4966,8 @@ interface components {
4706
4966
  id: string;
4707
4967
  /** @description The provider's last name. */
4708
4968
  last_name: string;
4969
+ /** @description Set of key-value pairs attached to this provider. Maximum size is 16 KB. */
4970
+ metadata?: Record<string, never>;
4709
4971
  /**
4710
4972
  * @description String representing the object's type.
4711
4973
  * @enum {string}
@@ -5381,6 +5643,9 @@ interface components {
5381
5643
  * "first_name": "John",
5382
5644
  * "id": "prov_d025a96ac0c6",
5383
5645
  * "last_name": "Smith",
5646
+ * "metadata": {
5647
+ * "external_id": "123"
5648
+ * },
5384
5649
  * "object": "provider",
5385
5650
  * "updated_at": "2017-09-13T10:11:12Z"
5386
5651
  * },
@@ -5608,6 +5873,9 @@ interface components {
5608
5873
  * "first_name": "John",
5609
5874
  * "id": "prov_d025a96ac0c6",
5610
5875
  * "last_name": "Smith",
5876
+ * "metadata": {
5877
+ * "external_id": "123"
5878
+ * },
5611
5879
  * "object": "provider",
5612
5880
  * "updated_at": "2017-09-13T10:11:12Z"
5613
5881
  * },
@@ -6065,6 +6333,9 @@ interface components {
6065
6333
  * "first_name": "John",
6066
6334
  * "id": "prov_d025a96ac0c6",
6067
6335
  * "last_name": "Smith",
6336
+ * "metadata": {
6337
+ * "external_id": "123"
6338
+ * },
6068
6339
  * "object": "provider",
6069
6340
  * "updated_at": "2017-09-13T10:11:12Z"
6070
6341
  * }
@@ -6083,6 +6354,8 @@ interface components {
6083
6354
  id: string;
6084
6355
  /** @description The provider's last name. */
6085
6356
  last_name: string;
6357
+ /** @description Set of key-value pairs attached to this provider. Maximum size is 16 KB. */
6358
+ metadata?: Record<string, never>;
6086
6359
  /**
6087
6360
  * @description String representing the object's type.
6088
6361
  * @enum {string}
@@ -6678,6 +6951,9 @@ interface components {
6678
6951
  * "first_name": "John",
6679
6952
  * "id": "prov_d025a96ac0c6",
6680
6953
  * "last_name": "Smith",
6954
+ * "metadata": {
6955
+ * "external_id": "123"
6956
+ * },
6681
6957
  * "object": "provider",
6682
6958
  * "updated_at": "2017-09-13T10:11:12Z"
6683
6959
  * },
@@ -7135,6 +7411,9 @@ interface components {
7135
7411
  * "first_name": "John",
7136
7412
  * "id": "prov_d025a96ac0c6",
7137
7413
  * "last_name": "Smith",
7414
+ * "metadata": {
7415
+ * "external_id": "123"
7416
+ * },
7138
7417
  * "object": "provider",
7139
7418
  * "updated_at": "2017-09-13T10:11:12Z"
7140
7419
  * }
@@ -7153,6 +7432,8 @@ interface components {
7153
7432
  id: string;
7154
7433
  /** @description The provider's last name. */
7155
7434
  last_name: string;
7435
+ /** @description Set of key-value pairs attached to this provider. Maximum size is 16 KB. */
7436
+ metadata?: Record<string, never>;
7156
7437
  /**
7157
7438
  * @description String representing the object's type.
7158
7439
  * @enum {string}
@@ -7828,6 +8109,9 @@ interface components {
7828
8109
  * "first_name": "John",
7829
8110
  * "id": "prov_d025a96ac0c6",
7830
8111
  * "last_name": "Smith",
8112
+ * "metadata": {
8113
+ * "external_id": "123"
8114
+ * },
7831
8115
  * "object": "provider",
7832
8116
  * "updated_at": "2017-09-13T10:11:12Z"
7833
8117
  * },
@@ -8285,6 +8569,9 @@ interface components {
8285
8569
  * "first_name": "John",
8286
8570
  * "id": "prov_d025a96ac0c6",
8287
8571
  * "last_name": "Smith",
8572
+ * "metadata": {
8573
+ * "external_id": "123"
8574
+ * },
8288
8575
  * "object": "provider",
8289
8576
  * "updated_at": "2017-09-13T10:11:12Z"
8290
8577
  * }
@@ -8303,6 +8590,8 @@ interface components {
8303
8590
  id: string;
8304
8591
  /** @description The provider's last name. */
8305
8592
  last_name: string;
8593
+ /** @description Set of key-value pairs attached to this provider. Maximum size is 16 KB. */
8594
+ metadata?: Record<string, never>;
8306
8595
  /**
8307
8596
  * @description String representing the object's type.
8308
8597
  * @enum {string}
@@ -8898,6 +9187,9 @@ interface components {
8898
9187
  * "first_name": "John",
8899
9188
  * "id": "prov_d025a96ac0c6",
8900
9189
  * "last_name": "Smith",
9190
+ * "metadata": {
9191
+ * "external_id": "123"
9192
+ * },
8901
9193
  * "object": "provider",
8902
9194
  * "updated_at": "2017-09-13T10:11:12Z"
8903
9195
  * },
@@ -9355,6 +9647,9 @@ interface components {
9355
9647
  * "first_name": "John",
9356
9648
  * "id": "prov_d025a96ac0c6",
9357
9649
  * "last_name": "Smith",
9650
+ * "metadata": {
9651
+ * "external_id": "123"
9652
+ * },
9358
9653
  * "object": "provider",
9359
9654
  * "updated_at": "2017-09-13T10:11:12Z"
9360
9655
  * }
@@ -9373,6 +9668,8 @@ interface components {
9373
9668
  id: string;
9374
9669
  /** @description The provider's last name. */
9375
9670
  last_name: string;
9671
+ /** @description Set of key-value pairs attached to this provider. Maximum size is 16 KB. */
9672
+ metadata?: Record<string, never>;
9376
9673
  /**
9377
9674
  * @description String representing the object's type.
9378
9675
  * @enum {string}
@@ -9968,6 +10265,9 @@ interface components {
9968
10265
  * "first_name": "John",
9969
10266
  * "id": "prov_d025a96ac0c6",
9970
10267
  * "last_name": "Smith",
10268
+ * "metadata": {
10269
+ * "external_id": "123"
10270
+ * },
9971
10271
  * "object": "provider",
9972
10272
  * "updated_at": "2017-09-13T10:11:12Z"
9973
10273
  * },
@@ -10425,6 +10725,9 @@ interface components {
10425
10725
  * "first_name": "John",
10426
10726
  * "id": "prov_d025a96ac0c6",
10427
10727
  * "last_name": "Smith",
10728
+ * "metadata": {
10729
+ * "external_id": "123"
10730
+ * },
10428
10731
  * "object": "provider",
10429
10732
  * "updated_at": "2017-09-13T10:11:12Z"
10430
10733
  * }
@@ -10443,6 +10746,8 @@ interface components {
10443
10746
  id: string;
10444
10747
  /** @description The provider's last name. */
10445
10748
  last_name: string;
10749
+ /** @description Set of key-value pairs attached to this provider. Maximum size is 16 KB. */
10750
+ metadata?: Record<string, never>;
10446
10751
  /**
10447
10752
  * @description String representing the object's type.
10448
10753
  * @enum {string}
@@ -10945,51 +11250,405 @@ interface components {
10945
11250
  * @enum {string}
10946
11251
  */
10947
11252
  type: "appointment.deleted";
10948
- };
10949
- /** @description Unique identifier for the object. */
10950
- id: string;
10951
- /**
10952
- * @description String representing the object's type.
10953
- * @enum {string}
10954
- */
10955
- object?: "account_event";
10956
- /** @description The event version. */
10957
- version: string;
10958
- };
10959
- /**
10960
- * AppointmentsResponse
10961
- * @description Response schema for multiple appointments
10962
- * @example {
10963
- * "data": [
10964
- * {
10965
- * "appointment_type": "in_person",
10966
- * "cancellation_events": [
10967
- * {
10968
- * "actor": null,
10969
- * "cancellation_reason": {
10970
- * "id": "cr_a1b2c3d4e5f6",
10971
- * "name": "Distance too far",
10972
- * "object": "cancellation_reason",
10973
- * "sort_order": 1
10974
- * },
10975
- * "custom_reason_text": "I'm sick",
10976
- * "initiated_by": "client",
10977
- * "object": "cancellation_event",
10978
- * "occurred_at": "2023-01-01T03:00:00Z",
10979
- * "source": "client_ui"
10980
- * }
10981
- * ],
10982
- * "client": {
10983
- * "created_at": "2025-01-15T14:30:00Z",
10984
- * "email": "jane.smith@example.com",
10985
- * "first_name": "Jane",
10986
- * "id": "clnt_a1b2c3d4e5f6",
10987
- * "last_name": "Smith",
10988
- * "locale": "en-US",
10989
- * "object": "client",
10990
- * "phone": "+15551234567",
10991
- * "reference_id": "ext_12345",
10992
- * "time_zone": "America/Chicago",
11253
+ } | {
11254
+ /**
11255
+ * Block
11256
+ * @description This is an object representing a range of blocked time for a provider, service, service provider, or location.
11257
+ * @example {
11258
+ * "all_day": false,
11259
+ * "attachment_type": "provider",
11260
+ * "attachments": [
11261
+ * "prov_d025a96ac0c6"
11262
+ * ],
11263
+ * "created_at": "2017-09-12T12:34:55Z",
11264
+ * "end_date": "2025-10-27",
11265
+ * "end_time": "17:00",
11266
+ * "exception_dates": [
11267
+ * "2025-10-27T09:00:00"
11268
+ * ],
11269
+ * "id": "blk_d025a96ac0c6",
11270
+ * "object": "block",
11271
+ * "recurrence_rule": {
11272
+ * "byday": [
11273
+ * "mo",
11274
+ * "we",
11275
+ * "fr"
11276
+ * ],
11277
+ * "freq": "weekly"
11278
+ * },
11279
+ * "service_id": null,
11280
+ * "start_date": "2025-10-27",
11281
+ * "start_time": "09:00",
11282
+ * "time_zone": "America/New_York",
11283
+ * "title": "Team Meeting",
11284
+ * "updated_at": "2017-09-13T10:11:12Z"
11285
+ * }
11286
+ */
11287
+ object: {
11288
+ /** @description Whether the block is all day. */
11289
+ all_day: boolean;
11290
+ /**
11291
+ * @description The type of attachment for the block.
11292
+ * @enum {string}
11293
+ */
11294
+ attachment_type: "location" | "service" | "provider" | "service_provider";
11295
+ /** @description The resources to which this block is attached. These can be service IDs (to block availabilty for all providers on a service), provider IDs (to block availability for a specific provider), or location IDs (to block availability for a specific location). */
11296
+ attachments: string[];
11297
+ /**
11298
+ * Format: date-time
11299
+ * @description Time at which the object was created.
11300
+ */
11301
+ created_at: string;
11302
+ /**
11303
+ * Format: date
11304
+ * @description The end date of the block.
11305
+ */
11306
+ end_date: string;
11307
+ /** @description The end time of the block. */
11308
+ end_time: string | null;
11309
+ /** @description The exception dates for the block. */
11310
+ exception_dates: string[];
11311
+ /** @description Unique identifier for the object. */
11312
+ id: string;
11313
+ /**
11314
+ * @description String representing the object's type.
11315
+ * @enum {string}
11316
+ */
11317
+ object: "block";
11318
+ /** @description The recurrence rule for the block (or null if there is no recurrence). */
11319
+ recurrence_rule: {
11320
+ /**
11321
+ * @description The days of the week on which the recurrence occurs.
11322
+ * @example [
11323
+ * "mo",
11324
+ * "we",
11325
+ * "fr"
11326
+ * ]
11327
+ */
11328
+ byday?: string[];
11329
+ /** @description Number of occurrences at which to end the recurrence. */
11330
+ count?: number | null;
11331
+ /**
11332
+ * @description The frequency of the recurrence.
11333
+ * @enum {string}
11334
+ */
11335
+ freq: "daily" | "weekly";
11336
+ /**
11337
+ * @description How often the recurrence rule repeats.
11338
+ * @example 2
11339
+ */
11340
+ interval?: number;
11341
+ /**
11342
+ * @description Date at which to end the recurrence (in ISO-8601 format).
11343
+ * @example 2024-01-02
11344
+ */
11345
+ until?: Record<string, never> | null;
11346
+ } | null;
11347
+ /** @description The ID of the service for the block. Required when `attachment_type` is `service_provider`. */
11348
+ service_id: string | null;
11349
+ /**
11350
+ * Format: date
11351
+ * @description The start date of the block.
11352
+ */
11353
+ start_date: string;
11354
+ /** @description The start time of the block. */
11355
+ start_time: string | null;
11356
+ /** @description The time zone of the block. */
11357
+ time_zone: string | null;
11358
+ /** @description The title of the block. */
11359
+ title: string | null;
11360
+ /**
11361
+ * Format: date-time
11362
+ * @description Time at which the object was last updated.
11363
+ */
11364
+ updated_at: string;
11365
+ };
11366
+ /**
11367
+ * @description The event type.
11368
+ * @enum {string}
11369
+ */
11370
+ type: "block.created";
11371
+ } | {
11372
+ /**
11373
+ * Block
11374
+ * @description This is an object representing a range of blocked time for a provider, service, service provider, or location.
11375
+ * @example {
11376
+ * "all_day": false,
11377
+ * "attachment_type": "provider",
11378
+ * "attachments": [
11379
+ * "prov_d025a96ac0c6"
11380
+ * ],
11381
+ * "created_at": "2017-09-12T12:34:55Z",
11382
+ * "end_date": "2025-10-27",
11383
+ * "end_time": "17:00",
11384
+ * "exception_dates": [
11385
+ * "2025-10-27T09:00:00"
11386
+ * ],
11387
+ * "id": "blk_d025a96ac0c6",
11388
+ * "object": "block",
11389
+ * "recurrence_rule": {
11390
+ * "byday": [
11391
+ * "mo",
11392
+ * "we",
11393
+ * "fr"
11394
+ * ],
11395
+ * "freq": "weekly"
11396
+ * },
11397
+ * "service_id": null,
11398
+ * "start_date": "2025-10-27",
11399
+ * "start_time": "09:00",
11400
+ * "time_zone": "America/New_York",
11401
+ * "title": "Team Meeting",
11402
+ * "updated_at": "2017-09-13T10:11:12Z"
11403
+ * }
11404
+ */
11405
+ object: {
11406
+ /** @description Whether the block is all day. */
11407
+ all_day: boolean;
11408
+ /**
11409
+ * @description The type of attachment for the block.
11410
+ * @enum {string}
11411
+ */
11412
+ attachment_type: "location" | "service" | "provider" | "service_provider";
11413
+ /** @description The resources to which this block is attached. These can be service IDs (to block availabilty for all providers on a service), provider IDs (to block availability for a specific provider), or location IDs (to block availability for a specific location). */
11414
+ attachments: string[];
11415
+ /**
11416
+ * Format: date-time
11417
+ * @description Time at which the object was created.
11418
+ */
11419
+ created_at: string;
11420
+ /**
11421
+ * Format: date
11422
+ * @description The end date of the block.
11423
+ */
11424
+ end_date: string;
11425
+ /** @description The end time of the block. */
11426
+ end_time: string | null;
11427
+ /** @description The exception dates for the block. */
11428
+ exception_dates: string[];
11429
+ /** @description Unique identifier for the object. */
11430
+ id: string;
11431
+ /**
11432
+ * @description String representing the object's type.
11433
+ * @enum {string}
11434
+ */
11435
+ object: "block";
11436
+ /** @description The recurrence rule for the block (or null if there is no recurrence). */
11437
+ recurrence_rule: {
11438
+ /**
11439
+ * @description The days of the week on which the recurrence occurs.
11440
+ * @example [
11441
+ * "mo",
11442
+ * "we",
11443
+ * "fr"
11444
+ * ]
11445
+ */
11446
+ byday?: string[];
11447
+ /** @description Number of occurrences at which to end the recurrence. */
11448
+ count?: number | null;
11449
+ /**
11450
+ * @description The frequency of the recurrence.
11451
+ * @enum {string}
11452
+ */
11453
+ freq: "daily" | "weekly";
11454
+ /**
11455
+ * @description How often the recurrence rule repeats.
11456
+ * @example 2
11457
+ */
11458
+ interval?: number;
11459
+ /**
11460
+ * @description Date at which to end the recurrence (in ISO-8601 format).
11461
+ * @example 2024-01-02
11462
+ */
11463
+ until?: Record<string, never> | null;
11464
+ } | null;
11465
+ /** @description The ID of the service for the block. Required when `attachment_type` is `service_provider`. */
11466
+ service_id: string | null;
11467
+ /**
11468
+ * Format: date
11469
+ * @description The start date of the block.
11470
+ */
11471
+ start_date: string;
11472
+ /** @description The start time of the block. */
11473
+ start_time: string | null;
11474
+ /** @description The time zone of the block. */
11475
+ time_zone: string | null;
11476
+ /** @description The title of the block. */
11477
+ title: string | null;
11478
+ /**
11479
+ * Format: date-time
11480
+ * @description Time at which the object was last updated.
11481
+ */
11482
+ updated_at: string;
11483
+ };
11484
+ /**
11485
+ * @description The event type.
11486
+ * @enum {string}
11487
+ */
11488
+ type: "block.updated";
11489
+ } | {
11490
+ /**
11491
+ * Block
11492
+ * @description This is an object representing a range of blocked time for a provider, service, service provider, or location.
11493
+ * @example {
11494
+ * "all_day": false,
11495
+ * "attachment_type": "provider",
11496
+ * "attachments": [
11497
+ * "prov_d025a96ac0c6"
11498
+ * ],
11499
+ * "created_at": "2017-09-12T12:34:55Z",
11500
+ * "end_date": "2025-10-27",
11501
+ * "end_time": "17:00",
11502
+ * "exception_dates": [
11503
+ * "2025-10-27T09:00:00"
11504
+ * ],
11505
+ * "id": "blk_d025a96ac0c6",
11506
+ * "object": "block",
11507
+ * "recurrence_rule": {
11508
+ * "byday": [
11509
+ * "mo",
11510
+ * "we",
11511
+ * "fr"
11512
+ * ],
11513
+ * "freq": "weekly"
11514
+ * },
11515
+ * "service_id": null,
11516
+ * "start_date": "2025-10-27",
11517
+ * "start_time": "09:00",
11518
+ * "time_zone": "America/New_York",
11519
+ * "title": "Team Meeting",
11520
+ * "updated_at": "2017-09-13T10:11:12Z"
11521
+ * }
11522
+ */
11523
+ object: {
11524
+ /** @description Whether the block is all day. */
11525
+ all_day: boolean;
11526
+ /**
11527
+ * @description The type of attachment for the block.
11528
+ * @enum {string}
11529
+ */
11530
+ attachment_type: "location" | "service" | "provider" | "service_provider";
11531
+ /** @description The resources to which this block is attached. These can be service IDs (to block availabilty for all providers on a service), provider IDs (to block availability for a specific provider), or location IDs (to block availability for a specific location). */
11532
+ attachments: string[];
11533
+ /**
11534
+ * Format: date-time
11535
+ * @description Time at which the object was created.
11536
+ */
11537
+ created_at: string;
11538
+ /**
11539
+ * Format: date
11540
+ * @description The end date of the block.
11541
+ */
11542
+ end_date: string;
11543
+ /** @description The end time of the block. */
11544
+ end_time: string | null;
11545
+ /** @description The exception dates for the block. */
11546
+ exception_dates: string[];
11547
+ /** @description Unique identifier for the object. */
11548
+ id: string;
11549
+ /**
11550
+ * @description String representing the object's type.
11551
+ * @enum {string}
11552
+ */
11553
+ object: "block";
11554
+ /** @description The recurrence rule for the block (or null if there is no recurrence). */
11555
+ recurrence_rule: {
11556
+ /**
11557
+ * @description The days of the week on which the recurrence occurs.
11558
+ * @example [
11559
+ * "mo",
11560
+ * "we",
11561
+ * "fr"
11562
+ * ]
11563
+ */
11564
+ byday?: string[];
11565
+ /** @description Number of occurrences at which to end the recurrence. */
11566
+ count?: number | null;
11567
+ /**
11568
+ * @description The frequency of the recurrence.
11569
+ * @enum {string}
11570
+ */
11571
+ freq: "daily" | "weekly";
11572
+ /**
11573
+ * @description How often the recurrence rule repeats.
11574
+ * @example 2
11575
+ */
11576
+ interval?: number;
11577
+ /**
11578
+ * @description Date at which to end the recurrence (in ISO-8601 format).
11579
+ * @example 2024-01-02
11580
+ */
11581
+ until?: Record<string, never> | null;
11582
+ } | null;
11583
+ /** @description The ID of the service for the block. Required when `attachment_type` is `service_provider`. */
11584
+ service_id: string | null;
11585
+ /**
11586
+ * Format: date
11587
+ * @description The start date of the block.
11588
+ */
11589
+ start_date: string;
11590
+ /** @description The start time of the block. */
11591
+ start_time: string | null;
11592
+ /** @description The time zone of the block. */
11593
+ time_zone: string | null;
11594
+ /** @description The title of the block. */
11595
+ title: string | null;
11596
+ /**
11597
+ * Format: date-time
11598
+ * @description Time at which the object was last updated.
11599
+ */
11600
+ updated_at: string;
11601
+ };
11602
+ /**
11603
+ * @description The event type.
11604
+ * @enum {string}
11605
+ */
11606
+ type: "block.deleted";
11607
+ };
11608
+ /** @description Unique identifier for the object. */
11609
+ id: string;
11610
+ /**
11611
+ * @description String representing the object's type.
11612
+ * @enum {string}
11613
+ */
11614
+ object?: "account_event";
11615
+ /** @description The event version. */
11616
+ version: string;
11617
+ };
11618
+ /**
11619
+ * AppointmentsResponse
11620
+ * @description Response schema for multiple appointments
11621
+ * @example {
11622
+ * "data": [
11623
+ * {
11624
+ * "appointment_type": "in_person",
11625
+ * "cancellation_events": [
11626
+ * {
11627
+ * "actor": null,
11628
+ * "cancellation_reason": {
11629
+ * "id": "cr_a1b2c3d4e5f6",
11630
+ * "name": "Distance too far",
11631
+ * "object": "cancellation_reason",
11632
+ * "sort_order": 1
11633
+ * },
11634
+ * "custom_reason_text": "I'm sick",
11635
+ * "initiated_by": "client",
11636
+ * "object": "cancellation_event",
11637
+ * "occurred_at": "2023-01-01T03:00:00Z",
11638
+ * "source": "client_ui"
11639
+ * }
11640
+ * ],
11641
+ * "client": {
11642
+ * "created_at": "2025-01-15T14:30:00Z",
11643
+ * "email": "jane.smith@example.com",
11644
+ * "first_name": "Jane",
11645
+ * "id": "clnt_a1b2c3d4e5f6",
11646
+ * "last_name": "Smith",
11647
+ * "locale": "en-US",
11648
+ * "object": "client",
11649
+ * "phone": "+15551234567",
11650
+ * "reference_id": "ext_12345",
11651
+ * "time_zone": "America/Chicago",
10993
11652
  * "updated_at": "2025-03-10T09:45:00Z"
10994
11653
  * },
10995
11654
  * "client_data": {
@@ -11050,6 +11709,9 @@ interface components {
11050
11709
  * "first_name": "John",
11051
11710
  * "id": "prov_d025a96ac0c6",
11052
11711
  * "last_name": "Smith",
11712
+ * "metadata": {
11713
+ * "external_id": "123"
11714
+ * },
11053
11715
  * "object": "provider",
11054
11716
  * "updated_at": "2017-09-13T10:11:12Z"
11055
11717
  * },
@@ -11528,7 +12190,34 @@ interface components {
11528
12190
  /** @description Exceptions for recurring block instances (in naive date time format). */
11529
12191
  exception_dates?: string[];
11530
12192
  /** @description The recurrence rule for the block (or null if there is no recurrence). */
11531
- recurrence_rule?: components["schemas"]["RecurrenceRule"] | null;
12193
+ recurrence_rule?: {
12194
+ /**
12195
+ * @description The days of the week on which the recurrence occurs.
12196
+ * @example [
12197
+ * "mo",
12198
+ * "we",
12199
+ * "fr"
12200
+ * ]
12201
+ */
12202
+ byday?: string[];
12203
+ /** @description Number of occurrences at which to end the recurrence. */
12204
+ count?: number | null;
12205
+ /**
12206
+ * @description The frequency of the recurrence.
12207
+ * @enum {string}
12208
+ */
12209
+ freq: "daily" | "weekly";
12210
+ /**
12211
+ * @description How often the recurrence rule repeats.
12212
+ * @example 2
12213
+ */
12214
+ interval?: number;
12215
+ /**
12216
+ * @description Date at which to end the recurrence (in ISO-8601 format).
12217
+ * @example 2024-01-02
12218
+ */
12219
+ until?: Record<string, never> | null;
12220
+ } | null;
11532
12221
  /** @description The ID of the service for the block. Required when `attachment_type` is `service_provider`. */
11533
12222
  service_id?: string | null;
11534
12223
  /**
@@ -11636,6 +12325,9 @@ interface components {
11636
12325
  * "first_name": "John",
11637
12326
  * "id": "prov_d025a96ac0c6",
11638
12327
  * "last_name": "Smith",
12328
+ * "metadata": {
12329
+ * "external_id": "123"
12330
+ * },
11639
12331
  * "object": "provider",
11640
12332
  * "updated_at": "2017-09-13T10:11:12Z"
11641
12333
  * },
@@ -11797,6 +12489,9 @@ interface components {
11797
12489
  * "first_name": "John",
11798
12490
  * "id": "prov_d025a96ac0c6",
11799
12491
  * "last_name": "Smith",
12492
+ * "metadata": {
12493
+ * "external_id": "123"
12494
+ * },
11800
12495
  * "object": "provider",
11801
12496
  * "updated_at": "2017-09-13T10:11:12Z"
11802
12497
  * },
@@ -11836,6 +12531,9 @@ interface components {
11836
12531
  * "first_name": "John",
11837
12532
  * "id": "prov_d025a96ac0c6",
11838
12533
  * "last_name": "Smith",
12534
+ * "metadata": {
12535
+ * "external_id": "123"
12536
+ * },
11839
12537
  * "object": "provider",
11840
12538
  * "updated_at": "2017-09-13T10:11:12Z"
11841
12539
  * }
@@ -11853,6 +12551,161 @@ interface components {
11853
12551
  data: components["schemas"]["Provider"][];
11854
12552
  meta: components["schemas"]["PaginationMeta"];
11855
12553
  };
12554
+ /**
12555
+ * BlockDeletedEventData
12556
+ * @description This is an object representing data for the block deleted event.
12557
+ * @example {
12558
+ * "object": {
12559
+ * "all_day": false,
12560
+ * "attachment_type": "provider",
12561
+ * "attachments": [
12562
+ * "prov_d025a96ac0c6"
12563
+ * ],
12564
+ * "created_at": "2017-09-12T12:34:55Z",
12565
+ * "end_date": "2025-10-27",
12566
+ * "end_time": "17:00",
12567
+ * "exception_dates": [
12568
+ * "2025-10-27T09:00:00"
12569
+ * ],
12570
+ * "id": "blk_d025a96ac0c6",
12571
+ * "object": "block",
12572
+ * "recurrence_rule": {
12573
+ * "byday": [
12574
+ * "mo",
12575
+ * "we",
12576
+ * "fr"
12577
+ * ],
12578
+ * "freq": "weekly"
12579
+ * },
12580
+ * "service_id": null,
12581
+ * "start_date": "2025-10-27",
12582
+ * "start_time": "09:00",
12583
+ * "time_zone": "America/New_York",
12584
+ * "title": "Team Meeting",
12585
+ * "updated_at": "2017-09-13T10:11:12Z"
12586
+ * },
12587
+ * "type": "block.deleted"
12588
+ * }
12589
+ */
12590
+ BlockDeletedEventData: {
12591
+ /**
12592
+ * Block
12593
+ * @description This is an object representing a range of blocked time for a provider, service, service provider, or location.
12594
+ * @example {
12595
+ * "all_day": false,
12596
+ * "attachment_type": "provider",
12597
+ * "attachments": [
12598
+ * "prov_d025a96ac0c6"
12599
+ * ],
12600
+ * "created_at": "2017-09-12T12:34:55Z",
12601
+ * "end_date": "2025-10-27",
12602
+ * "end_time": "17:00",
12603
+ * "exception_dates": [
12604
+ * "2025-10-27T09:00:00"
12605
+ * ],
12606
+ * "id": "blk_d025a96ac0c6",
12607
+ * "object": "block",
12608
+ * "recurrence_rule": {
12609
+ * "byday": [
12610
+ * "mo",
12611
+ * "we",
12612
+ * "fr"
12613
+ * ],
12614
+ * "freq": "weekly"
12615
+ * },
12616
+ * "service_id": null,
12617
+ * "start_date": "2025-10-27",
12618
+ * "start_time": "09:00",
12619
+ * "time_zone": "America/New_York",
12620
+ * "title": "Team Meeting",
12621
+ * "updated_at": "2017-09-13T10:11:12Z"
12622
+ * }
12623
+ */
12624
+ object: {
12625
+ /** @description Whether the block is all day. */
12626
+ all_day: boolean;
12627
+ /**
12628
+ * @description The type of attachment for the block.
12629
+ * @enum {string}
12630
+ */
12631
+ attachment_type: "location" | "service" | "provider" | "service_provider";
12632
+ /** @description The resources to which this block is attached. These can be service IDs (to block availabilty for all providers on a service), provider IDs (to block availability for a specific provider), or location IDs (to block availability for a specific location). */
12633
+ attachments: string[];
12634
+ /**
12635
+ * Format: date-time
12636
+ * @description Time at which the object was created.
12637
+ */
12638
+ created_at: string;
12639
+ /**
12640
+ * Format: date
12641
+ * @description The end date of the block.
12642
+ */
12643
+ end_date: string;
12644
+ /** @description The end time of the block. */
12645
+ end_time: string | null;
12646
+ /** @description The exception dates for the block. */
12647
+ exception_dates: string[];
12648
+ /** @description Unique identifier for the object. */
12649
+ id: string;
12650
+ /**
12651
+ * @description String representing the object's type.
12652
+ * @enum {string}
12653
+ */
12654
+ object: "block";
12655
+ /** @description The recurrence rule for the block (or null if there is no recurrence). */
12656
+ recurrence_rule: {
12657
+ /**
12658
+ * @description The days of the week on which the recurrence occurs.
12659
+ * @example [
12660
+ * "mo",
12661
+ * "we",
12662
+ * "fr"
12663
+ * ]
12664
+ */
12665
+ byday?: string[];
12666
+ /** @description Number of occurrences at which to end the recurrence. */
12667
+ count?: number | null;
12668
+ /**
12669
+ * @description The frequency of the recurrence.
12670
+ * @enum {string}
12671
+ */
12672
+ freq: "daily" | "weekly";
12673
+ /**
12674
+ * @description How often the recurrence rule repeats.
12675
+ * @example 2
12676
+ */
12677
+ interval?: number;
12678
+ /**
12679
+ * @description Date at which to end the recurrence (in ISO-8601 format).
12680
+ * @example 2024-01-02
12681
+ */
12682
+ until?: Record<string, never> | null;
12683
+ } | null;
12684
+ /** @description The ID of the service for the block. Required when `attachment_type` is `service_provider`. */
12685
+ service_id: string | null;
12686
+ /**
12687
+ * Format: date
12688
+ * @description The start date of the block.
12689
+ */
12690
+ start_date: string;
12691
+ /** @description The start time of the block. */
12692
+ start_time: string | null;
12693
+ /** @description The time zone of the block. */
12694
+ time_zone: string | null;
12695
+ /** @description The title of the block. */
12696
+ title: string | null;
12697
+ /**
12698
+ * Format: date-time
12699
+ * @description Time at which the object was last updated.
12700
+ */
12701
+ updated_at: string;
12702
+ };
12703
+ /**
12704
+ * @description The event type. (enum property replaced by openapi-typescript)
12705
+ * @enum {string}
12706
+ */
12707
+ type: "block.deleted";
12708
+ };
11856
12709
  /**
11857
12710
  * BookingPolicy
11858
12711
  * @description A booking policy defines the rules for booking a service from public booking interfaces.
@@ -12160,6 +13013,9 @@ interface components {
12160
13013
  * "first_name": "John",
12161
13014
  * "id": "prov_d025a96ac0c6",
12162
13015
  * "last_name": "Smith",
13016
+ * "metadata": {
13017
+ * "external_id": "123"
13018
+ * },
12163
13019
  * "object": "provider",
12164
13020
  * "updated_at": "2017-09-13T10:11:12Z"
12165
13021
  * }
@@ -12428,6 +13284,161 @@ interface components {
12428
13284
  /** @description The cancellation reasons details */
12429
13285
  data: components["schemas"]["CancellationReason"][];
12430
13286
  };
13287
+ /**
13288
+ * BlockCreatedEventData
13289
+ * @description This is an object representing data for the block created event.
13290
+ * @example {
13291
+ * "object": {
13292
+ * "all_day": false,
13293
+ * "attachment_type": "provider",
13294
+ * "attachments": [
13295
+ * "prov_d025a96ac0c6"
13296
+ * ],
13297
+ * "created_at": "2017-09-12T12:34:55Z",
13298
+ * "end_date": "2025-10-27",
13299
+ * "end_time": "17:00",
13300
+ * "exception_dates": [
13301
+ * "2025-10-27T09:00:00"
13302
+ * ],
13303
+ * "id": "blk_d025a96ac0c6",
13304
+ * "object": "block",
13305
+ * "recurrence_rule": {
13306
+ * "byday": [
13307
+ * "mo",
13308
+ * "we",
13309
+ * "fr"
13310
+ * ],
13311
+ * "freq": "weekly"
13312
+ * },
13313
+ * "service_id": null,
13314
+ * "start_date": "2025-10-27",
13315
+ * "start_time": "09:00",
13316
+ * "time_zone": "America/New_York",
13317
+ * "title": "Team Meeting",
13318
+ * "updated_at": "2017-09-13T10:11:12Z"
13319
+ * },
13320
+ * "type": "block.created"
13321
+ * }
13322
+ */
13323
+ BlockCreatedEventData: {
13324
+ /**
13325
+ * Block
13326
+ * @description This is an object representing a range of blocked time for a provider, service, service provider, or location.
13327
+ * @example {
13328
+ * "all_day": false,
13329
+ * "attachment_type": "provider",
13330
+ * "attachments": [
13331
+ * "prov_d025a96ac0c6"
13332
+ * ],
13333
+ * "created_at": "2017-09-12T12:34:55Z",
13334
+ * "end_date": "2025-10-27",
13335
+ * "end_time": "17:00",
13336
+ * "exception_dates": [
13337
+ * "2025-10-27T09:00:00"
13338
+ * ],
13339
+ * "id": "blk_d025a96ac0c6",
13340
+ * "object": "block",
13341
+ * "recurrence_rule": {
13342
+ * "byday": [
13343
+ * "mo",
13344
+ * "we",
13345
+ * "fr"
13346
+ * ],
13347
+ * "freq": "weekly"
13348
+ * },
13349
+ * "service_id": null,
13350
+ * "start_date": "2025-10-27",
13351
+ * "start_time": "09:00",
13352
+ * "time_zone": "America/New_York",
13353
+ * "title": "Team Meeting",
13354
+ * "updated_at": "2017-09-13T10:11:12Z"
13355
+ * }
13356
+ */
13357
+ object: {
13358
+ /** @description Whether the block is all day. */
13359
+ all_day: boolean;
13360
+ /**
13361
+ * @description The type of attachment for the block.
13362
+ * @enum {string}
13363
+ */
13364
+ attachment_type: "location" | "service" | "provider" | "service_provider";
13365
+ /** @description The resources to which this block is attached. These can be service IDs (to block availabilty for all providers on a service), provider IDs (to block availability for a specific provider), or location IDs (to block availability for a specific location). */
13366
+ attachments: string[];
13367
+ /**
13368
+ * Format: date-time
13369
+ * @description Time at which the object was created.
13370
+ */
13371
+ created_at: string;
13372
+ /**
13373
+ * Format: date
13374
+ * @description The end date of the block.
13375
+ */
13376
+ end_date: string;
13377
+ /** @description The end time of the block. */
13378
+ end_time: string | null;
13379
+ /** @description The exception dates for the block. */
13380
+ exception_dates: string[];
13381
+ /** @description Unique identifier for the object. */
13382
+ id: string;
13383
+ /**
13384
+ * @description String representing the object's type.
13385
+ * @enum {string}
13386
+ */
13387
+ object: "block";
13388
+ /** @description The recurrence rule for the block (or null if there is no recurrence). */
13389
+ recurrence_rule: {
13390
+ /**
13391
+ * @description The days of the week on which the recurrence occurs.
13392
+ * @example [
13393
+ * "mo",
13394
+ * "we",
13395
+ * "fr"
13396
+ * ]
13397
+ */
13398
+ byday?: string[];
13399
+ /** @description Number of occurrences at which to end the recurrence. */
13400
+ count?: number | null;
13401
+ /**
13402
+ * @description The frequency of the recurrence.
13403
+ * @enum {string}
13404
+ */
13405
+ freq: "daily" | "weekly";
13406
+ /**
13407
+ * @description How often the recurrence rule repeats.
13408
+ * @example 2
13409
+ */
13410
+ interval?: number;
13411
+ /**
13412
+ * @description Date at which to end the recurrence (in ISO-8601 format).
13413
+ * @example 2024-01-02
13414
+ */
13415
+ until?: Record<string, never> | null;
13416
+ } | null;
13417
+ /** @description The ID of the service for the block. Required when `attachment_type` is `service_provider`. */
13418
+ service_id: string | null;
13419
+ /**
13420
+ * Format: date
13421
+ * @description The start date of the block.
13422
+ */
13423
+ start_date: string;
13424
+ /** @description The start time of the block. */
13425
+ start_time: string | null;
13426
+ /** @description The time zone of the block. */
13427
+ time_zone: string | null;
13428
+ /** @description The title of the block. */
13429
+ title: string | null;
13430
+ /**
13431
+ * Format: date-time
13432
+ * @description Time at which the object was last updated.
13433
+ */
13434
+ updated_at: string;
13435
+ };
13436
+ /**
13437
+ * @description The event type. (enum property replaced by openapi-typescript)
13438
+ * @enum {string}
13439
+ */
13440
+ type: "block.created";
13441
+ };
12431
13442
  /**
12432
13443
  * ServicesResponse
12433
13444
  * @description Response schema for a list of services
@@ -12685,6 +13696,9 @@ interface components {
12685
13696
  * "first_name": "John",
12686
13697
  * "id": "prov_d025a96ac0c6",
12687
13698
  * "last_name": "Smith",
13699
+ * "metadata": {
13700
+ * "external_id": "123"
13701
+ * },
12688
13702
  * "object": "provider",
12689
13703
  * "updated_at": "2017-09-13T10:11:12Z"
12690
13704
  * },
@@ -12901,6 +13915,9 @@ interface components {
12901
13915
  * "first_name": "John",
12902
13916
  * "id": "prov_d025a96ac0c6",
12903
13917
  * "last_name": "Smith",
13918
+ * "metadata": {
13919
+ * "external_id": "123"
13920
+ * },
12904
13921
  * "object": "provider",
12905
13922
  * "updated_at": "2017-09-13T10:11:12Z"
12906
13923
  * },
@@ -13358,6 +14375,9 @@ interface components {
13358
14375
  * "first_name": "John",
13359
14376
  * "id": "prov_d025a96ac0c6",
13360
14377
  * "last_name": "Smith",
14378
+ * "metadata": {
14379
+ * "external_id": "123"
14380
+ * },
13361
14381
  * "object": "provider",
13362
14382
  * "updated_at": "2017-09-13T10:11:12Z"
13363
14383
  * }
@@ -13376,6 +14396,8 @@ interface components {
13376
14396
  id: string;
13377
14397
  /** @description The provider's last name. */
13378
14398
  last_name: string;
14399
+ /** @description Set of key-value pairs attached to this provider. Maximum size is 16 KB. */
14400
+ metadata?: Record<string, never>;
13379
14401
  /**
13380
14402
  * @description String representing the object's type.
13381
14403
  * @enum {string}
@@ -13906,6 +14928,9 @@ interface components {
13906
14928
  * "first_name": "John",
13907
14929
  * "id": "prov_d025a96ac0c6",
13908
14930
  * "last_name": "Smith",
14931
+ * "metadata": {
14932
+ * "external_id": "123"
14933
+ * },
13909
14934
  * "object": "provider",
13910
14935
  * "updated_at": "2017-09-13T10:11:12Z"
13911
14936
  * }
@@ -13924,6 +14949,8 @@ interface components {
13924
14949
  id: string;
13925
14950
  /** @description The provider's last name. */
13926
14951
  last_name: string;
14952
+ /** @description Set of key-value pairs attached to this provider. Maximum size is 16 KB. */
14953
+ metadata?: Record<string, never>;
13927
14954
  /**
13928
14955
  * @description String representing the object's type.
13929
14956
  * @enum {string}
@@ -14097,7 +15124,34 @@ interface components {
14097
15124
  */
14098
15125
  object: "block";
14099
15126
  /** @description The recurrence rule for the block (or null if there is no recurrence). */
14100
- recurrence_rule: components["schemas"]["RecurrenceRule"] | null;
15127
+ recurrence_rule: {
15128
+ /**
15129
+ * @description The days of the week on which the recurrence occurs.
15130
+ * @example [
15131
+ * "mo",
15132
+ * "we",
15133
+ * "fr"
15134
+ * ]
15135
+ */
15136
+ byday?: string[];
15137
+ /** @description Number of occurrences at which to end the recurrence. */
15138
+ count?: number | null;
15139
+ /**
15140
+ * @description The frequency of the recurrence.
15141
+ * @enum {string}
15142
+ */
15143
+ freq: "daily" | "weekly";
15144
+ /**
15145
+ * @description How often the recurrence rule repeats.
15146
+ * @example 2
15147
+ */
15148
+ interval?: number;
15149
+ /**
15150
+ * @description Date at which to end the recurrence (in ISO-8601 format).
15151
+ * @example 2024-01-02
15152
+ */
15153
+ until?: Record<string, never> | null;
15154
+ } | null;
14101
15155
  /** @description The ID of the service for the block. Required when `attachment_type` is `service_provider`. */
14102
15156
  service_id: string | null;
14103
15157
  /**
@@ -14503,6 +15557,9 @@ interface components {
14503
15557
  * "first_name": "John",
14504
15558
  * "id": "prov_d025a96ac0c6",
14505
15559
  * "last_name": "Smith",
15560
+ * "metadata": {
15561
+ * "external_id": "123"
15562
+ * },
14506
15563
  * "object": "provider",
14507
15564
  * "updated_at": "2017-09-13T10:11:12Z"
14508
15565
  * },
@@ -14719,6 +15776,9 @@ interface components {
14719
15776
  * "first_name": "John",
14720
15777
  * "id": "prov_d025a96ac0c6",
14721
15778
  * "last_name": "Smith",
15779
+ * "metadata": {
15780
+ * "external_id": "123"
15781
+ * },
14722
15782
  * "object": "provider",
14723
15783
  * "updated_at": "2017-09-13T10:11:12Z"
14724
15784
  * },
@@ -15176,6 +16236,9 @@ interface components {
15176
16236
  * "first_name": "John",
15177
16237
  * "id": "prov_d025a96ac0c6",
15178
16238
  * "last_name": "Smith",
16239
+ * "metadata": {
16240
+ * "external_id": "123"
16241
+ * },
15179
16242
  * "object": "provider",
15180
16243
  * "updated_at": "2017-09-13T10:11:12Z"
15181
16244
  * }
@@ -15194,6 +16257,8 @@ interface components {
15194
16257
  id: string;
15195
16258
  /** @description The provider's last name. */
15196
16259
  last_name: string;
16260
+ /** @description Set of key-value pairs attached to this provider. Maximum size is 16 KB. */
16261
+ metadata?: Record<string, never>;
15197
16262
  /**
15198
16263
  * @description String representing the object's type.
15199
16264
  * @enum {string}
@@ -15951,6 +17016,9 @@ interface components {
15951
17016
  * "first_name": "John",
15952
17017
  * "id": "prov_d025a96ac0c6",
15953
17018
  * "last_name": "Smith",
17019
+ * "metadata": {
17020
+ * "external_id": "123"
17021
+ * },
15954
17022
  * "object": "provider",
15955
17023
  * "updated_at": "2017-09-13T10:11:12Z"
15956
17024
  * },
@@ -16408,6 +17476,9 @@ interface components {
16408
17476
  * "first_name": "John",
16409
17477
  * "id": "prov_d025a96ac0c6",
16410
17478
  * "last_name": "Smith",
17479
+ * "metadata": {
17480
+ * "external_id": "123"
17481
+ * },
16411
17482
  * "object": "provider",
16412
17483
  * "updated_at": "2017-09-13T10:11:12Z"
16413
17484
  * }
@@ -16426,6 +17497,8 @@ interface components {
16426
17497
  id: string;
16427
17498
  /** @description The provider's last name. */
16428
17499
  last_name: string;
17500
+ /** @description Set of key-value pairs attached to this provider. Maximum size is 16 KB. */
17501
+ metadata?: Record<string, never>;
16429
17502
  /**
16430
17503
  * @description String representing the object's type.
16431
17504
  * @enum {string}
@@ -17345,6 +18418,9 @@ interface components {
17345
18418
  * "first_name": "John",
17346
18419
  * "id": "prov_d025a96ac0c6",
17347
18420
  * "last_name": "Smith",
18421
+ * "metadata": {
18422
+ * "external_id": "123"
18423
+ * },
17348
18424
  * "object": "provider",
17349
18425
  * "updated_at": "2017-09-13T10:11:12Z"
17350
18426
  * },
@@ -17561,6 +18637,9 @@ interface components {
17561
18637
  * "first_name": "John",
17562
18638
  * "id": "prov_d025a96ac0c6",
17563
18639
  * "last_name": "Smith",
18640
+ * "metadata": {
18641
+ * "external_id": "123"
18642
+ * },
17564
18643
  * "object": "provider",
17565
18644
  * "updated_at": "2017-09-13T10:11:12Z"
17566
18645
  * },
@@ -18018,6 +19097,9 @@ interface components {
18018
19097
  * "first_name": "John",
18019
19098
  * "id": "prov_d025a96ac0c6",
18020
19099
  * "last_name": "Smith",
19100
+ * "metadata": {
19101
+ * "external_id": "123"
19102
+ * },
18021
19103
  * "object": "provider",
18022
19104
  * "updated_at": "2017-09-13T10:11:12Z"
18023
19105
  * }
@@ -18036,6 +19118,8 @@ interface components {
18036
19118
  id: string;
18037
19119
  /** @description The provider's last name. */
18038
19120
  last_name: string;
19121
+ /** @description Set of key-value pairs attached to this provider. Maximum size is 16 KB. */
19122
+ metadata?: Record<string, never>;
18039
19123
  /**
18040
19124
  * @description String representing the object's type.
18041
19125
  * @enum {string}
@@ -19818,10 +20902,16 @@ interface operations {
19818
20902
  */
19819
20903
  time_zone?: string;
19820
20904
  /**
19821
- * @description Filter slot by specific provider ID
20905
+ * @deprecated
20906
+ * @description Filter slot by specific provider ID (deprecated, use provider_ids)
19822
20907
  * @example prv_123456789012
19823
20908
  */
19824
20909
  provider_id?: string;
20910
+ /**
20911
+ * @description Filter slots by provider IDs (comma-separated)
20912
+ * @example prv_123456789012,prv_234567890123
20913
+ */
20914
+ provider_ids?: string;
19825
20915
  };
19826
20916
  header?: {
19827
20917
  /**
@@ -20436,6 +21526,10 @@ interface operations {
20436
21526
  page_size?: number;
20437
21527
  /** @description Only return providers that match the search query (name or email). */
20438
21528
  search?: string;
21529
+ /** @description Filter providers by metadata using bracket notation. See [Metadata Filtering](https://developers.savvycal.app/metadata-filtering) for more details. */
21530
+ metadata?: {
21531
+ [key: string]: unknown;
21532
+ };
20439
21533
  };
20440
21534
  header?: {
20441
21535
  /**
@@ -20546,10 +21640,16 @@ interface operations {
20546
21640
  */
20547
21641
  time_zone?: string;
20548
21642
  /**
20549
- * @description Filter slots by specific provider ID
21643
+ * @deprecated
21644
+ * @description Filter slots by specific provider ID (deprecated, use provider_ids)
20550
21645
  * @example prv_123456789012
20551
21646
  */
20552
21647
  provider_id?: string;
21648
+ /**
21649
+ * @description Filter slots by provider IDs (comma-separated)
21650
+ * @example prv_123456789012,prv_234567890123
21651
+ */
21652
+ provider_ids?: string;
20553
21653
  };
20554
21654
  header?: {
20555
21655
  /**
@@ -20614,10 +21714,10 @@ interface operations {
20614
21714
  page?: number;
20615
21715
  /** @description Number of items per page */
20616
21716
  page_size?: number;
20617
- /** @description Only return provider schedules for the provider specified by this provider ID. */
20618
- provider?: string;
20619
- /** @description Only return provider schedules for the location specified by this location ID. */
20620
- location?: string;
21717
+ /** @description Filter by provider ID(s). Accepts a single ID or comma-delimited list of IDs. */
21718
+ provider_ids?: string;
21719
+ /** @description Filter by location ID(s). Accepts a single ID or comma-delimited list of IDs. */
21720
+ location_ids?: string;
20621
21721
  };
20622
21722
  header?: {
20623
21723
  /**
@@ -20906,11 +22006,28 @@ interface operations {
20906
22006
  page_size?: number;
20907
22007
  /** @description Whether to include sensitive fields (such as client name, email, and phone) */
20908
22008
  include_sensitive?: boolean;
20909
- /**
20910
- * @description A JSON-encoded list of filters
20911
- * @example [{"field":"period","op":"==","value":"upcoming"}]
20912
- */
20913
- filters?: string[];
22009
+ /** @description Filter by time period. */
22010
+ period?: "upcoming" | "past";
22011
+ /** @description Filter by status. */
22012
+ status?: "scheduled" | "canceled";
22013
+ /** @description Filter by appointment type. */
22014
+ appointment_type?: "virtual" | "in_person";
22015
+ /** @description Filter by provider ID(s). Accepts a single ID or comma-delimited list. */
22016
+ provider_ids?: string;
22017
+ /** @description Filter by service ID(s). Accepts a single ID or comma-delimited list. */
22018
+ service_ids?: string;
22019
+ /** @description Filter by client ID(s). Accepts a single ID or comma-delimited list. */
22020
+ client_ids?: string;
22021
+ /** @description Filter by location ID(s). Accepts a single ID or comma-delimited list. */
22022
+ location_ids?: string;
22023
+ /** @description Filter for appointments starting on or after this time (ISO 8601 format). */
22024
+ start_at_min?: string;
22025
+ /** @description Filter for appointments starting on or before this time (ISO 8601 format). */
22026
+ start_at_max?: string;
22027
+ /** @description Filter for appointments ending on or after this time (ISO 8601 format). */
22028
+ end_at_min?: string;
22029
+ /** @description Filter for appointments ending on or before this time (ISO 8601 format). */
22030
+ end_at_max?: string;
20914
22031
  /**
20915
22032
  * @description A field to order by
20916
22033
  * @example ?order_by[]=start_at_utc
@@ -21298,6 +22415,11 @@ interface operations {
21298
22415
  * @example "America/New_York"
21299
22416
  */
21300
22417
  time_zone?: string;
22418
+ /**
22419
+ * @description Filter slots by provider IDs (comma-separated)
22420
+ * @example prv_123456789012,prv_234567890123
22421
+ */
22422
+ provider_ids?: string;
21301
22423
  };
21302
22424
  header?: {
21303
22425
  /**
@@ -21468,14 +22590,14 @@ interface operations {
21468
22590
  page_size?: number;
21469
22591
  /** @description Only return blocks with the specified attachment type. */
21470
22592
  attachment_type?: "provider" | "service" | "location" | "service_provider";
21471
- /** @description Only return blocks for the provider specified by this provider ID. */
21472
- provider?: string;
21473
- /** @description Only return blocks for the service specified by this service ID. */
21474
- service?: string;
21475
- /** @description Only return blocks for the service provider specified by this service provider ID. */
21476
- service_provider?: string;
21477
- /** @description Only return blocks for the location specified by this location ID. */
21478
- location?: string;
22593
+ /** @description Filter by provider ID(s). Accepts a single ID or comma-delimited list of IDs. */
22594
+ provider_ids?: string;
22595
+ /** @description Filter by service ID(s). Accepts a single ID or comma-delimited list of IDs. */
22596
+ service_ids?: string;
22597
+ /** @description Filter by service provider ID(s). Accepts a single ID or comma-delimited list of IDs. */
22598
+ service_provider_ids?: string;
22599
+ /** @description Filter by location ID(s). Accepts a single ID or comma-delimited list of IDs. */
22600
+ location_ids?: string;
21479
22601
  /** @description Only return blocks that start on the specified date. */
21480
22602
  start_date?: string;
21481
22603
  /** @description Only return blocks that end on the specified date. */
@@ -21608,8 +22730,11 @@ type AppointmentRescheduledEventData = Schemas["AppointmentRescheduledEventData"
21608
22730
  type AppointmentResponse = Schemas["AppointmentResponse"];
21609
22731
  type AppointmentsResponse = Schemas["AppointmentsResponse"];
21610
22732
  type Block = Schemas["Block"];
22733
+ type BlockCreatedEventData = Schemas["BlockCreatedEventData"];
22734
+ type BlockDeletedEventData = Schemas["BlockDeletedEventData"];
21611
22735
  type BlockResponse = Schemas["BlockResponse"];
21612
22736
  type BlocksResponse = Schemas["BlocksResponse"];
22737
+ type BlockUpdatedEventData = Schemas["BlockUpdatedEventData"];
21613
22738
  type BookingPolicy = Schemas["BookingPolicy"];
21614
22739
  type CancelAppointmentRequest = Schemas["CancelAppointmentRequest"];
21615
22740
  type CancellationEvent = Schemas["CancellationEvent"];
@@ -22010,6 +23135,8 @@ declare function createAccountUser(client: FetchClient, body: RequestBody<"/v1/u
22010
23135
  };
22011
23136
  }, {
22012
23137
  body: {
23138
+ add_provider: boolean;
23139
+ display_name?: string;
22013
23140
  email: string;
22014
23141
  first_name: string;
22015
23142
  last_name: string;
@@ -22126,7 +23253,13 @@ declare function createBlock(client: FetchClient, body: RequestBody<"/v1/blocks"
22126
23253
  end_date: string;
22127
23254
  end_time?: string | null;
22128
23255
  exception_dates?: string[];
22129
- recurrence_rule?: components["schemas"]["RecurrenceRule"] | null;
23256
+ recurrence_rule?: {
23257
+ byday?: string[];
23258
+ count?: number | null;
23259
+ freq: "daily" | "weekly";
23260
+ interval?: number;
23261
+ until?: Record<string, never> | null;
23262
+ } | null;
22130
23263
  service_id?: string | null;
22131
23264
  start_date: string;
22132
23265
  start_time?: string | null;
@@ -22323,6 +23456,7 @@ declare function createProvider(client: FetchClient, body: RequestBody<"/v1/prov
22323
23456
  email: string;
22324
23457
  first_name: string;
22325
23458
  last_name: string;
23459
+ metadata?: Record<string, never>;
22326
23460
  notify: boolean;
22327
23461
  role_ids?: string[];
22328
23462
  } | undefined;
@@ -23335,6 +24469,7 @@ declare function getEarliestPublicServiceSlot(client: FetchClient, path: PathPar
23335
24469
  query?: {
23336
24470
  time_zone?: string;
23337
24471
  provider_id?: string;
24472
+ provider_ids?: string;
23338
24473
  };
23339
24474
  header?: {
23340
24475
  "X-SavvyCal-Account"?: string;
@@ -23387,6 +24522,7 @@ declare function getEarliestPublicServiceSlot(client: FetchClient, path: PathPar
23387
24522
  query: {
23388
24523
  time_zone?: string;
23389
24524
  provider_id?: string;
24525
+ provider_ids?: string;
23390
24526
  } | undefined;
23391
24527
  };
23392
24528
  }, `${string}/${string}`>>;
@@ -23692,7 +24828,17 @@ declare function listAppointments(client: FetchClient, query?: QueryParams<"/v1/
23692
24828
  page?: number;
23693
24829
  page_size?: number;
23694
24830
  include_sensitive?: boolean;
23695
- filters?: string[];
24831
+ period?: "upcoming" | "past";
24832
+ status?: "scheduled" | "canceled";
24833
+ appointment_type?: "virtual" | "in_person";
24834
+ provider_ids?: string;
24835
+ service_ids?: string;
24836
+ client_ids?: string;
24837
+ location_ids?: string;
24838
+ start_at_min?: string;
24839
+ start_at_max?: string;
24840
+ end_at_min?: string;
24841
+ end_at_max?: string;
23696
24842
  order_by?: string[];
23697
24843
  order_directions?: ("asc" | "desc")[];
23698
24844
  };
@@ -23735,7 +24881,17 @@ declare function listAppointments(client: FetchClient, query?: QueryParams<"/v1/
23735
24881
  page?: number;
23736
24882
  page_size?: number;
23737
24883
  include_sensitive?: boolean;
23738
- filters?: string[];
24884
+ period?: "upcoming" | "past";
24885
+ status?: "scheduled" | "canceled";
24886
+ appointment_type?: "virtual" | "in_person";
24887
+ provider_ids?: string;
24888
+ service_ids?: string;
24889
+ client_ids?: string;
24890
+ location_ids?: string;
24891
+ start_at_min?: string;
24892
+ start_at_max?: string;
24893
+ end_at_min?: string;
24894
+ end_at_max?: string;
23739
24895
  order_by?: string[];
23740
24896
  order_directions?: ("asc" | "desc")[];
23741
24897
  } | undefined;
@@ -23747,10 +24903,10 @@ declare function listBlocks(client: FetchClient, query?: QueryParams<"/v1/blocks
23747
24903
  page?: number;
23748
24904
  page_size?: number;
23749
24905
  attachment_type?: "provider" | "service" | "location" | "service_provider";
23750
- provider?: string;
23751
- service?: string;
23752
- service_provider?: string;
23753
- location?: string;
24906
+ provider_ids?: string;
24907
+ service_ids?: string;
24908
+ service_provider_ids?: string;
24909
+ location_ids?: string;
23754
24910
  start_date?: string;
23755
24911
  end_date?: string;
23756
24912
  start_date_min?: string;
@@ -23799,10 +24955,10 @@ declare function listBlocks(client: FetchClient, query?: QueryParams<"/v1/blocks
23799
24955
  page?: number;
23800
24956
  page_size?: number;
23801
24957
  attachment_type?: "provider" | "service" | "location" | "service_provider";
23802
- provider?: string;
23803
- service?: string;
23804
- service_provider?: string;
23805
- location?: string;
24958
+ provider_ids?: string;
24959
+ service_ids?: string;
24960
+ service_provider_ids?: string;
24961
+ location_ids?: string;
23806
24962
  start_date?: string;
23807
24963
  end_date?: string;
23808
24964
  start_date_min?: string;
@@ -23942,6 +25098,9 @@ declare function listProviders(client: FetchClient, query?: QueryParams<"/v1/pro
23942
25098
  page?: number;
23943
25099
  page_size?: number;
23944
25100
  search?: string;
25101
+ metadata?: {
25102
+ [key: string]: unknown;
25103
+ };
23945
25104
  };
23946
25105
  header?: {
23947
25106
  "X-SavvyCal-Account"?: string;
@@ -23982,6 +25141,9 @@ declare function listProviders(client: FetchClient, query?: QueryParams<"/v1/pro
23982
25141
  page?: number;
23983
25142
  page_size?: number;
23984
25143
  search?: string;
25144
+ metadata?: {
25145
+ [key: string]: unknown;
25146
+ };
23985
25147
  } | undefined;
23986
25148
  };
23987
25149
  }, `${string}/${string}`>>;
@@ -23990,8 +25152,8 @@ declare function listProviderSchedules(client: FetchClient, query?: QueryParams<
23990
25152
  query?: {
23991
25153
  page?: number;
23992
25154
  page_size?: number;
23993
- provider?: string;
23994
- location?: string;
25155
+ provider_ids?: string;
25156
+ location_ids?: string;
23995
25157
  };
23996
25158
  header?: {
23997
25159
  "X-SavvyCal-Account"?: string;
@@ -24031,8 +25193,8 @@ declare function listProviderSchedules(client: FetchClient, query?: QueryParams<
24031
25193
  query: {
24032
25194
  page?: number;
24033
25195
  page_size?: number;
24034
- provider?: string;
24035
- location?: string;
25196
+ provider_ids?: string;
25197
+ location_ids?: string;
24036
25198
  } | undefined;
24037
25199
  };
24038
25200
  }, `${string}/${string}`>>;
@@ -24078,6 +25240,7 @@ declare function listPublicServiceSlots(client: FetchClient, path: PathParams<"/
24078
25240
  until: string;
24079
25241
  time_zone?: string;
24080
25242
  provider_id?: string;
25243
+ provider_ids?: string;
24081
25244
  };
24082
25245
  header?: {
24083
25246
  "X-SavvyCal-Account"?: string;
@@ -24132,6 +25295,7 @@ declare function listPublicServiceSlots(client: FetchClient, path: PathParams<"/
24132
25295
  until: string;
24133
25296
  time_zone?: string;
24134
25297
  provider_id?: string;
25298
+ provider_ids?: string;
24135
25299
  };
24136
25300
  };
24137
25301
  }, `${string}/${string}`>>;
@@ -24306,6 +25470,7 @@ declare function listServiceSlots(client: FetchClient, path: PathParams<"/v1/ser
24306
25470
  from: string;
24307
25471
  until: string;
24308
25472
  time_zone?: string;
25473
+ provider_ids?: string;
24309
25474
  };
24310
25475
  header?: {
24311
25476
  "X-SavvyCal-Account"?: string;
@@ -24359,6 +25524,7 @@ declare function listServiceSlots(client: FetchClient, path: PathParams<"/v1/ser
24359
25524
  from: string;
24360
25525
  until: string;
24361
25526
  time_zone?: string;
25527
+ provider_ids?: string;
24362
25528
  };
24363
25529
  };
24364
25530
  }, `${string}/${string}`>>;
@@ -24585,7 +25751,13 @@ declare function updateBlock(client: FetchClient, path: PathParams<"/v1/blocks/{
24585
25751
  end_date?: string;
24586
25752
  end_time?: string | null;
24587
25753
  exception_dates?: string[];
24588
- recurrence_rule?: components["schemas"]["RecurrenceRule"] | null;
25754
+ recurrence_rule?: {
25755
+ byday?: string[];
25756
+ count?: number | null;
25757
+ freq: "daily" | "weekly";
25758
+ interval?: number;
25759
+ until?: Record<string, never> | null;
25760
+ } | null;
24589
25761
  service_id?: string | null;
24590
25762
  start_date?: string;
24591
25763
  start_time?: string | null;
@@ -24777,6 +25949,7 @@ declare function updateProvider(client: FetchClient, path: PathParams<"/v1/provi
24777
25949
  display_name?: string;
24778
25950
  first_name?: string;
24779
25951
  last_name?: string;
25952
+ metadata?: Record<string, never>;
24780
25953
  } | undefined;
24781
25954
  params: {
24782
25955
  path: {
@@ -24942,4 +26115,4 @@ declare function updateService(client: FetchClient, path: PathParams<"/v1/servic
24942
26115
  };
24943
26116
  }, `${string}/${string}`>>;
24944
26117
 
24945
- export { type Account, type AccountEvent, type AccountResponse, type AccountUser, type AccountUserResponse, type AccountUsersResponse, type AccountsResponse, type AdvanceNoticePolicy, type AggregatedSlot, type Appointment, type AppointmentCanceledEventData, type AppointmentConfirmedEventData, type AppointmentCreatedEventData, type AppointmentDeletedEventData, type AppointmentRescheduledEventData, type AppointmentResponse, type AppointmentsResponse, type Block, type BlockResponse, type BlocksResponse, type BookingPolicy, type CancelAppointmentRequest, type CancelPublicAppointmentRequest, type CancellationEvent, type CancellationPolicy, type CancellationReason, type CancellationReasonResponse, type CancellationReasonsResponse, type Client, type ClientResponse, type ClientsResponse, type ConfirmAppointmentRequest, type ConfirmationEvent, type CreateAccountRequest, type CreateAccountUserRequest, type CreateAppointmentRequest, type CreateBlockRequest, type CreateCancellationReasonRequest, type CreateClientRequest, type CreateDashboardSessionRequest, type CreateProviderRequest, type CreateProviderScheduleRequest, type CreatePublicAppointmentRequest, type CreateServiceProviderRequest, type CreateServiceRequest, type DashboardSession, type DashboardSessionResponse, type FetchClient, type FetchClientOptions, type GenericErrorResponse, type JsonErrorResponse, type MaximizeUtilizationPolicy, type NotFoundResponse, type PaginationMeta, type PathParams, type Platform, type PlatformResponse, type Provider, type ProviderResponse, type ProviderSchedule, type ProviderScheduleResponse, type ProviderSchedulesResponse, type ProvidersResponse, type PublicAppointment, type PublicAppointmentResponse, type PublicCancellationReason, type PublicCancellationReasonsResponse, type PublicServiceEarliestSlotResponse, type PublicServiceSlotsResponse, type QueryParams, type RecurrenceRule, type RequestBody, type RescheduleAppointmentRequest, type RescheduleEvent, type ReschedulePublicAppointmentRequest, type ReschedulingPolicy, type Role, type RolesResponse, type Service, type ServiceProvider, type ServiceProviderResponse, type ServiceProvidersResponse, type ServiceResponse, type ServiceSlotResponse, type ServicesResponse, type Slot, type SlotRule, type UnauthorizedResponse, type UpdateAccountRequest, type UpdateBlockRequest, type UpdateCancellationReasonRequest, type UpdateClientRequest, type UpdateProviderRequest, type UpdateProviderScheduleRequest, type UpdateServiceRequest, type User, type WeeklyRule, type ZonedDateTime, cancelAppointment, cancelPublicAppointment, confirmAppointment, createAccount, createAccountUser, createAppointment, createBlock, createCancellationReason, createClient, createDashboardSession, createFetchClient, createProvider, createProviderSchedule, createPublicAppointment, createService, createServiceProvider, deactivateProvider, deleteBlock, deleteCancellationReason, deleteClient, deleteProviderSchedule, deleteService, deleteServiceProvider, getAccountById, getAppointment, getBlock, getCancellationReason, getClient, getCurrentAccount, getCurrentAccountUser, getCurrentPlatform, getEarliestPublicServiceSlot, getProvider, getProviderSchedule, getPublicAppointment, getService, listAccountUsers, listAccounts, listAppointments, listBlocks, listCancellationReasons, listClients, listProviderSchedules, listProviders, listPublicCancellationReasons, listPublicServiceSlots, listRoles, listServiceProviders, listServiceSlots, listServices, type paths, rescheduleAppointment, reschedulePublicAppointment, updateAccount, updateBlock, updateCancellationReason, updateClient, updateProvider, updateProviderSchedule, updateService };
26118
+ export { type Account, type AccountEvent, type AccountResponse, type AccountUser, type AccountUserResponse, type AccountUsersResponse, type AccountsResponse, type AdvanceNoticePolicy, type AggregatedSlot, type Appointment, type AppointmentCanceledEventData, type AppointmentConfirmedEventData, type AppointmentCreatedEventData, type AppointmentDeletedEventData, type AppointmentRescheduledEventData, type AppointmentResponse, type AppointmentsResponse, type Block, type BlockCreatedEventData, type BlockDeletedEventData, type BlockResponse, type BlockUpdatedEventData, type BlocksResponse, type BookingPolicy, type CancelAppointmentRequest, type CancelPublicAppointmentRequest, type CancellationEvent, type CancellationPolicy, type CancellationReason, type CancellationReasonResponse, type CancellationReasonsResponse, type Client, type ClientResponse, type ClientsResponse, type ConfirmAppointmentRequest, type ConfirmationEvent, type CreateAccountRequest, type CreateAccountUserRequest, type CreateAppointmentRequest, type CreateBlockRequest, type CreateCancellationReasonRequest, type CreateClientRequest, type CreateDashboardSessionRequest, type CreateProviderRequest, type CreateProviderScheduleRequest, type CreatePublicAppointmentRequest, type CreateServiceProviderRequest, type CreateServiceRequest, type DashboardSession, type DashboardSessionResponse, type FetchClient, type FetchClientOptions, type GenericErrorResponse, type JsonErrorResponse, type MaximizeUtilizationPolicy, type NotFoundResponse, type PaginationMeta, type PathParams, type Platform, type PlatformResponse, type Provider, type ProviderResponse, type ProviderSchedule, type ProviderScheduleResponse, type ProviderSchedulesResponse, type ProvidersResponse, type PublicAppointment, type PublicAppointmentResponse, type PublicCancellationReason, type PublicCancellationReasonsResponse, type PublicServiceEarliestSlotResponse, type PublicServiceSlotsResponse, type QueryParams, type RecurrenceRule, type RequestBody, type RescheduleAppointmentRequest, type RescheduleEvent, type ReschedulePublicAppointmentRequest, type ReschedulingPolicy, type Role, type RolesResponse, type Service, type ServiceProvider, type ServiceProviderResponse, type ServiceProvidersResponse, type ServiceResponse, type ServiceSlotResponse, type ServicesResponse, type Slot, type SlotRule, type UnauthorizedResponse, type UpdateAccountRequest, type UpdateBlockRequest, type UpdateCancellationReasonRequest, type UpdateClientRequest, type UpdateProviderRequest, type UpdateProviderScheduleRequest, type UpdateServiceRequest, type User, type WeeklyRule, type ZonedDateTime, cancelAppointment, cancelPublicAppointment, confirmAppointment, createAccount, createAccountUser, createAppointment, createBlock, createCancellationReason, createClient, createDashboardSession, createFetchClient, createProvider, createProviderSchedule, createPublicAppointment, createService, createServiceProvider, deactivateProvider, deleteBlock, deleteCancellationReason, deleteClient, deleteProviderSchedule, deleteService, deleteServiceProvider, getAccountById, getAppointment, getBlock, getCancellationReason, getClient, getCurrentAccount, getCurrentAccountUser, getCurrentPlatform, getEarliestPublicServiceSlot, getProvider, getProviderSchedule, getPublicAppointment, getService, listAccountUsers, listAccounts, listAppointments, listBlocks, listCancellationReasons, listClients, listProviderSchedules, listProviders, listPublicCancellationReasons, listPublicServiceSlots, listRoles, listServiceProviders, listServiceSlots, listServices, type paths, rescheduleAppointment, reschedulePublicAppointment, updateAccount, updateBlock, updateCancellationReason, updateClient, updateProvider, updateProviderSchedule, updateService };