@savvycal/appointments-core 1.0.0 → 1.1.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.
package/dist/index.d.cts CHANGED
@@ -2175,6 +2175,7 @@ interface components {
2175
2175
  * "unix_ts": 1771947000,
2176
2176
  * "utc": "2026-02-23T15:30:00Z"
2177
2177
  * },
2178
+ * "errors": [],
2178
2179
  * "hold_duration": "PT10M",
2179
2180
  * "hold_enabled": true,
2180
2181
  * "hold_until": "2026-02-22T10:10:00Z",
@@ -2467,6 +2468,7 @@ interface components {
2467
2468
  * "unix_ts": 1771947000,
2468
2469
  * "utc": "2026-02-23T15:30:00Z"
2469
2470
  * },
2471
+ * "errors": [],
2470
2472
  * "hold_duration": "PT10M",
2471
2473
  * "hold_enabled": true,
2472
2474
  * "hold_until": "2026-02-22T10:10:00Z",
@@ -2975,6 +2977,7 @@ interface components {
2975
2977
  * "unix_ts": 1771947000,
2976
2978
  * "utc": "2026-02-23T15:30:00Z"
2977
2979
  * },
2980
+ * "errors": [],
2978
2981
  * "hold_duration": "PT10M",
2979
2982
  * "hold_enabled": true,
2980
2983
  * "hold_until": "2026-02-22T10:10:00Z",
@@ -3393,6 +3396,7 @@ interface components {
3393
3396
  * "unix_ts": 1771947000,
3394
3397
  * "utc": "2026-02-23T15:30:00Z"
3395
3398
  * },
3399
+ * "errors": [],
3396
3400
  * "hold_duration": "PT10M",
3397
3401
  * "hold_enabled": true,
3398
3402
  * "hold_until": "2026-02-22T10:10:00Z",
@@ -3728,6 +3732,7 @@ interface components {
3728
3732
  * "unix_ts": 1771947000,
3729
3733
  * "utc": "2026-02-23T15:30:00Z"
3730
3734
  * },
3735
+ * "errors": [],
3731
3736
  * "hold_duration": "PT10M",
3732
3737
  * "hold_enabled": true,
3733
3738
  * "hold_until": "2026-02-22T10:10:00Z",
@@ -7145,6 +7150,7 @@ interface components {
7145
7150
  * "unix_ts": 1771947000,
7146
7151
  * "utc": "2026-02-23T15:30:00Z"
7147
7152
  * },
7153
+ * "errors": [],
7148
7154
  * "hold_until": "2026-02-22T10:10:00Z",
7149
7155
  * "id": "bi_abc123def456abc123def456",
7150
7156
  * "locked_fields": [],
@@ -7164,6 +7170,8 @@ interface components {
7164
7170
  appointment?: components["schemas"]["PublicAppointment"] | null;
7165
7171
  /** @description The end time of the selected slot */
7166
7172
  end_at?: components["schemas"]["ZonedDateTime"] | null;
7173
+ /** @description Validation errors for submitted data in JSON:API format. Empty when no errors exist. */
7174
+ errors?: components["schemas"]["JsonError"][];
7167
7175
  /**
7168
7176
  * Format: date-time
7169
7177
  * @description When the hold expires (UTC)
@@ -7679,6 +7687,7 @@ interface components {
7679
7687
  * "unix_ts": 1771947000,
7680
7688
  * "utc": "2026-02-23T15:30:00Z"
7681
7689
  * },
7690
+ * "errors": [],
7682
7691
  * "hold_until": "2026-02-22T10:10:00Z",
7683
7692
  * "id": "bi_abc123def456abc123def456",
7684
7693
  * "locked_fields": [],
@@ -8052,6 +8061,33 @@ interface components {
8052
8061
  /** @description The account time zone (IANA format). */
8053
8062
  time_zone: string;
8054
8063
  };
8064
+ /**
8065
+ * JsonError
8066
+ * @description A single validation error in JSON:API format.
8067
+ * @example {
8068
+ * "code": "email_format",
8069
+ * "detail": "must be a valid email address",
8070
+ * "source": {
8071
+ * "pointer": "/email"
8072
+ * },
8073
+ * "title": "Invalid value"
8074
+ * }
8075
+ */
8076
+ JsonError: {
8077
+ /**
8078
+ * @description Machine-readable error code (e.g. slot_unavailable, no_available_provider, time_range_conflict)
8079
+ * @example slot_unavailable
8080
+ */
8081
+ code?: string | null;
8082
+ /** @example is not available */
8083
+ detail: string;
8084
+ source: {
8085
+ /** @example /start_at */
8086
+ pointer: string;
8087
+ };
8088
+ /** @example Invalid value */
8089
+ title: string;
8090
+ };
8055
8091
  /**
8056
8092
  * CreateAppointmentRequest
8057
8093
  * @description Request schema for creating an appointment
@@ -8280,6 +8316,7 @@ interface components {
8280
8316
  * "unix_ts": 1771947000,
8281
8317
  * "utc": "2026-02-23T15:30:00Z"
8282
8318
  * },
8319
+ * "errors": [],
8283
8320
  * "hold_duration": "PT10M",
8284
8321
  * "hold_enabled": true,
8285
8322
  * "hold_until": "2026-02-22T10:10:00Z",
@@ -8968,21 +9005,7 @@ interface components {
8968
9005
  * @description Response schema for validation errors
8969
9006
  */
8970
9007
  JsonErrorResponse: {
8971
- errors: {
8972
- /**
8973
- * @description Machine-readable error code (e.g. slot_unavailable, no_available_provider, time_range_conflict)
8974
- * @example slot_unavailable
8975
- */
8976
- code?: string | null;
8977
- /** @example is not available */
8978
- detail: string;
8979
- source: {
8980
- /** @example /start_at */
8981
- pointer: string;
8982
- };
8983
- /** @example Invalid value */
8984
- title: string;
8985
- }[];
9008
+ errors: components["schemas"]["JsonError"][];
8986
9009
  };
8987
9010
  /**
8988
9011
  * Appointment
@@ -9721,6 +9744,7 @@ interface components {
9721
9744
  * "unix_ts": 1771947000,
9722
9745
  * "utc": "2026-02-23T15:30:00Z"
9723
9746
  * },
9747
+ * "errors": [],
9724
9748
  * "hold_duration": "PT10M",
9725
9749
  * "hold_enabled": true,
9726
9750
  * "hold_until": "2026-02-22T10:10:00Z",
@@ -9874,6 +9898,8 @@ interface components {
9874
9898
  created_at: string;
9875
9899
  /** @description The end time of the selected slot */
9876
9900
  end_at?: components["schemas"]["ZonedDateTime"] | null;
9901
+ /** @description Validation errors for submitted data in JSON:API format. Empty when no errors exist. Only present on single-resource endpoints (not index). */
9902
+ errors?: components["schemas"]["JsonError"][];
9877
9903
  /** @description The hold duration as an ISO 8601 duration string (e.g., PT10M) */
9878
9904
  hold_duration?: string | null;
9879
9905
  /** @description Whether slot holding is enabled */
@@ -15055,6 +15081,7 @@ type FormsResponse = Schemas["FormsResponse"];
15055
15081
  type GenericErrorResponse = Schemas["GenericErrorResponse"];
15056
15082
  type HoldPolicy = Schemas["HoldPolicy"];
15057
15083
  type IntentSubmissionInput = Schemas["IntentSubmissionInput"];
15084
+ type JsonError = Schemas["JsonError"];
15058
15085
  type JsonErrorResponse = Schemas["JsonErrorResponse"];
15059
15086
  type MaximizeUtilizationPolicy = Schemas["MaximizeUtilizationPolicy"];
15060
15087
  type NotFoundResponse = Schemas["NotFoundResponse"];
@@ -20096,4 +20123,4 @@ declare function updateService(client: FetchClient, path: PathParams<"/v1/servic
20096
20123
  };
20097
20124
  }, `${string}/${string}`>>;
20098
20125
 
20099
- export { type Account, type AccountEvent, type AccountResponse, type AccountUser, type AccountUserCreatedEventData, type AccountUserDeletedEventData, type AccountUserResponse, type AccountUserUpdatedEventData, 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 AttachServiceFormRequest, type Block, type BlockCreatedEventData, type BlockDeletedEventData, type BlockResponse, type BlockUpdatedEventData, type BlocksResponse, type BookingIntent, type BookingIntentAbandonedEventData, type BookingIntentCompletedEventData, type BookingIntentCreatedEventData, type BookingIntentResponse, type BookingIntentUpdatedEventData, type BookingIntentsResponse, type BookingPolicy, type CancelAppointmentRequest, type CancelPublicAppointmentRequest, type CancellationEvent, type CancellationPolicy, type CancellationReason, type CancellationReasonResponse, type CancellationReasonsResponse, type Client, type ClientCreatedEventData, type ClientDeletedEventData, type ClientField, type ClientFieldChoice, type ClientFieldOptions, type ClientFieldResponse, type ClientFieldsResponse, type ClientResponse, type ClientUpdatedEventData, type ClientsResponse, type CompleteBookingIntentRequest, type CompletePublicBookingIntentRequest, type ConfirmAppointmentRequest, type ConfirmationEvent, type ConnectedAccount, type ConnectedAccountCreatedEventData, type ConnectedAccountDeletedEventData, type ConnectedAccountReconnectedEventData, type ConnectedAccountRefreshFailedEventData, type ConnectedAccountResponse, type ConnectedAccountsResponse, type CreateAccountRequest, type CreateAccountUserRequest, type CreateAppointmentRequest, type CreateBlockRequest, type CreateBookingIntentRequest, type CreateCancellationReasonRequest, type CreateClientFieldRequest, type CreateClientRequest, type CreateDashboardSessionRequest, type CreateFormRequest, type CreateProviderRequest, type CreateProviderScheduleRequest, type CreatePublicAppointmentRequest, type CreatePublicBookingIntentRequest, type CreateServiceProviderRequest, type CreateServiceRequest, type DashboardSession, type DashboardSessionResponse, type FetchClient, type FetchClientOptions, type FieldChoice, type FieldChoiceInput, type FieldOptions, type FieldOptionsInput, type ForbiddenResponse, type Form, type FormDetail, type FormField, type FormFieldInput, type FormResponse, type FormsResponse, type GenericErrorResponse, type HoldPolicy, type IntentSubmissionInput, type JsonErrorResponse, type MaximizeUtilizationPolicy, type NotFoundResponse, type PaginationMeta, type PathParams, type Platform, type PlatformResponse, type Provider, type ProviderCreatedEventData, type ProviderDeactivatedEventData, type ProviderNotificationConfig, type ProviderNotificationType, type ProviderReactivatedEventData, type ProviderResponse, type ProviderSchedule, type ProviderScheduleCreatedEventData, type ProviderScheduleDeletedEventData, type ProviderScheduleResponse, type ProviderScheduleUpdatedEventData, type ProviderSchedulesResponse, type ProviderUpdatedEventData, type ProvidersResponse, type PublicAppointment, type PublicAppointmentResponse, type PublicBookingIntent, type PublicBookingIntentResponse, 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 ServiceCreatedEventData, type ServiceDeletedEventData, type ServiceForm, type ServiceFormResponse, type ServiceFormsResponse, type ServiceProvider, type ServiceProviderCreatedEventData, type ServiceProviderDeletedEventData, type ServiceProviderResponse, type ServiceProvidersResponse, type ServiceResponse, type ServiceSlotResponse, type ServiceUpdatedEventData, type ServicesResponse, type Slot, type SlotRule, type SortServiceFormsRequest, type UnauthorizedResponse, type UpdateAccountRequest, type UpdateAccountUserRequest, type UpdateBlockRequest, type UpdateBookingIntentRequest, type UpdateCancellationReasonRequest, type UpdateClientFieldRequest, type UpdateClientRequest, type UpdateConnectedAccountRequest, type UpdateFormRequest, type UpdateProviderRequest, type UpdateProviderScheduleRequest, type UpdatePublicBookingIntentRequest, type UpdateServiceRequest, type User, type WeeklyRule, type ZonedDateTime, abandonBookingIntent, abandonPublicBookingIntent, attachServiceForm, cancelAppointment, cancelPublicAppointment, completeBookingIntent, completePublicBookingIntent, confirmAppointment, createAccount, createAccountUser, createAppointment, createBlock, createBookingIntent, createCancellationReason, createClient, createClientField, createDashboardSession, createFetchClient, createForm, createProvider, createProviderSchedule, createPublicAppointment, createPublicBookingIntent, createService, createServiceProvider, deactivateProvider, deleteBlock, deleteCancellationReason, deleteClient, deleteClientField, deleteConnectedAccount, deleteForm, deleteProviderSchedule, deleteService, deleteServiceProvider, detachServiceForm, getAccountById, getAppointment, getBlock, getBookingIntent, getCancellationReason, getClient, getClientField, getConnectedAccount, getCurrentAccount, getCurrentAccountUser, getCurrentPlatform, getEarliestPublicServiceSlot, getForm, getProvider, getProviderSchedule, getPublicAppointment, getPublicBookingIntent, getService, listAccountUsers, listAccounts, listAppointments, listBlocks, listBookingIntents, listCancellationReasons, listClientFields, listClients, listConnectedAccounts, listForms, listProviderSchedules, listProviders, listPublicCancellationReasons, listPublicServiceSlots, listRoles, listServiceForms, listServiceProviders, listServiceSlots, listServices, type paths, rescheduleAppointment, reschedulePublicAppointment, sortServiceForms, updateAccount, updateAccountUser, updateBlock, updateBookingIntent, updateCancellationReason, updateClient, updateClientField, updateConnectedAccount, updateForm, updateProvider, updateProviderSchedule, updatePublicBookingIntent, updateService };
20126
+ export { type Account, type AccountEvent, type AccountResponse, type AccountUser, type AccountUserCreatedEventData, type AccountUserDeletedEventData, type AccountUserResponse, type AccountUserUpdatedEventData, 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 AttachServiceFormRequest, type Block, type BlockCreatedEventData, type BlockDeletedEventData, type BlockResponse, type BlockUpdatedEventData, type BlocksResponse, type BookingIntent, type BookingIntentAbandonedEventData, type BookingIntentCompletedEventData, type BookingIntentCreatedEventData, type BookingIntentResponse, type BookingIntentUpdatedEventData, type BookingIntentsResponse, type BookingPolicy, type CancelAppointmentRequest, type CancelPublicAppointmentRequest, type CancellationEvent, type CancellationPolicy, type CancellationReason, type CancellationReasonResponse, type CancellationReasonsResponse, type Client, type ClientCreatedEventData, type ClientDeletedEventData, type ClientField, type ClientFieldChoice, type ClientFieldOptions, type ClientFieldResponse, type ClientFieldsResponse, type ClientResponse, type ClientUpdatedEventData, type ClientsResponse, type CompleteBookingIntentRequest, type CompletePublicBookingIntentRequest, type ConfirmAppointmentRequest, type ConfirmationEvent, type ConnectedAccount, type ConnectedAccountCreatedEventData, type ConnectedAccountDeletedEventData, type ConnectedAccountReconnectedEventData, type ConnectedAccountRefreshFailedEventData, type ConnectedAccountResponse, type ConnectedAccountsResponse, type CreateAccountRequest, type CreateAccountUserRequest, type CreateAppointmentRequest, type CreateBlockRequest, type CreateBookingIntentRequest, type CreateCancellationReasonRequest, type CreateClientFieldRequest, type CreateClientRequest, type CreateDashboardSessionRequest, type CreateFormRequest, type CreateProviderRequest, type CreateProviderScheduleRequest, type CreatePublicAppointmentRequest, type CreatePublicBookingIntentRequest, type CreateServiceProviderRequest, type CreateServiceRequest, type DashboardSession, type DashboardSessionResponse, type FetchClient, type FetchClientOptions, type FieldChoice, type FieldChoiceInput, type FieldOptions, type FieldOptionsInput, type ForbiddenResponse, type Form, type FormDetail, type FormField, type FormFieldInput, type FormResponse, type FormsResponse, type GenericErrorResponse, type HoldPolicy, type IntentSubmissionInput, type JsonError, type JsonErrorResponse, type MaximizeUtilizationPolicy, type NotFoundResponse, type PaginationMeta, type PathParams, type Platform, type PlatformResponse, type Provider, type ProviderCreatedEventData, type ProviderDeactivatedEventData, type ProviderNotificationConfig, type ProviderNotificationType, type ProviderReactivatedEventData, type ProviderResponse, type ProviderSchedule, type ProviderScheduleCreatedEventData, type ProviderScheduleDeletedEventData, type ProviderScheduleResponse, type ProviderScheduleUpdatedEventData, type ProviderSchedulesResponse, type ProviderUpdatedEventData, type ProvidersResponse, type PublicAppointment, type PublicAppointmentResponse, type PublicBookingIntent, type PublicBookingIntentResponse, 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 ServiceCreatedEventData, type ServiceDeletedEventData, type ServiceForm, type ServiceFormResponse, type ServiceFormsResponse, type ServiceProvider, type ServiceProviderCreatedEventData, type ServiceProviderDeletedEventData, type ServiceProviderResponse, type ServiceProvidersResponse, type ServiceResponse, type ServiceSlotResponse, type ServiceUpdatedEventData, type ServicesResponse, type Slot, type SlotRule, type SortServiceFormsRequest, type UnauthorizedResponse, type UpdateAccountRequest, type UpdateAccountUserRequest, type UpdateBlockRequest, type UpdateBookingIntentRequest, type UpdateCancellationReasonRequest, type UpdateClientFieldRequest, type UpdateClientRequest, type UpdateConnectedAccountRequest, type UpdateFormRequest, type UpdateProviderRequest, type UpdateProviderScheduleRequest, type UpdatePublicBookingIntentRequest, type UpdateServiceRequest, type User, type WeeklyRule, type ZonedDateTime, abandonBookingIntent, abandonPublicBookingIntent, attachServiceForm, cancelAppointment, cancelPublicAppointment, completeBookingIntent, completePublicBookingIntent, confirmAppointment, createAccount, createAccountUser, createAppointment, createBlock, createBookingIntent, createCancellationReason, createClient, createClientField, createDashboardSession, createFetchClient, createForm, createProvider, createProviderSchedule, createPublicAppointment, createPublicBookingIntent, createService, createServiceProvider, deactivateProvider, deleteBlock, deleteCancellationReason, deleteClient, deleteClientField, deleteConnectedAccount, deleteForm, deleteProviderSchedule, deleteService, deleteServiceProvider, detachServiceForm, getAccountById, getAppointment, getBlock, getBookingIntent, getCancellationReason, getClient, getClientField, getConnectedAccount, getCurrentAccount, getCurrentAccountUser, getCurrentPlatform, getEarliestPublicServiceSlot, getForm, getProvider, getProviderSchedule, getPublicAppointment, getPublicBookingIntent, getService, listAccountUsers, listAccounts, listAppointments, listBlocks, listBookingIntents, listCancellationReasons, listClientFields, listClients, listConnectedAccounts, listForms, listProviderSchedules, listProviders, listPublicCancellationReasons, listPublicServiceSlots, listRoles, listServiceForms, listServiceProviders, listServiceSlots, listServices, type paths, rescheduleAppointment, reschedulePublicAppointment, sortServiceForms, updateAccount, updateAccountUser, updateBlock, updateBookingIntent, updateCancellationReason, updateClient, updateClientField, updateConnectedAccount, updateForm, updateProvider, updateProviderSchedule, updatePublicBookingIntent, updateService };
package/dist/index.d.ts CHANGED
@@ -2175,6 +2175,7 @@ interface components {
2175
2175
  * "unix_ts": 1771947000,
2176
2176
  * "utc": "2026-02-23T15:30:00Z"
2177
2177
  * },
2178
+ * "errors": [],
2178
2179
  * "hold_duration": "PT10M",
2179
2180
  * "hold_enabled": true,
2180
2181
  * "hold_until": "2026-02-22T10:10:00Z",
@@ -2467,6 +2468,7 @@ interface components {
2467
2468
  * "unix_ts": 1771947000,
2468
2469
  * "utc": "2026-02-23T15:30:00Z"
2469
2470
  * },
2471
+ * "errors": [],
2470
2472
  * "hold_duration": "PT10M",
2471
2473
  * "hold_enabled": true,
2472
2474
  * "hold_until": "2026-02-22T10:10:00Z",
@@ -2975,6 +2977,7 @@ interface components {
2975
2977
  * "unix_ts": 1771947000,
2976
2978
  * "utc": "2026-02-23T15:30:00Z"
2977
2979
  * },
2980
+ * "errors": [],
2978
2981
  * "hold_duration": "PT10M",
2979
2982
  * "hold_enabled": true,
2980
2983
  * "hold_until": "2026-02-22T10:10:00Z",
@@ -3393,6 +3396,7 @@ interface components {
3393
3396
  * "unix_ts": 1771947000,
3394
3397
  * "utc": "2026-02-23T15:30:00Z"
3395
3398
  * },
3399
+ * "errors": [],
3396
3400
  * "hold_duration": "PT10M",
3397
3401
  * "hold_enabled": true,
3398
3402
  * "hold_until": "2026-02-22T10:10:00Z",
@@ -3728,6 +3732,7 @@ interface components {
3728
3732
  * "unix_ts": 1771947000,
3729
3733
  * "utc": "2026-02-23T15:30:00Z"
3730
3734
  * },
3735
+ * "errors": [],
3731
3736
  * "hold_duration": "PT10M",
3732
3737
  * "hold_enabled": true,
3733
3738
  * "hold_until": "2026-02-22T10:10:00Z",
@@ -7145,6 +7150,7 @@ interface components {
7145
7150
  * "unix_ts": 1771947000,
7146
7151
  * "utc": "2026-02-23T15:30:00Z"
7147
7152
  * },
7153
+ * "errors": [],
7148
7154
  * "hold_until": "2026-02-22T10:10:00Z",
7149
7155
  * "id": "bi_abc123def456abc123def456",
7150
7156
  * "locked_fields": [],
@@ -7164,6 +7170,8 @@ interface components {
7164
7170
  appointment?: components["schemas"]["PublicAppointment"] | null;
7165
7171
  /** @description The end time of the selected slot */
7166
7172
  end_at?: components["schemas"]["ZonedDateTime"] | null;
7173
+ /** @description Validation errors for submitted data in JSON:API format. Empty when no errors exist. */
7174
+ errors?: components["schemas"]["JsonError"][];
7167
7175
  /**
7168
7176
  * Format: date-time
7169
7177
  * @description When the hold expires (UTC)
@@ -7679,6 +7687,7 @@ interface components {
7679
7687
  * "unix_ts": 1771947000,
7680
7688
  * "utc": "2026-02-23T15:30:00Z"
7681
7689
  * },
7690
+ * "errors": [],
7682
7691
  * "hold_until": "2026-02-22T10:10:00Z",
7683
7692
  * "id": "bi_abc123def456abc123def456",
7684
7693
  * "locked_fields": [],
@@ -8052,6 +8061,33 @@ interface components {
8052
8061
  /** @description The account time zone (IANA format). */
8053
8062
  time_zone: string;
8054
8063
  };
8064
+ /**
8065
+ * JsonError
8066
+ * @description A single validation error in JSON:API format.
8067
+ * @example {
8068
+ * "code": "email_format",
8069
+ * "detail": "must be a valid email address",
8070
+ * "source": {
8071
+ * "pointer": "/email"
8072
+ * },
8073
+ * "title": "Invalid value"
8074
+ * }
8075
+ */
8076
+ JsonError: {
8077
+ /**
8078
+ * @description Machine-readable error code (e.g. slot_unavailable, no_available_provider, time_range_conflict)
8079
+ * @example slot_unavailable
8080
+ */
8081
+ code?: string | null;
8082
+ /** @example is not available */
8083
+ detail: string;
8084
+ source: {
8085
+ /** @example /start_at */
8086
+ pointer: string;
8087
+ };
8088
+ /** @example Invalid value */
8089
+ title: string;
8090
+ };
8055
8091
  /**
8056
8092
  * CreateAppointmentRequest
8057
8093
  * @description Request schema for creating an appointment
@@ -8280,6 +8316,7 @@ interface components {
8280
8316
  * "unix_ts": 1771947000,
8281
8317
  * "utc": "2026-02-23T15:30:00Z"
8282
8318
  * },
8319
+ * "errors": [],
8283
8320
  * "hold_duration": "PT10M",
8284
8321
  * "hold_enabled": true,
8285
8322
  * "hold_until": "2026-02-22T10:10:00Z",
@@ -8968,21 +9005,7 @@ interface components {
8968
9005
  * @description Response schema for validation errors
8969
9006
  */
8970
9007
  JsonErrorResponse: {
8971
- errors: {
8972
- /**
8973
- * @description Machine-readable error code (e.g. slot_unavailable, no_available_provider, time_range_conflict)
8974
- * @example slot_unavailable
8975
- */
8976
- code?: string | null;
8977
- /** @example is not available */
8978
- detail: string;
8979
- source: {
8980
- /** @example /start_at */
8981
- pointer: string;
8982
- };
8983
- /** @example Invalid value */
8984
- title: string;
8985
- }[];
9008
+ errors: components["schemas"]["JsonError"][];
8986
9009
  };
8987
9010
  /**
8988
9011
  * Appointment
@@ -9721,6 +9744,7 @@ interface components {
9721
9744
  * "unix_ts": 1771947000,
9722
9745
  * "utc": "2026-02-23T15:30:00Z"
9723
9746
  * },
9747
+ * "errors": [],
9724
9748
  * "hold_duration": "PT10M",
9725
9749
  * "hold_enabled": true,
9726
9750
  * "hold_until": "2026-02-22T10:10:00Z",
@@ -9874,6 +9898,8 @@ interface components {
9874
9898
  created_at: string;
9875
9899
  /** @description The end time of the selected slot */
9876
9900
  end_at?: components["schemas"]["ZonedDateTime"] | null;
9901
+ /** @description Validation errors for submitted data in JSON:API format. Empty when no errors exist. Only present on single-resource endpoints (not index). */
9902
+ errors?: components["schemas"]["JsonError"][];
9877
9903
  /** @description The hold duration as an ISO 8601 duration string (e.g., PT10M) */
9878
9904
  hold_duration?: string | null;
9879
9905
  /** @description Whether slot holding is enabled */
@@ -15055,6 +15081,7 @@ type FormsResponse = Schemas["FormsResponse"];
15055
15081
  type GenericErrorResponse = Schemas["GenericErrorResponse"];
15056
15082
  type HoldPolicy = Schemas["HoldPolicy"];
15057
15083
  type IntentSubmissionInput = Schemas["IntentSubmissionInput"];
15084
+ type JsonError = Schemas["JsonError"];
15058
15085
  type JsonErrorResponse = Schemas["JsonErrorResponse"];
15059
15086
  type MaximizeUtilizationPolicy = Schemas["MaximizeUtilizationPolicy"];
15060
15087
  type NotFoundResponse = Schemas["NotFoundResponse"];
@@ -20096,4 +20123,4 @@ declare function updateService(client: FetchClient, path: PathParams<"/v1/servic
20096
20123
  };
20097
20124
  }, `${string}/${string}`>>;
20098
20125
 
20099
- export { type Account, type AccountEvent, type AccountResponse, type AccountUser, type AccountUserCreatedEventData, type AccountUserDeletedEventData, type AccountUserResponse, type AccountUserUpdatedEventData, 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 AttachServiceFormRequest, type Block, type BlockCreatedEventData, type BlockDeletedEventData, type BlockResponse, type BlockUpdatedEventData, type BlocksResponse, type BookingIntent, type BookingIntentAbandonedEventData, type BookingIntentCompletedEventData, type BookingIntentCreatedEventData, type BookingIntentResponse, type BookingIntentUpdatedEventData, type BookingIntentsResponse, type BookingPolicy, type CancelAppointmentRequest, type CancelPublicAppointmentRequest, type CancellationEvent, type CancellationPolicy, type CancellationReason, type CancellationReasonResponse, type CancellationReasonsResponse, type Client, type ClientCreatedEventData, type ClientDeletedEventData, type ClientField, type ClientFieldChoice, type ClientFieldOptions, type ClientFieldResponse, type ClientFieldsResponse, type ClientResponse, type ClientUpdatedEventData, type ClientsResponse, type CompleteBookingIntentRequest, type CompletePublicBookingIntentRequest, type ConfirmAppointmentRequest, type ConfirmationEvent, type ConnectedAccount, type ConnectedAccountCreatedEventData, type ConnectedAccountDeletedEventData, type ConnectedAccountReconnectedEventData, type ConnectedAccountRefreshFailedEventData, type ConnectedAccountResponse, type ConnectedAccountsResponse, type CreateAccountRequest, type CreateAccountUserRequest, type CreateAppointmentRequest, type CreateBlockRequest, type CreateBookingIntentRequest, type CreateCancellationReasonRequest, type CreateClientFieldRequest, type CreateClientRequest, type CreateDashboardSessionRequest, type CreateFormRequest, type CreateProviderRequest, type CreateProviderScheduleRequest, type CreatePublicAppointmentRequest, type CreatePublicBookingIntentRequest, type CreateServiceProviderRequest, type CreateServiceRequest, type DashboardSession, type DashboardSessionResponse, type FetchClient, type FetchClientOptions, type FieldChoice, type FieldChoiceInput, type FieldOptions, type FieldOptionsInput, type ForbiddenResponse, type Form, type FormDetail, type FormField, type FormFieldInput, type FormResponse, type FormsResponse, type GenericErrorResponse, type HoldPolicy, type IntentSubmissionInput, type JsonErrorResponse, type MaximizeUtilizationPolicy, type NotFoundResponse, type PaginationMeta, type PathParams, type Platform, type PlatformResponse, type Provider, type ProviderCreatedEventData, type ProviderDeactivatedEventData, type ProviderNotificationConfig, type ProviderNotificationType, type ProviderReactivatedEventData, type ProviderResponse, type ProviderSchedule, type ProviderScheduleCreatedEventData, type ProviderScheduleDeletedEventData, type ProviderScheduleResponse, type ProviderScheduleUpdatedEventData, type ProviderSchedulesResponse, type ProviderUpdatedEventData, type ProvidersResponse, type PublicAppointment, type PublicAppointmentResponse, type PublicBookingIntent, type PublicBookingIntentResponse, 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 ServiceCreatedEventData, type ServiceDeletedEventData, type ServiceForm, type ServiceFormResponse, type ServiceFormsResponse, type ServiceProvider, type ServiceProviderCreatedEventData, type ServiceProviderDeletedEventData, type ServiceProviderResponse, type ServiceProvidersResponse, type ServiceResponse, type ServiceSlotResponse, type ServiceUpdatedEventData, type ServicesResponse, type Slot, type SlotRule, type SortServiceFormsRequest, type UnauthorizedResponse, type UpdateAccountRequest, type UpdateAccountUserRequest, type UpdateBlockRequest, type UpdateBookingIntentRequest, type UpdateCancellationReasonRequest, type UpdateClientFieldRequest, type UpdateClientRequest, type UpdateConnectedAccountRequest, type UpdateFormRequest, type UpdateProviderRequest, type UpdateProviderScheduleRequest, type UpdatePublicBookingIntentRequest, type UpdateServiceRequest, type User, type WeeklyRule, type ZonedDateTime, abandonBookingIntent, abandonPublicBookingIntent, attachServiceForm, cancelAppointment, cancelPublicAppointment, completeBookingIntent, completePublicBookingIntent, confirmAppointment, createAccount, createAccountUser, createAppointment, createBlock, createBookingIntent, createCancellationReason, createClient, createClientField, createDashboardSession, createFetchClient, createForm, createProvider, createProviderSchedule, createPublicAppointment, createPublicBookingIntent, createService, createServiceProvider, deactivateProvider, deleteBlock, deleteCancellationReason, deleteClient, deleteClientField, deleteConnectedAccount, deleteForm, deleteProviderSchedule, deleteService, deleteServiceProvider, detachServiceForm, getAccountById, getAppointment, getBlock, getBookingIntent, getCancellationReason, getClient, getClientField, getConnectedAccount, getCurrentAccount, getCurrentAccountUser, getCurrentPlatform, getEarliestPublicServiceSlot, getForm, getProvider, getProviderSchedule, getPublicAppointment, getPublicBookingIntent, getService, listAccountUsers, listAccounts, listAppointments, listBlocks, listBookingIntents, listCancellationReasons, listClientFields, listClients, listConnectedAccounts, listForms, listProviderSchedules, listProviders, listPublicCancellationReasons, listPublicServiceSlots, listRoles, listServiceForms, listServiceProviders, listServiceSlots, listServices, type paths, rescheduleAppointment, reschedulePublicAppointment, sortServiceForms, updateAccount, updateAccountUser, updateBlock, updateBookingIntent, updateCancellationReason, updateClient, updateClientField, updateConnectedAccount, updateForm, updateProvider, updateProviderSchedule, updatePublicBookingIntent, updateService };
20126
+ export { type Account, type AccountEvent, type AccountResponse, type AccountUser, type AccountUserCreatedEventData, type AccountUserDeletedEventData, type AccountUserResponse, type AccountUserUpdatedEventData, 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 AttachServiceFormRequest, type Block, type BlockCreatedEventData, type BlockDeletedEventData, type BlockResponse, type BlockUpdatedEventData, type BlocksResponse, type BookingIntent, type BookingIntentAbandonedEventData, type BookingIntentCompletedEventData, type BookingIntentCreatedEventData, type BookingIntentResponse, type BookingIntentUpdatedEventData, type BookingIntentsResponse, type BookingPolicy, type CancelAppointmentRequest, type CancelPublicAppointmentRequest, type CancellationEvent, type CancellationPolicy, type CancellationReason, type CancellationReasonResponse, type CancellationReasonsResponse, type Client, type ClientCreatedEventData, type ClientDeletedEventData, type ClientField, type ClientFieldChoice, type ClientFieldOptions, type ClientFieldResponse, type ClientFieldsResponse, type ClientResponse, type ClientUpdatedEventData, type ClientsResponse, type CompleteBookingIntentRequest, type CompletePublicBookingIntentRequest, type ConfirmAppointmentRequest, type ConfirmationEvent, type ConnectedAccount, type ConnectedAccountCreatedEventData, type ConnectedAccountDeletedEventData, type ConnectedAccountReconnectedEventData, type ConnectedAccountRefreshFailedEventData, type ConnectedAccountResponse, type ConnectedAccountsResponse, type CreateAccountRequest, type CreateAccountUserRequest, type CreateAppointmentRequest, type CreateBlockRequest, type CreateBookingIntentRequest, type CreateCancellationReasonRequest, type CreateClientFieldRequest, type CreateClientRequest, type CreateDashboardSessionRequest, type CreateFormRequest, type CreateProviderRequest, type CreateProviderScheduleRequest, type CreatePublicAppointmentRequest, type CreatePublicBookingIntentRequest, type CreateServiceProviderRequest, type CreateServiceRequest, type DashboardSession, type DashboardSessionResponse, type FetchClient, type FetchClientOptions, type FieldChoice, type FieldChoiceInput, type FieldOptions, type FieldOptionsInput, type ForbiddenResponse, type Form, type FormDetail, type FormField, type FormFieldInput, type FormResponse, type FormsResponse, type GenericErrorResponse, type HoldPolicy, type IntentSubmissionInput, type JsonError, type JsonErrorResponse, type MaximizeUtilizationPolicy, type NotFoundResponse, type PaginationMeta, type PathParams, type Platform, type PlatformResponse, type Provider, type ProviderCreatedEventData, type ProviderDeactivatedEventData, type ProviderNotificationConfig, type ProviderNotificationType, type ProviderReactivatedEventData, type ProviderResponse, type ProviderSchedule, type ProviderScheduleCreatedEventData, type ProviderScheduleDeletedEventData, type ProviderScheduleResponse, type ProviderScheduleUpdatedEventData, type ProviderSchedulesResponse, type ProviderUpdatedEventData, type ProvidersResponse, type PublicAppointment, type PublicAppointmentResponse, type PublicBookingIntent, type PublicBookingIntentResponse, 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 ServiceCreatedEventData, type ServiceDeletedEventData, type ServiceForm, type ServiceFormResponse, type ServiceFormsResponse, type ServiceProvider, type ServiceProviderCreatedEventData, type ServiceProviderDeletedEventData, type ServiceProviderResponse, type ServiceProvidersResponse, type ServiceResponse, type ServiceSlotResponse, type ServiceUpdatedEventData, type ServicesResponse, type Slot, type SlotRule, type SortServiceFormsRequest, type UnauthorizedResponse, type UpdateAccountRequest, type UpdateAccountUserRequest, type UpdateBlockRequest, type UpdateBookingIntentRequest, type UpdateCancellationReasonRequest, type UpdateClientFieldRequest, type UpdateClientRequest, type UpdateConnectedAccountRequest, type UpdateFormRequest, type UpdateProviderRequest, type UpdateProviderScheduleRequest, type UpdatePublicBookingIntentRequest, type UpdateServiceRequest, type User, type WeeklyRule, type ZonedDateTime, abandonBookingIntent, abandonPublicBookingIntent, attachServiceForm, cancelAppointment, cancelPublicAppointment, completeBookingIntent, completePublicBookingIntent, confirmAppointment, createAccount, createAccountUser, createAppointment, createBlock, createBookingIntent, createCancellationReason, createClient, createClientField, createDashboardSession, createFetchClient, createForm, createProvider, createProviderSchedule, createPublicAppointment, createPublicBookingIntent, createService, createServiceProvider, deactivateProvider, deleteBlock, deleteCancellationReason, deleteClient, deleteClientField, deleteConnectedAccount, deleteForm, deleteProviderSchedule, deleteService, deleteServiceProvider, detachServiceForm, getAccountById, getAppointment, getBlock, getBookingIntent, getCancellationReason, getClient, getClientField, getConnectedAccount, getCurrentAccount, getCurrentAccountUser, getCurrentPlatform, getEarliestPublicServiceSlot, getForm, getProvider, getProviderSchedule, getPublicAppointment, getPublicBookingIntent, getService, listAccountUsers, listAccounts, listAppointments, listBlocks, listBookingIntents, listCancellationReasons, listClientFields, listClients, listConnectedAccounts, listForms, listProviderSchedules, listProviders, listPublicCancellationReasons, listPublicServiceSlots, listRoles, listServiceForms, listServiceProviders, listServiceSlots, listServices, type paths, rescheduleAppointment, reschedulePublicAppointment, sortServiceForms, updateAccount, updateAccountUser, updateBlock, updateBookingIntent, updateCancellationReason, updateClient, updateClientField, updateConnectedAccount, updateForm, updateProvider, updateProviderSchedule, updatePublicBookingIntent, updateService };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@savvycal/appointments-core",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
4
  "type": "module",
5
5
  "description": "JavaScript/TypeScript client library for the SavvyCal Appointments API",
6
6
  "main": "./dist/index.cjs",