The Events Views API offers you webhooks that let you easily keep track of the
next year in a schedule. Subscribing to the view gives you details about changes
to all single-occurrence, EXCEPTION
, and INSTANCE
events
at least one year into the future. Periodically, the view is extended.
With the Events Views API, you can:
EXCEPTION
, or INSTANCE
event is created or updated.For more in-depth scheduling management, see:
It’s important to note the following points before starting to code:
MASTER
events aren't included in the webhooks of the Events View API.EXCEPTION
, and INSTANCE
events at least
one year into the future.The eventsView
object gives you details about how far into the future you can
easily get a complete picture of a calendar. Subscribing to the event view
webhooks lets you keep track of a calendar's single-occurrence, EXCEPTION
, and
INSTANCE
events at least one year into the future.
End date of the event view in YYYY-MM-DDThh:mm:ss.sssZ
format.
Number of days from now until the event view ends.
{
"endDate": "2025-10-04T00:00:00Z",
"futureDurationInDays": 380
}
This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Retrieves the current event view.
Doesn’t return details about events within the view. You can use
Query Events,
providing eventsView.endDate
as toLocalDate
to retrieve the
events.
Retrieved event view.
Retrieves the view’s end date for the calendar view.
curl -X GET \
'https://www.wixapis.com/calendar/v3/events/view' \
-H 'Content-Type: application/json' \
-H 'Authorization: <AUTH>'
{
"eventsView": {
"endDate": "2025-10-04T00:00:00Z",
"futureDurationInDays": 380
}
}
This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Triggered when the current event view is extended.
Doesn’t include details about existing events added to the view due to the extension. To receive updates about those events, subscribe to Events View Projection Updated.
The event view is periodically extended by Wix Calendars, you can't manually extend it.
Unique event ID. Allows clients to ignore duplicate webhooks.
Fully qualified domain name of the entity associated with the event. Expected wix.calendar.v3.events_view
.
Event name. Expected extended
.
ID of the entity associated with the event.
Event timestamp.
Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).
If present, indicates the action that triggered the event.
Event information.
The data payload will include the following as an encoded JWT:
{
"data": {
"eventType": "wix.calendar.v3.events_view_extended",
"instanceId": "<app-instance-id>",
"data": "<stringified-JSON>",
// The identity field is sent as a stringified JSON
"identity": {
"identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP
"anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR
"memberId": "<memberId>", // in case of MEMBER
"wixUserId": "<wixUserId>", // in case of WIX_USER
"appId": "<appId>" // in case of APP
}
}
}
{
"id": "44ebc978-5acd-4cb1-9e35-1f86c28a522a",
"entityFqdn": "wix.calendar.v3.events_view",
"slug": "extended",
"entityId": "5976b723-b9b0-4355-bbae-6ff0eda34460",
"actionEvent": {
"extendedEndDate": "2025-10-09T00:00:00Z"
},
"eventTime": "2024-09-24T10:44:18.185272128Z",
"triggeredByAnonymizeRequest": false
}
This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Triggered when an event is added to, removed from, or updated within the current event view. This includes cases when:
Unique event ID. Allows clients to ignore duplicate webhooks.
Fully qualified domain name of the entity associated with the event. Expected wix.calendar.v3.events_view
.
Event name. Expected projection_updated
.
ID of the entity associated with the event.
Event timestamp.
Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).
If present, indicates the action that triggered the event.
Event information.
The data payload will include the following as an encoded JWT:
{
"data": {
"eventType": "wix.calendar.v3.events_view_projection_updated",
"instanceId": "<app-instance-id>",
"data": "<stringified-JSON>",
// The identity field is sent as a stringified JSON
"identity": {
"identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP
"anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR
"memberId": "<memberId>", // in case of MEMBER
"wixUserId": "<wixUserId>", // in case of WIX_USER
"appId": "<appId>" // in case of APP
}
}
}
{
"id": "79cef953-0a0f-4ac9-89ea-22067c0f2e09",
"entityFqdn": "wix.calendar.v3.events_view",
"slug": "projection_updated",
"entityId": "63dd0f90-21ac-44ad-baa8-bfac964bee0f",
"actionEvent": {
"body": {
"eventAddedOrUpdated": {
"event": {
"id": "10LYaoIDRso8lqq8LOipCexT6zGC75sye8coEGvmZm4pJw3YyZJTWYfK0uvlC1fpTlDtRIsmhSmo1Y9eKla5VRhwx60ClPGXOl7keejlEvWxlX40v3qEyIq",
"scheduleId": "a96c3c31-c9fc-495d-b55b-40c694fe196c",
"externalScheduleId": "0cc230a0-9158-4c5e-a5da-9161bed0f6b1",
"scheduleName": "Pump It Up",
"type": "CLASS",
"status": "CONFIRMED",
"title": "Pump It Up",
"start": {
"localDate": "2024-10-16T13:00:00",
"timeZone": "Europe/Dublin",
"utcDate": "2024-10-16T12:00:00Z"
},
"end": {
"localDate": "2024-10-16T14:00:00",
"timeZone": "Europe/Dublin",
"utcDate": "2024-10-16T13:00:00Z"
},
"timeZone": "Europe/Dublin",
"recurrenceType": "EXCEPTION",
"recurrenceRule": {
"frequency": "WEEKLY",
"interval": 1,
"days": ["WEDNESDAY"]
},
"recurringEventId": "a96c3c31c9fc495db55b40c694fe196cb180373a5eb045a391e669fd19263666",
"transparency": "OPAQUE",
"location": {
"type": "BUSINESS"
},
"resources": [
{
"id": "76570209-101f-409b-af97-b445bdb63125",
"name": "Staff Member #1",
"type": "1cd44cf8-756f-41c3-bd90-3e2ffcaf1155",
"scheduleId": "e73bf671-bb59-4488-8d1f-afcf0ebe8d27",
"transparency": "OPAQUE",
"permissionRole": "WRITER"
}
],
"totalCapacity": 40,
"remainingCapacity": 40,
"inheritedFields": [
"TITLE",
"CAPACITY",
"LOCATION",
"TIME_ZONE",
"CONFERENCING_DETAILS",
"RESOURCES",
"PARTICIPANTS"
],
"appId": "13d21c63-b5ec-5912-8397-c3a5ddb27a97",
"permissions": [],
"revision": "5",
"createdDate": "2024-10-14T09:51:36.176Z",
"updatedDate": "2024-10-14T09:51:36.191Z"
},
"previousEvent": {
"id": "10LYaoIDRso8lqq8LOipCexT6zGC75sye8coEGvmZm4pJw3YyZJTWYfK0uvlC1fpTlDtRIsmhSmo1Y9eKla5VRhwx60ClPGXOl7keejlEvWxlX40v3qEyIq",
"scheduleId": "a96c3c31-c9fc-495d-b55b-40c694fe196c",
"externalScheduleId": "0cc230a0-9158-4c5e-a5da-9161bed0f6b1",
"scheduleName": "Pump It Up",
"type": "CLASS",
"status": "CONFIRMED",
"title": "Pump It Up",
"start": {
"localDate": "2024-10-16T12:00:00",
"timeZone": "Europe/Dublin",
"utcDate": "2024-10-16T11:00:00Z"
},
"end": {
"localDate": "2024-10-16T13:00:00",
"timeZone": "Europe/Dublin",
"utcDate": "2024-10-16T12:00:00Z"
},
"timeZone": "Europe/Dublin",
"recurrenceType": "INSTANCE",
"recurrenceRule": {
"frequency": "WEEKLY",
"interval": 1,
"days": ["WEDNESDAY"]
},
"recurringEventId": "a96c3c31c9fc495db55b40c694fe196cb180373a5eb045a391e669fd19263666",
"transparency": "OPAQUE",
"location": {
"type": "BUSINESS"
},
"resources": [
{
"id": "76570209-101f-409b-af97-b445bdb63125",
"name": "Staff Member #1",
"type": "1cd44cf8-756f-41c3-bd90-3e2ffcaf1155",
"scheduleId": "e73bf671-bb59-4488-8d1f-afcf0ebe8d27",
"transparency": "OPAQUE",
"permissionRole": "WRITER"
}
],
"totalCapacity": 40,
"remainingCapacity": 40,
"inheritedFields": [
"TITLE",
"CAPACITY",
"LOCATION",
"TIME_ZONE",
"CONFERENCING_DETAILS",
"RESOURCES",
"PARTICIPANTS",
"TIME"
],
"appId": "13d21c63-b5ec-5912-8397-c3a5ddb27a97",
"permissions": [],
"revision": "3",
"createdDate": "2024-10-06T17:16:36.482Z",
"updatedDate": "2024-10-07T09:29:06.681Z"
}
},
"appId": "13d21c63-b5ec-5912-8397-c3a5ddb27a97"
}
},
"eventTime": "2024-10-14T09:51:36.596163807Z",
"triggeredByAnonymizeRequest": false
}