About the Conferencing Provider Service Plugin

The Conferencing Provider service plugin lets you integrate a video conferencing provider, such as Zoom or Google Meet, with Wix conferencing. You implement the plugin, and Wix calls it to connect a resource to your provider and to create and manage conferences on its behalf. A resource is identified by an opaque ID that you key connections by. It's the ID of a Bookings resource, such as the resource of a staff member or the site's default business resource.

Your implementation owns connection state: you store connections and any access tokens, and Wix reads the current state from you on demand. Wix doesn't store connections or conferences itself.

With the Conferencing Provider service plugin, you can:

  • Connect a resource to your provider using OAuth or credentials.
  • Create, update, retrieve, and delete conferences in your provider for a connected resource.
  • Report a resource's connections and their status back to Wix.
  • Disconnect a resource from your provider.

How this service plugin works

Wix calls your implementation when a user connects or disconnects a conferencing account for a resource, and when a conference needs to be created, updated, retrieved, or deleted for a connected resource. Calls are synchronous, and Wix waits for your response before continuing. The connect methods Wix calls depend on the connection methods you advertise in your configuration, and Wix calls Update Conference only when your configuration sets updateSupported = true.

Wix passes the conference details you return, such as the join URL and password, to the Wix product that requested the conference, through the Conferencing API. Wix reads your connections through List Connections to show connection status. If your implementation returns an error, Wix surfaces it to the caller. The exception is List Connections: if it fails, Wix leaves your connections out of the results and still returns the connections of other providers.

Context provided with each call

Wix automatically includes context information with every service plugin call. Use this context to tailor your implementation's behavior to the site, user, and scenario.

ContextDescription
Site identifiersUnique identifiers for the Wix site and instance making the request.
Locale/LanguageThe language and regional settings of the current user session.
CurrencyThe currency configured for the site.
IdentityThe type and ID of the entity making the request (site member, visitor, or app).

Get started

To enable Wix to communicate with your app:

  1. Go to Extensions in your app's dashboard.

  2. Click Create Extension in the top right.

  3. Find Conferencing Provider and click Create.

  4. Provide the following configuration in the JSON editor and then click Save.

    NameTypeDescription
    deploymentUristringRequired. Base URI where your implementation is deployed. Wix appends each method path to this base URI. For example, to call Create Conference at https://my-conferencing.com/v1/create-conference, the base URI is https://my-conferencing.com/.
    displayNamestringName shown to users. For example, Zoom.
    connectionMethodsarrayConnection methods your provider supports: OAUTH, CREDENTIALS, or both. Wix calls only the connect methods matching these values.
    updateSupportedbooleanWhether your provider supports updating conferences. When false, Wix doesn't call Update Conference.
    termsUrl, privacyUrl, iconUrl, supportUrlstringTerms of service, privacy policy, icon, and support URLs shown to users.

Get started

Self-hosted implementations:

To enable Wix to communicate with your app:

  1. Go to Extensions in your app's dashboard.

  2. Click Create Extension in the top right.

  3. Find Conferencing Provider and click Create.

  4. Provide the following configuration in the JSON editor and then click Save.

    NameTypeDescription
    deploymentUristringRequired. Base URI where your implementation is deployed. Wix appends each method path to this base URI. For example, to call Create Conference at https://my-conferencing.com/v1/create-conference, the base URI is https://my-conferencing.com/.
    displayNamestringName shown to users. For example, Zoom.
    connectionMethodsarrayConnection methods your provider supports: OAUTH, CREDENTIALS, or both. Wix calls only the connect methods matching these values.
    updateSupportedbooleanWhether your provider supports updating conferences. When false, Wix doesn't call Update Conference.
    termsUrl, privacyUrl, iconUrl, supportUrlstringTerms of service, privacy policy, icon, and support URLs shown to users.

Define handler functions using conferencingProvider.provideHandlers():

FunctionRequired
createConference()Yes
getConference()Yes
deleteConference()Yes
listConnections()Yes
markConnectionAsDisconnected()Yes
updateConference()Only if updateSupported is true
connectByOAuth()Only if connectionMethods includes OAUTH
connectByCredentials()Only if connectionMethods includes CREDENTIALS

Self-hosted: Basic code structure

Copy

CLI implementations:

Learn how to implement a service plugin with the CLI and the SDK.

Define handler functions using conferencingProvider.provideHandlers():

FunctionRequired
createConference()Yes
getConference()Yes
deleteConference()Yes
listConnections()Yes
markConnectionAsDisconnected()Yes
updateConference()Only if updateSupported is true
connectByOAuth()Only if connectionMethods includes OAUTH
connectByCredentials()Only if connectionMethods includes CREDENTIALS

CLI: Basic code structure

Copy

Requirements and constraints

Your implementation should meet the following expectations:

  • Respond promptly to every call, since Wix calls your implementation synchronously and waits for the response.
  • Be able to look up a connection by resourceId and a conference by the id you returned from Create Conference.
  • Keep your stored connections accurate, since List Connections is Wix's source of truth for connection state.

There are no Wix-imposed rate limits or quotas on this service plugin. Any limits are those of your underlying provider.

Error handling

Return the defined errors when the matching condition occurs, so Wix can respond appropriately. For example, return the resource-not-connected error when a request targets a resource that has no active connection in your system.

Before you begin

It's important to note the following points before starting to code:

  • Implement only the connect methods that match the connectionMethods you advertise. Wix doesn't call a connect method for a connection method you don't advertise.
  • Your implementation owns connections and tokens. Wix doesn't persist them, so List Connections must return your current state.
  • For OAuth, your implementation owns the full flow: return the OAuth URL, host the provider callback, create the connection, and redirect the user back to Wix's redirectUrl with ?connectionId or ?error.
  • Treat resourceId as a stable, opaque key for storing and looking up connections.
  • Set connectedDate on every connection you store. Wix ignores connections without it.
  • When a conference is requested without naming a provider, Wix uses the resource's connection with the most recent connectedDate, across all providers on the site.

Use cases

Terminology

  • Service plugin: The contract you implement, which Wix calls to connect resources and manage conferences with your provider.
  • Connection: A link between a resource and an account in your provider. Your implementation stores connections.
  • Connection method: How a connection is established: OAUTH or CREDENTIALS.
  • Conference: A video meeting your provider creates and stores. Wix holds only the details you return.
  • Resource: The entity a conference is created for. Identified by resourceId.
  • Connection status: CONNECTED (usable), DISCONNECTED (intentionally disconnected), or ERROR (was connected but now broken and needs reconnection).

Last updated: 5 November 2026

Did this help?