> Portal Navigation: > > - Append `.md` to any URL under `https://dev.wix.com/docs/` to get its markdown version. > - Pages are either content pages (article or reference text) or menu pages (a list of links to child pages). > - To get a menu page, truncate any URL to a parent path and append `.md` (e.g. `https://dev.wix.com/docs/sdk.md`, `https://dev.wix.com/docs/sdk/core-modules.md`). > - Top-level index of all portals: https://dev.wix.com/docs/llms.txt > - Full concatenated docs: https://dev.wix.com/docs/llms-full.txt # ListConnections # Package: calendar # Namespace: ExternalCalendarService # Method link: https://dev.wix.com/docs/api-reference/business-solutions/bookings/calendar/external-calendar-v2/list-connections.md ## Permission Scopes: Manage External Calendars: SCOPE.DC-BOOKINGS.MANAGE-EXTERNAL-CALENDARS Manage External Calendars: SCOPE.DC-BOOKINGS.MANAGE-EXTERNAL-CALENDARS ## Introduction Retrieves a list of external calendar connections. --- ## REST API ### Schema ``` Method: listConnections Description: Retrieves a list of external calendar connections. ### Filter You can filter by [schedule GUID](https://dev.wix.com/docs/api-reference/business-management/calendar/schedules-v3/introduction.md). ### Partial success By default, the call fails if details for at least 1 connection can't be retrieved from the external provider. However, you can specify `{"partialFailure": true}` to allow the call to succeed, if details for at least 1 connection can be retrieved. URL: https://www.wixapis.com/bookings/v2/external-calendars/connections Method: GET Method parameters: query param name: partialFailure | type: partialFailure | description: Whether to return a partial list of connections if details can't be retrieved for all connections. Default: `false` query param name: scheduleIds | type: array | description: [Schedule GUIDs](https://dev.wix.com/docs/api-reference/business-management/calendar/schedules-v3/introduction.md) to filter by. Default: Returns all connections. Return type: ListConnectionsResponse - name: connections | type: array | description: Retrieved external calendar connections. - name: id | type: string | description: GUID of the connection between the external calendar and the Wix site. - name: providerId | type: string | description: GUID of the external calendar provider. - name: calendarType | type: CalendarType | description: External calendar type. - enum: - UNDEFINED: There is no information about the external calendar type. - GOOGLE: [Google Calendar](https://developers.google.com/calendar/api/guides/overview). - I_CAL: Apple iCalendar. - OUTLOOK: __Deprecated__. Use `MICROSOFT` instead. - OFFICE_365: __Deprecated__. Use `MICROSOFT` instead. - MICROSOFT: Microsoft Calendar. For example, Office 365 calendar or Outlook calendar. - OTHER: A different type of external calendar, not listed here. - name: scheduleId | type: string | description: GUID of the [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction.md) that's connected to the external calendar. - name: userId | type: string | description: GUID of the [Wix user](https://dev.wix.com/docs/rest/articles/getting-started/about-identities.md#wix-user) to whom the external calendar connection belongs. - name: appId | type: string | description: GUID of the app which created the external calendar connection. - name: externalAccountEmail | type: string | description: Email address associated with the external calendar account. Available only after completed successfully. - name: status | type: Status | description: Connection status. - enum: - UNDEFINED: There is no information about the connection status. - CONNECTED: The external calendar is connected to the Wix [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction.md), but the sync process hasn't started yet. - SYNC_IN_PROGRESS: Sync process is ongoing. - SYNCED: The Wix calendar and the external calendar are in sync. - DISCONNECTED: The external calender has been disconnected from the Wix [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction.md). - ERROR: The calendars sync is in error state. - name: errorReason | type: ErrorReason | description: Reason for the error. Available only if `status` is `ERROR`. - enum: - UNDEFINED: There is no information about the connection error. - TOKEN_REVOKED: The external calendar's access token has been revoked. - EXTERNAL_CALENDAR_CREATION_FAILED: The external calendar couldn't be created. - EXTERNAL_CALENDAR_DELETED: The external calendar was deleted. - name: syncConfig | type: ConnectionSyncConfig | description: Settings about which sync operations are supported. - name: listEventFromCalendars | type: ListEventFromCalendars | description: Configuration for importing events from the external calendar to the Wix site. - ONE-OF: - name: primaryCalendar | type: PrimaryCalendar | description: An empty `primaryCalendar` object indicates that you can import events only from the primary external calendar. Keep in mind that not all external calendar providers support primary calendars. EMPTY-OBJECT {} - name: calendars | type: Calendars | description: You can import events from the list of specified external calendar accounts. The list may include the primary calendar. - name: calendars | type: array | description: - name: id | type: string | description: GUID of the external calendar account. - name: name | type: string | description: Display name of the external calendar account. For example, `Primary` or `Birthdays`. - name: enabled | type: boolean | description: Whether you can call [List Events](https://dev.wix.com/docs/rest/business-solutions/bookings/calendar/external-calendar-v2/list-events.md) to import events from the external calendar to the Wix site. - name: syncToCalendar | type: SyncToCalendar | description: Configuration for exporting events from the Wix site to the external calendar. - ONE-OF: - name: primaryCalendar | type: PrimaryCalendar | description: An empty `primaryCalendar` object indicates that Wix events are exported only to the primary account of the external calendar. - name: dedicatedCalendar | type: DedicatedCalendar | description: An empty `dedicatedCalendar` object indicates that Wix events are exported only to the dedicated account of the external calendar. EMPTY-OBJECT {} - name: enabled | type: boolean | description: Whether Wix [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction.md) are exported to the external calendar. - name: failedProviderIds | type: array | description: List of provider GUIDs for which connection retrieval failed. Returned only if you specify `{"partialFailure": true}`. ``` ### Examples ### List connections by schedule ID ```curl curl -X GET 'https://www.wixapis.com/bookings/v2/external-calendars/connections?scheduleIds=100ef23e-9e92-4293-8e08-d3747537138f' \ -H 'Authorization: ' ``` ### List all connections ```curl curl -X GET 'https://www.wixapis.com/bookings/v2/external-calendars/connections' \ -H 'Authorization: ' ``` --- ## JavaScript SDK ### Schema ``` Method: wixClientAdmin.calendar.ExternalCalendarService.listConnections(options) Description: Retrieves a list of external calendar connections. ### Filter You can filter by [schedule GUID](https://dev.wix.com/docs/api-reference/business-management/calendar/schedules-v3/introduction.md). ### Partial success By default, the call fails if details for at least 1 connection can't be retrieved from the external provider. However, you can specify `{"partialFailure": true}` to allow the call to succeed, if details for at least 1 connection can be retrieved. Method parameters: param name: options | type: ListConnectionsOptions none - name: scheduleIds | type: array | description: [Schedule GUIDs](https://dev.wix.com/docs/api-reference/business-management/calendar/schedules-v3/introduction.md) to filter by. Default: Returns all connections. - name: partialFailure | type: boolean | description: Whether to return a partial list of connections if details can't be retrieved for all connections. Default: `false` Return type: PROMISE - name: connections | type: array | description: Retrieved external calendar connections. - name: _id | type: string | description: GUID of the connection between the external calendar and the Wix site. - name: providerId | type: string | description: GUID of the external calendar provider. - name: calendarType | type: CalendarType | description: External calendar type. - enum: - UNDEFINED: There is no information about the external calendar type. - GOOGLE: [Google Calendar](https://developers.google.com/calendar/api/guides/overview). - I_CAL: Apple iCalendar. - OUTLOOK: __Deprecated__. Use `MICROSOFT` instead. - OFFICE_365: __Deprecated__. Use `MICROSOFT` instead. - MICROSOFT: Microsoft Calendar. For example, Office 365 calendar or Outlook calendar. - OTHER: A different type of external calendar, not listed here. - name: scheduleId | type: string | description: GUID of the [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction.md) that's connected to the external calendar. - name: userId | type: string | description: GUID of the [Wix user](https://dev.wix.com/docs/rest/articles/getting-started/about-identities.md#wix-user) to whom the external calendar connection belongs. - name: appId | type: string | description: GUID of the app which created the external calendar connection. - name: externalAccountEmail | type: string | description: Email address associated with the external calendar account. Available only after completed successfully. - name: status | type: Status | description: Connection status. - enum: - UNDEFINED: There is no information about the connection status. - CONNECTED: The external calendar is connected to the Wix [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction.md), but the sync process hasn't started yet. - SYNC_IN_PROGRESS: Sync process is ongoing. - SYNCED: The Wix calendar and the external calendar are in sync. - DISCONNECTED: The external calender has been disconnected from the Wix [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction.md). - ERROR: The calendars sync is in error state. - name: errorReason | type: ErrorReason | description: Reason for the error. Available only if `status` is `ERROR`. - enum: - UNDEFINED: There is no information about the connection error. - TOKEN_REVOKED: The external calendar's access token has been revoked. - EXTERNAL_CALENDAR_CREATION_FAILED: The external calendar couldn't be created. - EXTERNAL_CALENDAR_DELETED: The external calendar was deleted. - name: syncConfig | type: ConnectionSyncConfig | description: Settings about which sync operations are supported. - name: listEventFromCalendars | type: ListEventFromCalendars | description: Configuration for importing events from the external calendar to the Wix site. - ONE-OF: - name: calendars | type: Calendars | description: You can import events from the list of specified external calendar accounts. The list may include the primary calendar. - name: calendars | type: array | description: - name: _id | type: string | description: GUID of the external calendar account. - name: name | type: string | description: Display name of the external calendar account. For example, `Primary` or `Birthdays`. - name: enabled | type: boolean | description: Whether you can call [List Events](https://dev.wix.com/docs/rest/business-solutions/bookings/calendar/external-calendar-v2/list-events.md) to import events from the external calendar to the Wix site. - name: syncToCalendar | type: SyncToCalendar | description: Configuration for exporting events from the Wix site to the external calendar. - name: enabled | type: boolean | description: Whether Wix [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction.md) are exported to the external calendar. - name: failedProviderIds | type: array | description: List of provider GUIDs for which connection retrieval failed. Returned only if you specify `{"partialFailure": true}`. ``` ### Examples ### List connections by schedule ID (with elevated permissions) ```javascript import { externalCalendars } from '@wix/bookings'; import { auth } from '@wix/essentials'; const elevatedListConnections = auth.elevate(externalCalendars.listConnections); async function listConnections(scheduleIds) { const options = { scheduleIds } const { connections } = await elevatedListConnections(options) return connections } ``` ### List connections by schedule ID ```javascript import {externalCalendars} from '@wix/bookings'; async function listConnections(scheduleIds) { const options = { scheduleIds } const {connections} = await externalCalendars.listConnections(options) return connections } ``` ### listConnections (self-hosted) Self-hosted SDK calls require you to [create a client](https://dev.wix.com/docs/sdk/articles/work-with-the-sdk/about-the-wix-client.md). ```javascript import { createClient } from '@wix/sdk'; import { externalCalendars } from '@wix/bookings'; // Import the auth strategy for the relevant access type // Import the relevant host module if needed const myWixClient = createClient ({ modules: { externalCalendars }, // Include the auth strategy and host as relevant }); async function listConnections(options) { const response = await myWixClient.externalCalendars.listConnections(options); }; ``` ---