import { ListEventsByContactIdRequest as ListEventsByContactIdRequest$1, ListEventsByContactIdResponse as ListEventsByContactIdResponse$1, ListEventsByMemberIdRequest as ListEventsByMemberIdRequest$1, ListEventsByMemberIdResponse as ListEventsByMemberIdResponse$1, GetEventRequest as GetEventRequest$1, GetEventResponse as GetEventResponse$1, ListEventsRequest as ListEventsRequest$1, ListEventsResponse as ListEventsResponse$1, QueryEventsRequest as QueryEventsRequest$1, QueryEventsResponse as QueryEventsResponse$1, CreateEventRequest as CreateEventRequest$1, CreateEventResponse as CreateEventResponse$1, BulkCreateEventRequest as BulkCreateEventRequest$1, BulkCreateEventResponse as BulkCreateEventResponse$1, UpdateEventRequest as UpdateEventRequest$1, UpdateEventResponse as UpdateEventResponse$1, BulkUpdateEventRequest as BulkUpdateEventRequest$1, BulkUpdateEventResponse as BulkUpdateEventResponse$1, RestoreEventDefaultsRequest as RestoreEventDefaultsRequest$1, RestoreEventDefaultsResponse as RestoreEventDefaultsResponse$1, SplitRecurringEventRequest as SplitRecurringEventRequest$1, SplitRecurringEventResponse as SplitRecurringEventResponse$1, CancelEventRequest as CancelEventRequest$1, CancelEventResponse as CancelEventResponse$1, BulkCancelEventRequest as BulkCancelEventRequest$1, BulkCancelEventResponse as BulkCancelEventResponse$1 } from './index.typings.js'; import '@wix/sdk-types'; /** * An event is a scheduled entry on a calendar that includes details like timing, * location, and participants. Each event is associated with * a [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction), * from which it may [inherit default values](https://dev.wix.com/docs/rest/business-management/calendar/default-values). * Events can either be standalone, part of a recurring series, or define a * recurrence pattern. You can also specify whether events block time on the * schedule or allow other events to be scheduled concurrently. */ interface Event { /** * Event ID. * @minLength 36 * @maxLength 250 * @readonly */ id?: string | null; /** * ID of the [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/schedule-object) * the event belongs to. * After creating an event, you can't assign it to a different schedule. * @format GUID * @immutable */ scheduleId?: string | null; /** * ID of the external schedule the event belongs to. * * For example, if the event belongs to a Bookings staff member, identical to * the ID of the [resource](https://dev.wix.com/docs/rest/business-solutions/bookings/staff-members-and-resources/resource-v2/resource-object). * If the schedule belongs to a Bookings service, * identical to the ID of the [service](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/service-object). * @format GUID * @readonly */ externalScheduleId?: string | null; /** * Schedule name. * @readonly */ scheduleName?: string | null; /** * Event type. You can set the event type but you can't update it. * * Supported values: * + `DEFAULT`: A standard event that's not further specified. * + `WORKING_HOURS`: The event adds working hours to a schedule. * By default not returned in [Query Events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/query-events). * To retrieve working hour events, specify `"type": "WORKING_HOURS"` in the query filter. * Additional supported values, if Wix Bookings is installed: * + `APPOINTMENT`: Bookings appointment event. * + `CLASS`: Bookings class event. * + `COURSE`: Bookings course event. * @immutable */ type?: string | null; /** * Event status. * * Supported values: * + `CONFIRMED`: Event is scheduled to happen or has happened. * + `CANCELLED`: Event has been canceled. * * Default: `CONFIRMED` * @readonly */ status?: StatusWithLiterals; /** * Event title. * * Min: 1 character * Max: 200 characters * @minLength 1 * @maxLength 200 */ title?: string | null; /** Information about when the event starts. */ start?: ZonedDate; /** * Information about when the event ends. * * Maximum allowed date: Year 2100, or up to 100 years from the event's start date (whichever comes first). */ end?: ZonedDate; /** * Information about when the event starts adjusted to the `timeZone` of the * business [site properties](https://dev.wix.com/docs/rest/business-management/site-properties/properties/properties-object) * or a different `timeZone` you provide in the call's request. * @readonly */ adjustedStart?: ZonedDate; /** * Information about when the event ends adjusted to the `timeZone` of the * business [site properties](https://dev.wix.com/docs/rest/business-management/site-properties/properties/properties-object) * or a different `timeZone` you provide in the call's request. * @readonly */ adjustedEnd?: ZonedDate; /** * Time zone the event is associated with in * [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database). * Only regional time zones and UTC are supported. * For example, `America/New_York` or `UTC`. * * Default: `timeZone` of the [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/schedule-object). */ timeZone?: string | null; /** * Information about whether the event is a single occurrence or part of a * recurring series. * * Supported values: * + `NONE`: The event occurs only once and doesn't repeat. * + `MASTER`: Defines the recurrence pattern for a series of recurring events. * + `INSTANCE`: A specific occurrence of a recurring event. You can't create an event with `{"recurrenceType": "INSTANCE"}`, instead it's automatically generated based on the recurrence rule. If you update an `INSTANCE` event, `recurrenceType` automatically changes to `EXCEPTION`. * + `EXCEPTION`: A modified instance of a recurring event that differs from the recurrence pattern. For example, an event with a different time or location. You can't create an `EXCEPTION` event directly, instead it's set automatically when you update an `INSTANCE` event. * * Default: `NONE` * @readonly */ recurrenceType?: RecurrenceTypeWithLiterals; /** * Recurrence pattern for a series of events. This field is required when * creating a `MASTER` event and isn't available for non-recurring events. * You can't update the recurrence rule for `INSTANCE` or `EXCEPTION` events. * * For example, an event that repeats every second Monday until January 7, 2026, * at 8:00 AM has the following `recurrenceRule`: * - `frequency = WEEKLY` * - `interval = 2` * - `days = [MONDAY]` * - `until = 20260107T08:00:00Z` */ recurrenceRule?: RecurrenceRule; /** * ID of the `MASTER` event the event belongs to. Available only for `INSTANCE` * and `EXCEPTION` events. * @minLength 64 * @maxLength 64 * @readonly */ recurringEventId?: string | null; /** * Specifies whether the event blocks time in the schedule it belongs to. * * Supported values: * + `OPAQUE`: The schedule is blocked during the event, preventing other events that involve the same entities (for example, Booking staff members) from being scheduled at the same time. * + `TRANSPARENT`: The schedule remains open during the event, allowing other events to be scheduled concurrently. * * Default: `OPAQUE` */ transparency?: TransparencyWithLiterals; /** * Event location. * * Default: `defaultLocation` of the [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/schedule-object) the event belongs to */ location?: Location; /** * List of [Wix Bookings resources](https://dev.wix.com/docs/rest/business-solutions/bookings/staff-members-and-resources/resource-v2/resource-object) * affected by the event. This could include, for example, the * [Wix Bookings staff member](https://dev.wix.com/docs/rest/business-solutions/bookings/staff-members-and-resources/staff-member-v1/staff-member-object) * providing the service or the room where the appointment takes place. * * Max: 100 resources * @maxSize 100 */ resources?: Resource[]; /** * Maximum number of participants who can participate in the event. * * Default: `defaultCapacity` of the [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/schedule-object) the event belongs to */ totalCapacity?: number | null; /** * Number of participants who can still be added to the event. * @readonly */ remainingCapacity?: number | null; /** * Information about the event's participants. * Returned only if explicitly requested. For more details, see the [permissions article](https://dev.wix.com/docs/rest/business-management/calendar/permissions#retrieve-personal-information). * @readonly */ participants?: Participants; /** * Information about the event's online conferencing. * Returned only if explicitly requested. For more details, see the [permissions article](https://dev.wix.com/docs/rest/business-management/calendar/permissions#retrieve-personal-information). * * Default: `defaultConferencingDetails` of the [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/schedule-object) the event belongs to */ conferencingDetails?: ConferencingDetails; /** * Additional notes about the event. * Returned only if explicitly requested. For more details, see the [permissions article](https://dev.wix.com/docs/rest/business-management/calendar/permissions#retrieve-personal-information). * * Min: 1 character * Max: 5000 characters * @minLength 1 * @maxLength 5000 */ notes?: string | null; /** * List of fields whose values are inherited. * + For single-occurrence events, values are inherited from the [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/schedule-object). * + For `INSTANCE` and `EXCEPTION` events, values are inherited from the related `MASTER` event. * @readonly */ inheritedFields?: FieldWithLiterals[]; /** * ID of the app that owns the event. Identical to `appId` of the * [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/schedule-object) * to which the event belongs. * For events from Wix apps, the following values apply: * - Wix Bookings: `"13d21c63-b5ec-5912-8397-c3a5ddb27a97"` * - Wix Services: `"cc552162-24a4-45e0-9695-230c4931ef40"` * - Wix Meetings: `"6646a75c-2027-4f49-976c-58f3d713ed0f"` * [Full list of apps created by Wix](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/platform/about-apps-created-by-wix). * @format GUID * @readonly */ appId?: string | null; /** * List of permissions associated with the event. Refer to the * [permissions article](https://dev.wix.com/docs/rest/business-management/calendar/permissions#roles) * for more information. * @readonly */ permissions?: Permission[]; /** Extensions enabling applications or users to save custom data related to the event. */ extendedFields?: ExtendedFields; /** * Revision number, which increments each time the event is updated. * To prevent conflicting changes, the current revision must be passed when updating the event. * Ignored when creating an event. * @readonly */ revision?: string | null; /** * Date the event was created in `YYYY-MM-DDThh:mm:ss.sssZ` format. * @readonly */ createdDate?: Date | null; /** * Date the event was last updated in `YYYY-MM-DDThh:mm:ss.sssZ` format. * @readonly */ updatedDate?: Date | null; } declare enum Status { /** Event is scheduled to happen or has happened. */ CONFIRMED = "CONFIRMED", /** Event has been canceled. */ CANCELLED = "CANCELLED" } /** @enumType */ type StatusWithLiterals = Status | 'CONFIRMED' | 'CANCELLED'; /** A date time with a time zone, having the UTC offset and date determined by the server. */ interface ZonedDate { /** * Local date time in [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601). * For example, `2024-01-30T13:30:00`. * Wix Calendar APIs ignore seconds. * @format LOCAL_DATE_TIME */ localDate?: string | null; /** * Time zone in * [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database). * For example, `America/New_York`. * @readonly */ timeZone?: string | null; /** * UTC date time in [ISO-8601 format](https://en.wikipedia.org/wiki/ISO_8601). * For example, `2024-01-30T13:30:00`. * Not available for adjusted date fields. * @readonly */ utcDate?: Date | null; } declare enum RecurrenceType { /** The event occurs only once and doesn't repeat. */ NONE = "NONE", /** Defines the recurrence pattern for a series of recurring events. */ MASTER = "MASTER", /** A specific occurrence of a recurring event. You can't create an event with `{"recurrenceType": "INSTANCE"}`, instead it's automatically generated based on the recurrence rule. If you update an `INSTANCE` event, `recurrenceType` automatically changes to `EXCEPTION`. */ INSTANCE = "INSTANCE", /** A modified instance of a recurring event that differs from the recurrence pattern. For example, an event with a different time or location. You can't create an `EXCEPTION` event directly, instead it's set automatically when you update an `INSTANCE` event. */ EXCEPTION = "EXCEPTION" } /** @enumType */ type RecurrenceTypeWithLiterals = RecurrenceType | 'NONE' | 'MASTER' | 'INSTANCE' | 'EXCEPTION'; interface RecurrenceRule { /** * Frequency how often the event repeats. Works together with `interval`. * * Supported values: * + `WEEKLY`: The event's recurrence pattern is based on weeks. */ frequency?: FrequencyWithLiterals; /** * Interval how often the event repeats. Works together with `frequency`. * For example, `frequency` set to `WEEKLY` and `interval` set to `2` means * the event repeats every 2 weeks. * * Min: `1` * Max: `4` * Default: `1` * @min 1 * @max 4 */ interval?: number | null; /** * Days of the week when the recurring event takes place. * Currently, only a single day is supported. * * Min: 1 day * Max: 1 day * @minSize 1 * @maxSize 1 */ days?: DayWithLiterals[]; /** * Date until when the event repeats. * If not specified, the event repeats forever. */ until?: ZonedDate; /** * Date until when the event repeats * adjusted to the `timeZone` of the business * [site properties](https://dev.wix.com/docs/rest/business-management/site-properties/properties/properties-object) * or a different `timeZone` you provide in the call's request. * @readonly */ adjustedUntil?: ZonedDate; } declare enum Frequency { UNKNOWN_FREQUENCY = "UNKNOWN_FREQUENCY", /** The event's recurrence pattern is based on weeks. */ WEEKLY = "WEEKLY" } /** @enumType */ type FrequencyWithLiterals = Frequency | 'UNKNOWN_FREQUENCY' | 'WEEKLY'; declare enum Day { /** The recurring event takes place on Mondays. */ MONDAY = "MONDAY", /** The recurring event takes place on Tuesdays. */ TUESDAY = "TUESDAY", /** The recurring event takes place on Wednesday. */ WEDNESDAY = "WEDNESDAY", /** The recurring event takes place on Thursdays. */ THURSDAY = "THURSDAY", /** The recurring event takes place on Fridays. */ FRIDAY = "FRIDAY", /** The recurring event takes place on Saturdays. */ SATURDAY = "SATURDAY", /** The recurring event takes place on Sundays. */ SUNDAY = "SUNDAY" } /** @enumType */ type DayWithLiterals = Day | 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY'; declare enum Transparency { UNKNOWN_TRANSPARENCY = "UNKNOWN_TRANSPARENCY", /** The schedule is blocked during the event, preventing other events that involve the same entities (for example, Booking staff members) from being scheduled at the same time. */ OPAQUE = "OPAQUE", /** The schedule remains open during the event, allowing other events to be scheduled concurrently. */ TRANSPARENT = "TRANSPARENT" } /** @enumType */ type TransparencyWithLiterals = Transparency | 'UNKNOWN_TRANSPARENCY' | 'OPAQUE' | 'TRANSPARENT'; interface Location { /** * [Location](https://dev.wix.com/docs/rest/business-management/locations/location-object) * ID. Available only for `BUSINESS` locations. * @format GUID */ id?: string | null; /** * Location type. * * Supported values: * + `BUSINESS`: The event is held at a business location. * + `CUSTOMER`: The event is held at the customer's location, such as their home or office. * + `CUSTOM`: The event is held at an address or venue not tied to the business or customer. */ type?: LocationTypeWithLiterals; /** * Location name. For `BUSINESS` locations, it's identical to the * [location](https://dev.wix.com/docs/rest/business-management/locations/location-object) * `name`. * * Min: 1 character * Max: 150 characters * @minLength 1 * @maxLength 150 */ name?: string | null; /** * Location address. For `BUSINESS` locations, it's identical to the * [location](https://dev.wix.com/docs/rest/business-management/locations/location-object)'s * `formattedAddress`. * @minLength 1 * @maxLength 300 */ address?: string | null; } declare enum LocationType { /** The event is held at a business location. */ BUSINESS = "BUSINESS", /** The event is held at the customer's location, such as their home or office. */ CUSTOMER = "CUSTOMER", /** The event is held at an address or venue not tied to the business or customer. */ CUSTOM = "CUSTOM" } /** @enumType */ type LocationTypeWithLiterals = LocationType | 'BUSINESS' | 'CUSTOMER' | 'CUSTOM'; interface Resource { /** * Resource ID. * @format GUID */ id?: string | null; /** * Resource name. * @readonly */ name?: string | null; /** * Resource type. * @readonly */ type?: string | null; /** * Specifies whether the event blocks time in the resource's schedule. * * Supported values: * + `OPAQUE`: The schedule is blocked during the event, preventing other events that involve the same resource from being scheduled at the same time. * + `TRANSPARENT`: The schedule remains open during the event, allowing other events to be scheduled concurrently. * * Default: `OPAQUE`. */ transparency?: TransparencyWithLiterals; /** * Permission role associated with the resource. Refer to the * [permissions article](https://dev.wix.com/docs/rest/business-management/calendar/permissions#roles) * for more information. */ permissionRole?: RoleWithLiterals; } declare enum Role { /** Full read and write access. */ WRITER = "WRITER", /** Full read access, write access limited to `event.notes`. */ COMMENTER = "COMMENTER" } /** @enumType */ type RoleWithLiterals = Role | 'WRITER' | 'COMMENTER'; interface Participants { /** * Total number of participants. * * Min: `0` */ total?: number | null; /** * Full or partial list of the participants. * * Max: 50 participants * @maxSize 50 */ list?: Participant[]; /** * Whether there are more participants for the event than listed. * * + `false`: The list includes all participants. * + `true`: The list doesn't include all participants. */ hasMore?: boolean | null; /** * Participant's status. * * Supported values: * + `CONFIRMED`: All participants are confirmed. * + `PENDING_CONFIRMATION`: At least one participant isn't confirmed yet. */ status?: ParticipantsStatusWithLiterals; } interface Participant { /** * Participant name. * * Min: 1 character * Max: 200 characters * @minLength 1 * @maxLength 200 */ name?: string | null; /** * Participant's phone number. * @format PHONE */ phone?: string | null; /** * Participant's email address. * @format EMAIL */ email?: string | null; /** * [Contact](https://dev.wix.com/docs/rest/crm/members-contacts/contacts/contacts/contact-v4/contact-object) * ID of the participant. * @format GUID */ contactId?: string | null; } declare enum ParticipantsStatus { /** All participants are confirmed. */ CONFIRMED = "CONFIRMED", /** At least one participant isn't confirmed yet. */ PENDING_CONFIRMATION = "PENDING_CONFIRMATION" } /** @enumType */ type ParticipantsStatusWithLiterals = ParticipantsStatus | 'CONFIRMED' | 'PENDING_CONFIRMATION'; interface ConferencingDetails { /** Conference type. For example, `Zoom`. */ type?: TypeWithLiterals; /** * URL used by the host to start the conference. * * Min: 1 character * Max: 2000 characters * @minLength 1 * @maxLength 2000 */ hostUrl?: string | null; /** * URL used by a guest to join the conference. * * Min: 1 character * Max: 2000 characters * @minLength 1 * @maxLength 2000 */ guestUrl?: string | null; /** * Conference password. * * Min: 1 character * Max: 100 characters * @minLength 1 * @maxLength 100 */ password?: string | null; /** * Conference ID in an external system. * * Min: 1 character * Max: 150 characters * @minLength 1 * @maxLength 150 */ externalId?: string | null; } declare enum ProviderType { /** Custom conferencing link manually configured by the user. */ CUSTOM = "CUSTOM", /** Online meeting provider integrated via an app. */ ONLINE_MEETING = "ONLINE_MEETING" } /** @enumType */ type ProviderTypeWithLiterals = ProviderType | 'CUSTOM' | 'ONLINE_MEETING'; interface OnlineMeetingInfo { /** @format GUID */ appId?: string; } declare enum Type { UNKNOWN_TYPE = "UNKNOWN_TYPE", ZOOM = "ZOOM", CUSTOM = "CUSTOM" } /** @enumType */ type TypeWithLiterals = Type | 'UNKNOWN_TYPE' | 'ZOOM' | 'CUSTOM'; interface Provider extends ProviderProviderInfoOneOf { /** Information about online meeting providers. */ onlineMeetingInfo?: OnlineMeetingInfo; providerType?: ProviderTypeWithLiterals; } /** @oneof */ interface ProviderProviderInfoOneOf { /** Information about online meeting providers. */ onlineMeetingInfo?: OnlineMeetingInfo; } declare enum Field { /** `title` is inherited from the schedule or `MASTER` event. */ TITLE = "TITLE", /** `timeZone` is inherited from the schedule or `MASTER` event. */ TIME_ZONE = "TIME_ZONE", /** `start` and `end` are inherited from the `MASTER` event. */ TIME = "TIME", /** `location` is inherited from the schedule or `MASTER` event. */ LOCATION = "LOCATION", /** `resources` is inherited from the `MASTER` event. */ RESOURCES = "RESOURCES", /** `capacity` is inherited from the schedule or `MASTER` event. */ CAPACITY = "CAPACITY", /** `participants` is inherited from the `MASTER` event. */ PARTICIPANTS = "PARTICIPANTS", /** `conferencingDetails` is inherited from the schedule or `MASTER` event. */ CONFERENCING_DETAILS = "CONFERENCING_DETAILS" } /** @enumType */ type FieldWithLiterals = Field | 'TITLE' | 'TIME_ZONE' | 'TIME' | 'LOCATION' | 'RESOURCES' | 'CAPACITY' | 'PARTICIPANTS' | 'CONFERENCING_DETAILS'; interface Permission { /** * [Wix user](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities#wix-users) * granted the permission. */ identity?: CommonIdentificationData; /** * Permission role. * * Supported values: * + `WRITER`: Full read and write access. * + `COMMENTER`: Full read access, write access limited to `event.notes`. */ role?: RoleWithLiterals; } interface CommonIdentificationData extends CommonIdentificationDataIdOneOf { /** * ID of a Wix user. For example, the site owner or a * [site collaborator](https://support.wix.com/en/article/inviting-people-to-contribute-to-your-site). * @format GUID */ wixUserId?: string; } /** @oneof */ interface CommonIdentificationDataIdOneOf { /** * ID of a Wix user. For example, the site owner or a * [site collaborator](https://support.wix.com/en/article/inviting-people-to-contribute-to-your-site). * @format GUID */ wixUserId?: string; } declare enum IdentityType { UNKNOWN = "UNKNOWN", WIX_USER = "WIX_USER" } /** @enumType */ type IdentityTypeWithLiterals = IdentityType | 'UNKNOWN' | 'WIX_USER'; interface ExtendedFields { /** * Extended field data. Each key corresponds to the namespace of the app that created the extended fields. * The value of each key is structured according to the schema defined when the extended fields were configured. * * You can only access fields for which you have the appropriate permissions. * * Learn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields). */ namespaces?: Record>; } interface RecurringEventSplit { /** Original `MASTER` event that was shortened. */ updatedRecurringEventEndingBeforeSplit?: Event; /** New `MASTER` event starting with the first event after the split date. */ newRecurringEventStartingFromSplit?: Event; } interface EventCancelled { /** Canceled event. */ event?: Event; } interface ParticipantNotification { /** * Whether to notify the participants about changes made to the schedule or event. * * Default: `false` */ notifyParticipants?: boolean | null; /** * Message to send. * * Min: 1 character * Max: 5000 characters * @minLength 1 * @maxLength 5000 */ message?: string | null; /** * Information about the delivery channels used to send the notification. * For example, `{"channels": "SMS" }`, `{"channels": "EMAIL" }`, or `{"channels": "EMAIL, SMS" }`. * * Max: 10 keys * Max key length: 64 characters * Max value length: 1000 characters */ metadata?: Record; } /** Deprecated. Use EventUpdated instead, which includes the modified fields and additional metadata. */ interface EventUpdatedWithMetadata { /** The updated event. */ event?: Event; /** * Information about whether participants of the updated event are notified and * the message they receive. */ participantNotification?: ParticipantNotification; } interface UpdateScheduleWithFixedBusinessResourceIdRequest { /** @format GUID */ metaSiteId?: string; /** @format GUID */ currentBusinessResourceId?: string; migrateBusinessConferenceId?: boolean; } interface UpdateScheduleWithFixedBusinessResourceIdResponse { } interface UpdateEventsWithFixedBusinessResourceIdRequest { /** @format GUID */ metaSiteId?: string; /** @format GUID */ currentBusinessResourceId?: string; migrateBusinessConferenceId?: boolean; } interface UpdateEventsWithFixedBusinessResourceIdResponse { } interface DomainEvent extends DomainEventBodyOneOf { createdEvent?: EntityCreatedEvent; updatedEvent?: EntityUpdatedEvent; deletedEvent?: EntityDeletedEvent; actionEvent?: ActionEvent; /** Event ID. With this ID you can easily spot duplicated events and ignore them. */ id?: string; /** * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities. * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`. */ entityFqdn?: string; /** * Event action name, placed at the top level to make it easier for users to dispatch messages. * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`. */ slug?: string; /** ID of the entity associated with the event. */ entityId?: string; /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */ eventTime?: Date | null; /** * Whether the event was triggered as a result of a privacy regulation application * (for example, GDPR). */ triggeredByAnonymizeRequest?: boolean | null; /** If present, indicates the action that triggered the event. */ originatedFrom?: string | null; /** * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number. * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it. */ entityEventSequence?: string | null; } /** @oneof */ interface DomainEventBodyOneOf { createdEvent?: EntityCreatedEvent; updatedEvent?: EntityUpdatedEvent; deletedEvent?: EntityDeletedEvent; actionEvent?: ActionEvent; } interface EntityCreatedEvent { entityAsJson?: string; /** Indicates the event was triggered by a restore-from-trashbin operation for a previously deleted entity */ restoreInfo?: RestoreInfo; } interface RestoreInfo { deletedDate?: Date | null; } interface EntityUpdatedEvent { /** * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff. * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects. * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it. */ currentEntityAsJson?: string; } interface EntityDeletedEvent { /** Entity that was deleted. */ deletedEntityAsJson?: string | null; } interface ActionEvent { bodyAsJson?: string; } interface MessageEnvelope { /** * App instance ID. * @format GUID */ instanceId?: string | null; /** * Event type. * @maxLength 150 */ eventType?: string; /** The identification type and identity data. */ identity?: IdentificationData; /** Stringify payload. */ data?: string; /** Details related to the account */ accountInfo?: AccountInfo; } interface IdentificationData extends IdentificationDataIdOneOf { /** * ID of a site visitor that has not logged in to the site. * @format GUID */ anonymousVisitorId?: string; /** * ID of a site visitor that has logged in to the site. * @format GUID */ memberId?: string; /** * ID of a Wix user (site owner, contributor, etc.). * @format GUID */ wixUserId?: string; /** * ID of an app. * @format GUID */ appId?: string; /** @readonly */ identityType?: WebhookIdentityTypeWithLiterals; } /** @oneof */ interface IdentificationDataIdOneOf { /** * ID of a site visitor that has not logged in to the site. * @format GUID */ anonymousVisitorId?: string; /** * ID of a site visitor that has logged in to the site. * @format GUID */ memberId?: string; /** * ID of a Wix user (site owner, contributor, etc.). * @format GUID */ wixUserId?: string; /** * ID of an app. * @format GUID */ appId?: string; } declare enum WebhookIdentityType { UNKNOWN = "UNKNOWN", ANONYMOUS_VISITOR = "ANONYMOUS_VISITOR", MEMBER = "MEMBER", WIX_USER = "WIX_USER", APP = "APP" } /** @enumType */ type WebhookIdentityTypeWithLiterals = WebhookIdentityType | 'UNKNOWN' | 'ANONYMOUS_VISITOR' | 'MEMBER' | 'WIX_USER' | 'APP'; interface AccountInfo { /** * ID of the Wix account associated with the event. * @format GUID */ accountId?: string | null; /** * ID of the parent Wix account. Only included when accountId belongs to a child account. * @format GUID */ parentAccountId?: string | null; /** * ID of the Wix site associated with the event. Only included when the event is tied to a specific site. * @format GUID */ siteId?: string | null; } interface ListEventsByContactIdRequest { /** * ID of the [contact](https://dev.wix.com/docs/rest/crm/members-contacts/contacts/contacts/contact-v4/contact-object) * to retrieve events for. Required, unless you provide `cursorPaging`. * @format GUID */ contactId: string | null; /** * Local start date and time from which events are returned in * [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format. For example, * `2024-01-30T13:30:00`. Required if `cursorPaging` isn't provided. * * Events that start before the `fromLocalDate` but end after it are included in * the results. Must be earlier than `toLocalDate` unless the sort order is descending. * @format LOCAL_DATE_TIME */ fromLocalDate?: string | null; /** * Local end date and time up to which events are returned in * [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format. For example, * `2024-01-30T13:30:00`. Can't be more than a full year after * `2024-01-30T13:30:00`. Required if `cursorPaging` isn't provided. * * Events that start before `toLocalDate` but end after it are included in the * results. Must be later than `fromLocalDate` unless the sort order is descending. * @format LOCAL_DATE_TIME */ toLocalDate?: string | null; /** * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) * for `fromLocalDate`, `toLocalDate`, and for calculating `adjustedStart` and * `adjustedEnd`. For example, `America/New_York` or `UTC`. * * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/rest/business-management/site-properties/properties/get-site-properties). */ timeZone?: string | null; /** * [App ID](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/platform/about-apps-created-by-wix) to filter events by. * @format GUID */ appId?: string | null; /** Cursor to retrieve the next page of the results. */ cursorPaging?: CommonCursorPaging; /** * Sorting for the results. * If not specified, results are sorted by `start` ascending. * For DESC order, events are sorted by `end` time in descending order. */ sort?: Sorting; } /** TODO Diverge */ interface CommonCursorPaging { /** * Number of events to return. * Defaults to `50`. Maximum `100`. * @min 1 * @max 100 */ limit?: number | null; /** * Pointer to the next or previous page in the list of results. * * You can get the relevant cursor token * from the `pagingMetadata` object in the previous call's response. * Not relevant for the first request. */ cursor?: string | null; } /** TODO Diverge */ interface Sorting { /** * The field to sort by. * Either `start` or `end`. * Default is `start`. */ fieldName?: string; /** Sort order. */ order?: SortOrderWithLiterals; } declare enum SortOrder { ASC = "ASC", DESC = "DESC" } /** @enumType */ type SortOrderWithLiterals = SortOrder | 'ASC' | 'DESC'; interface ListEventsByContactIdResponse { /** Retrieved events. */ events?: Event[]; /** Paging metadata. */ pagingMetadata?: CommonCursorPagingMetadata; } /** TODO Diverge */ interface CommonCursorPagingMetadata { /** Number of items returned in the response. */ count?: number | null; /** Use these cursor to paginate between results. [Read more](https://dev.wix.com/api/rest/getting-started/api-query-language#getting-started_api-query-language_cursor-paging). */ cursors?: CommonCursors; /** * Indicates if there are more results after the current page. * If `true`, another page of results can be retrieved. * If `false`, this is the last page. */ hasNext?: boolean | null; } interface CommonCursors { /** Cursor pointing to next page in the list of results. */ next?: string | null; } interface ListEventsByMemberIdRequest { /** * ID of the [member](https://dev.wix.com/docs/rest/crm/members-contacts/members/members/member-object) * to retrieve events for. Required, unless you provide `cursorPaging`. * Provide `me` to retrieve events for the currently logged-in member. * You must have the `Read Calendars - Including PI` * [permission scope](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/configure-permissions-for-your-app) * to retrieve events for members who aren't the currently logged in member. * @minLength 2 * @maxLength 36 */ memberId: string | null; /** * Local start date and time from which events are returned in * [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format. For example, * `2024-01-30T13:30:00`. Required if neither `cursorPaging` is provided nor a non-empty `eventIds` array. * * Events that start before the `fromLocalDate` but end after it are included in * the results. Must be earlier than `toLocalDate` unless the sort order is descending. * @format LOCAL_DATE_TIME */ fromLocalDate?: string | null; /** * Local end date and time up to which events are returned in * [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format. For example, * `2024-01-30T13:30:00`. Can't be more than a full year after * `fromLocalDate`. Required if neither `cursorPaging` is provided nor a non-empty `eventIds` array. * * Events that start before `toLocalDate` but end after it are included in the * results. Must be later than `fromLocalDate` unless the sort order is descending. * @format LOCAL_DATE_TIME */ toLocalDate?: string | null; /** * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) * for `fromLocalDate`, `toLocalDate`, and for calculating `adjustedStart` and * `adjustedEnd`. For example, `America/New_York` or `UTC`. * * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/rest/business-management/site-properties/properties/get-site-properties). */ timeZone?: string | null; /** * [App ID](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/platform/about-apps-created-by-wix) to filter events by. * @format GUID */ appId?: string | null; /** Cursor to retrieve the next page of the results. */ cursorPaging?: CommonCursorPaging; /** * IDs of the events to retrieve. * If you provide a list of IDs, all other filters are ignored. * * Max: 100 `eventId`s * @maxSize 100 * @minLength 36 * @maxLength 250 */ eventIds?: string[]; /** * Sorting for the results. * If not specified, results are sorted by `start` ascending. * For DESC order, events are sorted by `end` time in descending order. */ sort?: Sorting; } interface ListEventsByMemberIdResponse { /** Retrieved events. */ events?: Event[]; /** Paging metadata. */ pagingMetadata?: CommonCursorPagingMetadata; } /** Encapsulates all details written to the Greyhound topic when a site's properties are updated. */ interface SitePropertiesNotification { /** The site ID for which this update notification applies. */ metasiteId?: string; /** The actual update event. */ event?: SitePropertiesEvent; /** * A convenience set of mappings from the MetaSite ID to its constituent services. * @maxSize 500 */ translations?: Translation[]; /** Context of the notification */ changeContext?: ChangeContext; } /** The actual update event for a particular notification. */ interface SitePropertiesEvent { /** Version of the site's properties represented by this update. */ version?: number; /** Set of properties that were updated - corresponds to the fields in "properties". */ fields?: string[]; /** Updated properties. */ properties?: Properties; } interface Properties { /** Site categories. */ categories?: Categories; /** Site locale. */ locale?: Locale; /** * Site language. * * Two-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string | null; /** * Site currency format used to bill customers. * * Three-letter currency code in [ISO-4217 alphabetic](https://en.wikipedia.org/wiki/ISO_4217#Active_codes) format. */ paymentCurrency?: string | null; /** Timezone in `America/New_York` format. */ timeZone?: string | null; /** Email address. */ email?: string | null; /** Phone number. */ phone?: string | null; /** Fax number. */ fax?: string | null; /** Address. */ address?: Address; /** Site display name. */ siteDisplayName?: string | null; /** Business name. */ businessName?: string | null; /** Path to the site's logo in Wix Media (without Wix Media base URL). */ logo?: string | null; /** Site description. */ description?: string | null; /** * Business schedule. Regular and exceptional time periods when the business is open or the service is available. * * __Note:__ Not supported by Wix Bookings. */ businessSchedule?: BusinessSchedule; /** Supported languages of a site and the primary language. */ multilingual?: Multilingual; /** Cookie policy the Wix user defined for their site (before the site visitor interacts with/limits it). */ consentPolicy?: ConsentPolicy; /** * Supported values: `FITNESS SERVICE`, `RESTAURANT`, `BLOG`, `STORE`, `EVENT`, `UNKNOWN`. * * Site business type. */ businessConfig?: string | null; /** External site URL that uses Wix as its headless business solution. */ externalSiteUrl?: string | null; /** Track clicks analytics. */ trackClicksAnalytics?: boolean; /** * Company ID issued to the business by local authorities. Appears on invoices and price quotes. * @maxLength 50 */ companyId?: string | null; } interface Categories { /** Primary site category. */ primary?: string; /** * Secondary site category. * @maxSize 50 */ secondary?: string[]; /** Business Term Id */ businessTermId?: string | null; } interface Locale { /** Two-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ languageCode?: string; /** Two-letter country code in [ISO-3166 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements) format. */ country?: string; } interface Address { /** Street name. */ street?: string; /** City name. */ city?: string; /** Two-letter country code in an [ISO-3166 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format. */ country?: string; /** State. */ state?: string; /** * Zip or postal code. * @maxLength 20 */ zip?: string; /** Extra information to be displayed in the address. */ hint?: AddressHint; /** Whether this address represents a physical location. */ isPhysical?: boolean; /** Google-formatted version of this address. */ googleFormattedAddress?: string; /** Street number. */ streetNumber?: string; /** Apartment number. */ apartmentNumber?: string; /** Geographic coordinates of location. */ coordinates?: GeoCoordinates; } /** * Extra information on displayed addresses. * This is used for display purposes. Used to add additional data about the address, such as "In the passage". * Free text. In addition, the user can state where to display the additional description - before, after, or instead of the address string. */ interface AddressHint { /** Extra text displayed next to, or instead of, the actual address. */ text?: string; /** Where the extra text should be displayed. */ placement?: PlacementTypeWithLiterals; } /** Where the extra text should be displayed: before, after or instead of the actual address. */ declare enum PlacementType { BEFORE = "BEFORE", AFTER = "AFTER", REPLACE = "REPLACE" } /** @enumType */ type PlacementTypeWithLiterals = PlacementType | 'BEFORE' | 'AFTER' | 'REPLACE'; /** Geocoordinates for a particular address. */ interface GeoCoordinates { /** Latitude of the location. Must be between -90 and 90. */ latitude?: number; /** Longitude of the location. Must be between -180 and 180. */ longitude?: number; } /** Business schedule. Regular and exceptional time periods when the business is open or the service is available. */ interface BusinessSchedule { /** * Weekly recurring time periods when the business is regularly open or the service is available. Limited to 100 time periods. * @maxSize 100 */ periods?: TimePeriod[]; /** * Exceptions to the business's regular hours. The business can be open or closed during the exception. * @maxSize 100 */ specialHourPeriod?: SpecialHourPeriod[]; } /** Weekly recurring time periods when the business is regularly open or the service is available. */ interface TimePeriod { /** Day of the week the period starts on. */ openDay?: DayOfWeekWithLiterals; /** * Time the period starts in 24-hour [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) extended format. Valid values are `00:00` to `24:00`, where `24:00` represents * midnight at the end of the specified day. */ openTime?: string; /** Day of the week the period ends on. */ closeDay?: DayOfWeekWithLiterals; /** * Time the period ends in 24-hour [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) extended format. Valid values are `00:00` to `24:00`, where `24:00` represents * midnight at the end of the specified day. * * __Note:__ If `openDay` and `closeDay` specify the same day of the week `closeTime` must be later than `openTime`. */ closeTime?: string; } /** Enumerates the days of the week. */ declare enum DayOfWeek { MONDAY = "MONDAY", TUESDAY = "TUESDAY", WEDNESDAY = "WEDNESDAY", THURSDAY = "THURSDAY", FRIDAY = "FRIDAY", SATURDAY = "SATURDAY", SUNDAY = "SUNDAY" } /** @enumType */ type DayOfWeekWithLiterals = DayOfWeek | 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY'; /** Exception to the business's regular hours. The business can be open or closed during the exception. */ interface SpecialHourPeriod { /** Start date and time of the exception in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format and [Coordinated Universal Time (UTC)](https://en.wikipedia.org/wiki/Coordinated_Universal_Time). */ startDate?: string; /** End date and time of the exception in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format and [Coordinated Universal Time (UTC)](https://en.wikipedia.org/wiki/Coordinated_Universal_Time). */ endDate?: string; /** * Whether the business is closed (or the service is not available) during the exception. * * Default: `true`. */ isClosed?: boolean; /** Additional info about the exception. For example, "We close earlier on New Year's Eve." */ comment?: string; } interface Multilingual { /** * Supported languages list. * @maxSize 200 */ supportedLanguages?: SupportedLanguage[]; /** Whether to redirect to user language. */ autoRedirect?: boolean; } interface SupportedLanguage { /** Two-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ languageCode?: string; /** Locale. */ locale?: Locale; /** Whether the supported language is the primary language for the site. */ isPrimary?: boolean; /** Language icon. */ countryCode?: string; /** How the language will be resolved. For internal use. */ resolutionMethod?: ResolutionMethodWithLiterals; /** Whether the supported language is the primary language for site visitors. */ isVisitorPrimary?: boolean | null; } declare enum ResolutionMethod { QUERY_PARAM = "QUERY_PARAM", SUBDOMAIN = "SUBDOMAIN", SUBDIRECTORY = "SUBDIRECTORY" } /** @enumType */ type ResolutionMethodWithLiterals = ResolutionMethod | 'QUERY_PARAM' | 'SUBDOMAIN' | 'SUBDIRECTORY'; interface ConsentPolicy { /** Whether the site uses cookies that are essential to site operation. Always `true`. */ essential?: boolean | null; /** Whether the site uses cookies that affect site performance and other functional measurements. */ functional?: boolean | null; /** Whether the site uses cookies that collect analytics about how the site is used (in order to improve it). */ analytics?: boolean | null; /** Whether the site uses cookies that collect information allowing better customization of the experience for a current visitor. */ advertising?: boolean | null; /** CCPA compliance flag. */ dataToThirdParty?: boolean | null; } /** A single mapping from the MetaSite ID to a particular service. */ interface Translation { /** The service type. */ serviceType?: string; /** The application definition ID; this only applies to services of type ThirdPartyApps. */ appDefId?: string; /** The instance ID of the service. */ instanceId?: string; } interface ChangeContext extends ChangeContextPayloadOneOf { /** Properties were updated. */ propertiesChange?: PropertiesChange; /** Default properties were created on site creation. */ siteCreated?: SiteCreated; /** Properties were cloned on site cloning. */ siteCloned?: SiteCloned; } /** @oneof */ interface ChangeContextPayloadOneOf { /** Properties were updated. */ propertiesChange?: PropertiesChange; /** Default properties were created on site creation. */ siteCreated?: SiteCreated; /** Properties were cloned on site cloning. */ siteCloned?: SiteCloned; } interface PropertiesChange { } interface SiteCreated { /** Origin template site id. */ originTemplateId?: string | null; } interface SiteCloned { /** Origin site id. */ originMetaSiteId?: string; } interface Empty { } interface GetEventRequest { /** * ID of the event to retrieve. * * Min: 36 characters * Max: 250 characters * @minLength 36 * @maxLength 250 */ eventId: string | null; /** * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) * for calculating `adjustedStart` and `adjustedEnd`. For example, * `America/New_York` or `UTC`. * * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/rest/business-management/site-properties/properties/get-site-properties). */ timeZone?: string | null; /** * Information about which fields containing personal data to return. Refer to the * [permissions article](https://dev.wix.com/docs/rest/business-management/calendar/permissions) * for more information. * * Supported values: * + `PI_FIELDS`: Returns all fields with personal data. Your app must have `Read Calendars - Including PI` or `Manage Calendars` permission scope. * + `OWN_PI_FIELDS`: Returns only fields containing your own personal data. * * Max: 1 field * Default: No personal data is returned. * @maxSize 1 */ fields?: RequestedFieldsWithLiterals[]; } declare enum RequestedFields { /** Returns all fields with personal data. Your app must have `Read Calendars - Including PI` or `Manage Calendars` permission scope. */ PI_FIELDS = "PI_FIELDS", /** Returns only fields containing your own personal data. */ OWN_PI_FIELDS = "OWN_PI_FIELDS" } /** @enumType */ type RequestedFieldsWithLiterals = RequestedFields | 'PI_FIELDS' | 'OWN_PI_FIELDS'; interface GetEventResponse { /** Retrieved event. */ event?: Event; } interface ListEventsRequest { /** * IDs of the events to retrieve. * * Min: 1 event ID * Max: 100 event IDs * @minSize 1 * @maxSize 100 * @minLength 36 * @maxLength 250 */ eventIds: string[]; /** * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) * for calculating `adjustedStart` and `adjustedEnd`. For example, * `America/New_York` or `UTC`. * * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/rest/business-management/site-properties/properties/get-site-properties). */ timeZone?: string | null; /** * Information about which fields containing personal data to return. Refer to the * [permissions article](https://dev.wix.com/docs/rest/business-management/calendar/permissions) * for more information. * * Supported values: * + `PI_FIELDS`: Returns all fields with personal data. Your app must have `Read Calendars - Including PI` or `Manage Calendars` permission scope. * + `OWN_PI_FIELDS`: Returns only fields containing your own personal data. * * Max: 1 field * Default: No personal data is returned. * @maxSize 1 */ fields?: RequestedFieldsWithLiterals[]; } interface ListEventsResponse { /** Retrieved events matching the provided IDs. */ events?: Event[]; } interface QueryEventsRequest { /** * Local start date and time from which events are returned in * [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format. For example, * `2024-01-30T13:30:00`. * * Events that start before the `fromLocalDate` but end after it are included in * the results. Must be earlier than `toLocalDate` unless the sort order is * descending. * @format LOCAL_DATE_TIME */ fromLocalDate?: string | null; /** * Local end date and time up to which events are returned in * [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format. For example, * `2024-01-30T13:30:00`. * * Events that start before `toLocalDate` but end after it are included in the * results. Must be later than `fromLocalDate` unless the sort order is * descending. * @format LOCAL_DATE_TIME */ toLocalDate?: string | null; /** * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) * for `fromLocalDate`, `toLocalDate`, and for calculating `adjustedStart` and * `adjustedEnd`. For example, `America/New_York` or `UTC`. * * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/rest/business-management/site-properties/properties/get-site-properties). */ timeZone?: string | null; /** * Query containing filters and paging. * Do not specify filters for start and end dates inside `query.filter`, instead * specify `fromLocalDate` and `toLocalDate`. */ query?: CursorQuery; /** * Filters events based on their `recurrenceType`. * * Max: 5 recurrence types can be specified. * Default: Events with `recurrenceType` of `NONE`, `INSTANCE`, and `EXCEPTION` are returned. * @maxSize 5 */ recurrenceType?: RecurrenceTypeWithLiterals[]; /** * Information about which fields containing personal data to return. Refer to the * [permissions article](https://dev.wix.com/docs/rest/business-management/calendar/permissions) * for more information. * * Supported values: * + `PI_FIELDS`: Returns all fields with personal data. Your app must have `Read Calendars - Including PI` or `Manage Calendars` permission scope. * + `OWN_PI_FIELDS`: Returns only fields containing your own personal data. * * Max: 1 field * Default: No personal data is returned. * @maxSize 1 */ fields?: RequestedFieldsWithLiterals[]; } /** TODO Diverge */ interface CursorQuery extends CursorQueryPagingMethodOneOf { /** Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `filter`. */ cursorPaging?: CursorPaging; /** * Filter object. * See [API Query Language](https://dev.wix.com/docs/rest/articles/get-started/api-query-language) * for more information. * * Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains`. * * Do not specify filters for start and end dates inside `query.filter`, instead * specify `fromLocalDate` and `toLocalDate`. */ filter?: Record | null; /** * Whether to sort events by their start date in ascending order or by their end date in descending order. * Default is start ascending. * @maxSize 1 */ sort?: Sorting[]; } /** @oneof */ interface CursorQueryPagingMethodOneOf { /** Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `filter`. */ cursorPaging?: CursorPaging; } /** TODO Diverge */ interface CursorPaging { /** * Number of events to return. * Defaults to `50`. Maximum `1000`. * @min 1 * @max 1000 */ limit?: number | null; /** * Pointer to the next or previous page in the list of results. * * You can get the relevant cursor token * from the `pagingMetadata` object in the previous call's response. * Not relevant for the first request. */ cursor?: string | null; } interface QueryEventsResponse { /** Retrieved events matching the provided query. */ events?: Event[]; /** Paging metadata. */ pagingMetadata?: CursorPagingMetadata; } /** TODO Diverge */ interface CursorPagingMetadata { /** Number of items returned in the response. */ count?: number | null; /** Use these cursor to paginate between results. [Read more](https://dev.wix.com/api/rest/getting-started/api-query-language#getting-started_api-query-language_cursor-paging). */ cursors?: Cursors; /** * Indicates if there are more results after the current page. * If `true`, another page of results can be retrieved. * If `false`, this is the last page. */ hasNext?: boolean | null; } interface Cursors { /** Cursor pointing to next page in the list of results. */ next?: string | null; } interface ListRecurringEventInstancesHistoryRequest { /** * The ID of the recurring event. * Required, unless `cursorPaging` is provided. * @minLength 64 * @maxLength 64 */ recurringEventId?: string | null; /** * The revision of the recurring event. * Required, unless `cursorPaging` is provided. */ revision?: string | null; /** * Inclusive start date for which events are returned, in ISO-8601 format. * Events that begin at or after the `fromDate` are included in the results. * Required, unless `cursorPaging` is provided. */ fromDate?: Date | null; /** * Exclusive end date for which events are returned, in ISO-8601 format. * Events that begin before the `toDate` are included in the results. * Required, unless `cursorPaging` is provided. */ toDate?: Date | null; /** Optional cursor pointing to the next page of events. */ cursorPaging?: CursorPaging; } interface ListRecurringEventInstancesHistoryResponse { /** The recurring event instances. */ recurringEventInstances?: Event[]; /** Paging metadata. */ pagingMetadata?: CursorPagingMetadata; } interface CreateEventRequest { /** Event to create. */ event: Event; /** * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) * for calculating `adjustedStart` and `adjustedEnd`. For example, * `America/New_York` or `UTC`. * * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/rest/business-management/site-properties/properties/get-site-properties). */ timeZone?: string | null; /** * Idempotency key guaranteeing that you don't create the same event more than once. * Must be a valid UUID/GUID, for example `550e8400-e29b-41d4-a716-446655440000`. * @format GUID */ idempotencyKey?: string | null; } interface CreateEventResponse { /** Created event. */ event?: Event; } interface BulkCreateEventRequest { /** * Events to create. * @minSize 1 * @maxSize 50 */ events: MaskedEvent[]; /** * Whether to return created events. * * Default: `false`. */ returnEntity?: boolean | null; /** * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) * for calculating `adjustedStart` and `adjustedEnd`. For example, * `America/New_York` or `UTC`. * * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/rest/business-management/site-properties/properties/get-site-properties). */ timeZone?: string | null; } interface MaskedEvent { /** Event to create. */ event?: Event; } interface BulkCreateEventResponse { /** The result for each event, containing the event and whether the action was successful. */ results?: BulkEventResult[]; /** Total successes and failures. */ bulkActionMetadata?: BulkActionMetadata; } interface BulkEventResult { /** Whether the requested action was successful. */ itemMetadata?: ItemMetadata; /** The event. */ item?: Event; } interface ItemMetadata { /** * Event ID. * Should always be available, unless it's impossible (for example, when failing to create an event). */ id?: string | null; /** Index of the item within the request array, for correlation between request and response items. */ originalIndex?: number; /** * Whether the requested action was successful for this event. * When `false`, the `error` field is populated. */ success?: boolean; /** Details about the error in case of failure. */ error?: ApplicationError; } interface ApplicationError { /** Error code. */ code?: string; /** Description of the error. */ description?: string; /** Data related to the error. */ data?: Record | null; } interface BulkActionMetadata { /** Number of events that were successfully processed. */ totalSuccesses?: number; /** Number of events that couldn't be processed. */ totalFailures?: number; } interface UpdateEventRequest { /** Event to update. */ event: Event; /** * Information about whether participants of the updated event are notified and * the message they receive. */ participantNotification?: ParticipantNotification; /** * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) * for calculating `adjustedStart` and `adjustedEnd`. For example, * `America/New_York` or `UTC`. * * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/rest/business-management/site-properties/properties/get-site-properties). */ timeZone?: string | null; } interface UpdateEventResponse { /** Updated event. */ event?: Event; } interface BulkUpdateEventRequest { /** * Events to update. * * Min: 1 event * Max: 50 events * @minSize 1 * @maxSize 50 */ events: BulkUpdateEventRequestMaskedEvent[]; /** * Whether to return the updated events. * * Default: `false` */ returnEntity?: boolean | null; /** * Information about whether participants of the updated event are notified and * the message they receive. */ participantNotification?: ParticipantNotification; /** * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) * for calculating `adjustedStart` and `adjustedEnd`. For example, * `America/New_York` or `UTC`. * * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/rest/business-management/site-properties/properties/get-site-properties). */ timeZone?: string | null; } interface BulkUpdateEventRequestMaskedEvent { /** Event to update. */ event?: Event; } interface BulkUpdateEventResponse { /** The result for each event, containing the event and whether the action was successful. */ results?: BulkEventResult[]; /** Total successes and failures. */ bulkActionMetadata?: BulkActionMetadata; } interface UpdateEventParticipantsRequest { /** * ID of the event to update. * * Min: 36 characters * Max: 250 characters * @minLength 36 * @maxLength 250 */ eventId?: string | null; /** The participants to update. */ participants?: Participants; } interface UpdateEventParticipantsResponse { /** Updated event. */ event?: Event; } interface RestoreEventDefaultsRequest { /** * ID of the event for which to restore default values. * @minLength 36 * @maxLength 250 */ eventId: string | null; /** * Fields for which to restore default values. * * `TIME` restores default values for `start` and `end`. * * Min: 1 field * @minSize 1 */ fields: FieldWithLiterals[]; /** * Information about whether participants of the updated event are notified and * the message they receive. */ participantNotification?: ParticipantNotification; /** * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) * for calculating `adjustedStart` and `adjustedEnd`. For example, * `America/New_York` or `UTC`. * * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/rest/business-management/site-properties/properties/get-site-properties). */ timeZone?: string | null; } interface RestoreEventDefaultsResponse { /** Updated event. */ event?: Event; } interface SplitRecurringEventRequest { /** * ID of the `MASTER` event to split. * @minLength 36 * @maxLength 250 */ recurringEventId: string | null; /** * Local date and time at which the `MASTER` event is split in * [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format. For example, * `2025-03-11T09:00:00`. * Must be a future date that's after the `start` date of the next `INSTANCE` or * `EXCEPTION` event in the series. Additionally, there must be another * `INSTANCE` or `EXCEPTION` event following this next event, as the changes * wouldn't affect any event without a subsequent occurrence. * @format LOCAL_DATE_TIME */ splitLocalDate: string | null; /** * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) * for calculating `adjustedStart` and `adjustedEnd`. For example, * `America/New_York` or `UTC`. * * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/rest/business-management/site-properties/properties/get-site-properties). */ timeZone?: string | null; } interface SplitRecurringEventResponse { /** Original `MASTER` event that was shortened. */ updatedRecurringEventEndingBeforeSplit?: Event; /** New `MASTER` event starting with the first event after the split date. */ newRecurringEventStartingFromSplit?: Event; } interface CancelEventRequest { /** * ID of the event to cancel. * @minLength 36 * @maxLength 250 */ eventId: string | null; /** * Information about whether participants of the canceled event are notified and * the message they receive. */ participantNotification?: ParticipantNotification; /** * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) * for calculating `adjustedStart` and `adjustedEnd`. For example, * `America/New_York` or `UTC`. * * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/rest/business-management/site-properties/properties/get-site-properties). */ timeZone?: string | null; } interface CancelEventResponse { /** Canceled event. */ event?: Event; } interface BulkCancelEventRequest { /** * IDs of the events to cancel. * @minSize 1 * @maxSize 50 */ eventIds: string[]; /** * Whether to return the canceled events. * * Default: `false` */ returnEntity?: boolean | null; /** * Information about whether participants of the canceled events are notified and * the message they receive. */ participantNotification?: ParticipantNotification; /** * Time zone in [IANA tz database format](https://en.wikipedia.org/wiki/Tz_database) * for calculating `adjustedStart` and `adjustedEnd`. For example, * `America/New_York` or `UTC`. * * Default: `timeZone` specified in the business [site properties](https://dev.wix.com/docs/rest/business-management/site-properties/properties/get-site-properties). */ timeZone?: string | null; } interface BulkCancelEventResponse { /** The result for each event, containing the event and whether the action was successful. */ results?: BulkEventResult[]; /** Total successes and failures. */ bulkActionMetadata?: BulkActionMetadata; } /** @docsIgnore */ type CancelEventApplicationErrors = { code?: 'EVENT_ALREADY_CANCELLED'; description?: string; data?: Record; }; /** @docsIgnore */ type BulkCancelEventApplicationErrors = { code?: 'EVENT_ALREADY_CANCELLED'; description?: string; data?: Record; }; type __PublicMethodMetaInfo = { getUrl: (context: any) => string; httpMethod: K; path: string; pathParams: M; __requestType: T; __originalRequestType: S; __responseType: Q; __originalResponseType: R; }; declare function listEventsByContactId(): __PublicMethodMetaInfo<'GET', { contactId: string; }, ListEventsByContactIdRequest$1, ListEventsByContactIdRequest, ListEventsByContactIdResponse$1, ListEventsByContactIdResponse>; declare function listEventsByMemberId(): __PublicMethodMetaInfo<'GET', { memberId: string; }, ListEventsByMemberIdRequest$1, ListEventsByMemberIdRequest, ListEventsByMemberIdResponse$1, ListEventsByMemberIdResponse>; declare function getEvent(): __PublicMethodMetaInfo<'GET', { eventId: string; }, GetEventRequest$1, GetEventRequest, GetEventResponse$1, GetEventResponse>; declare function listEvents(): __PublicMethodMetaInfo<'GET', {}, ListEventsRequest$1, ListEventsRequest, ListEventsResponse$1, ListEventsResponse>; declare function queryEvents(): __PublicMethodMetaInfo<'POST', {}, QueryEventsRequest$1, QueryEventsRequest, QueryEventsResponse$1, QueryEventsResponse>; declare function createEvent(): __PublicMethodMetaInfo<'POST', {}, CreateEventRequest$1, CreateEventRequest, CreateEventResponse$1, CreateEventResponse>; declare function bulkCreateEvent(): __PublicMethodMetaInfo<'POST', {}, BulkCreateEventRequest$1, BulkCreateEventRequest, BulkCreateEventResponse$1, BulkCreateEventResponse>; declare function updateEvent(): __PublicMethodMetaInfo<'PATCH', { eventId: string; }, UpdateEventRequest$1, UpdateEventRequest, UpdateEventResponse$1, UpdateEventResponse>; declare function bulkUpdateEvent(): __PublicMethodMetaInfo<'POST', {}, BulkUpdateEventRequest$1, BulkUpdateEventRequest, BulkUpdateEventResponse$1, BulkUpdateEventResponse>; declare function restoreEventDefaults(): __PublicMethodMetaInfo<'POST', { eventId: string; }, RestoreEventDefaultsRequest$1, RestoreEventDefaultsRequest, RestoreEventDefaultsResponse$1, RestoreEventDefaultsResponse>; declare function splitRecurringEvent(): __PublicMethodMetaInfo<'POST', { recurringEventId: string; }, SplitRecurringEventRequest$1, SplitRecurringEventRequest, SplitRecurringEventResponse$1, SplitRecurringEventResponse>; declare function cancelEvent(): __PublicMethodMetaInfo<'POST', { eventId: string; }, CancelEventRequest$1, CancelEventRequest, CancelEventResponse$1, CancelEventResponse>; declare function bulkCancelEvent(): __PublicMethodMetaInfo<'POST', {}, BulkCancelEventRequest$1, BulkCancelEventRequest, BulkCancelEventResponse$1, BulkCancelEventResponse>; export { type AccountInfo as AccountInfoOriginal, type ActionEvent as ActionEventOriginal, type AddressHint as AddressHintOriginal, type Address as AddressOriginal, type ApplicationError as ApplicationErrorOriginal, type BulkActionMetadata as BulkActionMetadataOriginal, type BulkCancelEventApplicationErrors as BulkCancelEventApplicationErrorsOriginal, type BulkCancelEventRequest as BulkCancelEventRequestOriginal, type BulkCancelEventResponse as BulkCancelEventResponseOriginal, type BulkCreateEventRequest as BulkCreateEventRequestOriginal, type BulkCreateEventResponse as BulkCreateEventResponseOriginal, type BulkEventResult as BulkEventResultOriginal, type BulkUpdateEventRequestMaskedEvent as BulkUpdateEventRequestMaskedEventOriginal, type BulkUpdateEventRequest as BulkUpdateEventRequestOriginal, type BulkUpdateEventResponse as BulkUpdateEventResponseOriginal, type BusinessSchedule as BusinessScheduleOriginal, type CancelEventApplicationErrors as CancelEventApplicationErrorsOriginal, type CancelEventRequest as CancelEventRequestOriginal, type CancelEventResponse as CancelEventResponseOriginal, type Categories as CategoriesOriginal, type ChangeContext as ChangeContextOriginal, type ChangeContextPayloadOneOf as ChangeContextPayloadOneOfOriginal, type CommonCursorPagingMetadata as CommonCursorPagingMetadataOriginal, type CommonCursorPaging as CommonCursorPagingOriginal, type CommonCursors as CommonCursorsOriginal, type CommonIdentificationDataIdOneOf as CommonIdentificationDataIdOneOfOriginal, type CommonIdentificationData as CommonIdentificationDataOriginal, type ConferencingDetails as ConferencingDetailsOriginal, type ConsentPolicy as ConsentPolicyOriginal, type CreateEventRequest as CreateEventRequestOriginal, type CreateEventResponse as CreateEventResponseOriginal, type CursorPagingMetadata as CursorPagingMetadataOriginal, type CursorPaging as CursorPagingOriginal, type CursorQuery as CursorQueryOriginal, type CursorQueryPagingMethodOneOf as CursorQueryPagingMethodOneOfOriginal, type Cursors as CursorsOriginal, DayOfWeek as DayOfWeekOriginal, type DayOfWeekWithLiterals as DayOfWeekWithLiteralsOriginal, Day as DayOriginal, type DayWithLiterals as DayWithLiteralsOriginal, type DomainEventBodyOneOf as DomainEventBodyOneOfOriginal, type DomainEvent as DomainEventOriginal, type Empty as EmptyOriginal, type EntityCreatedEvent as EntityCreatedEventOriginal, type EntityDeletedEvent as EntityDeletedEventOriginal, type EntityUpdatedEvent as EntityUpdatedEventOriginal, type EventCancelled as EventCancelledOriginal, type Event as EventOriginal, type EventUpdatedWithMetadata as EventUpdatedWithMetadataOriginal, type ExtendedFields as ExtendedFieldsOriginal, Field as FieldOriginal, type FieldWithLiterals as FieldWithLiteralsOriginal, Frequency as FrequencyOriginal, type FrequencyWithLiterals as FrequencyWithLiteralsOriginal, type GeoCoordinates as GeoCoordinatesOriginal, type GetEventRequest as GetEventRequestOriginal, type GetEventResponse as GetEventResponseOriginal, type IdentificationDataIdOneOf as IdentificationDataIdOneOfOriginal, type IdentificationData as IdentificationDataOriginal, IdentityType as IdentityTypeOriginal, type IdentityTypeWithLiterals as IdentityTypeWithLiteralsOriginal, type ItemMetadata as ItemMetadataOriginal, type ListEventsByContactIdRequest as ListEventsByContactIdRequestOriginal, type ListEventsByContactIdResponse as ListEventsByContactIdResponseOriginal, type ListEventsByMemberIdRequest as ListEventsByMemberIdRequestOriginal, type ListEventsByMemberIdResponse as ListEventsByMemberIdResponseOriginal, type ListEventsRequest as ListEventsRequestOriginal, type ListEventsResponse as ListEventsResponseOriginal, type ListRecurringEventInstancesHistoryRequest as ListRecurringEventInstancesHistoryRequestOriginal, type ListRecurringEventInstancesHistoryResponse as ListRecurringEventInstancesHistoryResponseOriginal, type Locale as LocaleOriginal, type Location as LocationOriginal, LocationType as LocationTypeOriginal, type LocationTypeWithLiterals as LocationTypeWithLiteralsOriginal, type MaskedEvent as MaskedEventOriginal, type MessageEnvelope as MessageEnvelopeOriginal, type Multilingual as MultilingualOriginal, type OnlineMeetingInfo as OnlineMeetingInfoOriginal, type ParticipantNotification as ParticipantNotificationOriginal, type Participant as ParticipantOriginal, type Participants as ParticipantsOriginal, ParticipantsStatus as ParticipantsStatusOriginal, type ParticipantsStatusWithLiterals as ParticipantsStatusWithLiteralsOriginal, type Permission as PermissionOriginal, PlacementType as PlacementTypeOriginal, type PlacementTypeWithLiterals as PlacementTypeWithLiteralsOriginal, type PropertiesChange as PropertiesChangeOriginal, type Properties as PropertiesOriginal, type Provider as ProviderOriginal, type ProviderProviderInfoOneOf as ProviderProviderInfoOneOfOriginal, ProviderType as ProviderTypeOriginal, type ProviderTypeWithLiterals as ProviderTypeWithLiteralsOriginal, type QueryEventsRequest as QueryEventsRequestOriginal, type QueryEventsResponse as QueryEventsResponseOriginal, type RecurrenceRule as RecurrenceRuleOriginal, RecurrenceType as RecurrenceTypeOriginal, type RecurrenceTypeWithLiterals as RecurrenceTypeWithLiteralsOriginal, type RecurringEventSplit as RecurringEventSplitOriginal, RequestedFields as RequestedFieldsOriginal, type RequestedFieldsWithLiterals as RequestedFieldsWithLiteralsOriginal, ResolutionMethod as ResolutionMethodOriginal, type ResolutionMethodWithLiterals as ResolutionMethodWithLiteralsOriginal, type Resource as ResourceOriginal, type RestoreEventDefaultsRequest as RestoreEventDefaultsRequestOriginal, type RestoreEventDefaultsResponse as RestoreEventDefaultsResponseOriginal, type RestoreInfo as RestoreInfoOriginal, Role as RoleOriginal, type RoleWithLiterals as RoleWithLiteralsOriginal, type SiteCloned as SiteClonedOriginal, type SiteCreated as SiteCreatedOriginal, type SitePropertiesEvent as SitePropertiesEventOriginal, type SitePropertiesNotification as SitePropertiesNotificationOriginal, SortOrder as SortOrderOriginal, type SortOrderWithLiterals as SortOrderWithLiteralsOriginal, type Sorting as SortingOriginal, type SpecialHourPeriod as SpecialHourPeriodOriginal, type SplitRecurringEventRequest as SplitRecurringEventRequestOriginal, type SplitRecurringEventResponse as SplitRecurringEventResponseOriginal, Status as StatusOriginal, type StatusWithLiterals as StatusWithLiteralsOriginal, type SupportedLanguage as SupportedLanguageOriginal, type TimePeriod as TimePeriodOriginal, type Translation as TranslationOriginal, Transparency as TransparencyOriginal, type TransparencyWithLiterals as TransparencyWithLiteralsOriginal, Type as TypeOriginal, type TypeWithLiterals as TypeWithLiteralsOriginal, type UpdateEventParticipantsRequest as UpdateEventParticipantsRequestOriginal, type UpdateEventParticipantsResponse as UpdateEventParticipantsResponseOriginal, type UpdateEventRequest as UpdateEventRequestOriginal, type UpdateEventResponse as UpdateEventResponseOriginal, type UpdateEventsWithFixedBusinessResourceIdRequest as UpdateEventsWithFixedBusinessResourceIdRequestOriginal, type UpdateEventsWithFixedBusinessResourceIdResponse as UpdateEventsWithFixedBusinessResourceIdResponseOriginal, type UpdateScheduleWithFixedBusinessResourceIdRequest as UpdateScheduleWithFixedBusinessResourceIdRequestOriginal, type UpdateScheduleWithFixedBusinessResourceIdResponse as UpdateScheduleWithFixedBusinessResourceIdResponseOriginal, WebhookIdentityType as WebhookIdentityTypeOriginal, type WebhookIdentityTypeWithLiterals as WebhookIdentityTypeWithLiteralsOriginal, type ZonedDate as ZonedDateOriginal, type __PublicMethodMetaInfo, bulkCancelEvent, bulkCreateEvent, bulkUpdateEvent, cancelEvent, createEvent, getEvent, listEvents, listEventsByContactId, listEventsByMemberId, queryEvents, restoreEventDefaults, splitRecurringEvent, updateEvent };