# Configure Webhooks, Actions, and Triggers import Alert from "react-bootstrap/Alert"; # Configure Webhooks, Actions, and Triggers To allow a third-party voice bot platform to interact programmatically with Zoom Contact Center, the application requires a secure data exchange channel. In this step, we will have to configure a secure, static incoming webhook gateway and map Zoom's built-in VoiceBot Actions and Triggers to handle asynchronous communication. ### Create a Static Incoming Webhook Gateway First, we will have to build the primary secure API gateway that the voice bot platform calls to update active interaction context. 1. In the application configuration workspace, navigate to the **Features** section on the left sidebar and select the **Connect** tab. 2. Select **Incoming Webhooks** and click **Create New Incoming Webhook**. 3. In the configuration window, locate the **Type** dropdown and change it from _REST Hook_ to **Static**. 4. Provide an identifiable name for the webhook gateway (e.g., `VoiceBot Core Data Link`). 5. **Secure the Credentials:** The system will generate a unique **Key** and **Secret**. Copy and securely store these tokens; the bot platform must use them to authenticate all REST calls directed into Zoom. 6. Select an appropriate hashing mechanism under the **Hash Algorithm** dropdown menu (do not leave blank). 7. Toggle the state to **Enable** and save the changes. ![Example of output mapping configuration in the Zoom Marketplace UI](img/docs/contact-center/3p-bot/Static Incoming Webhook.png) ### Configure Built-In Actions (VoiceBot Events) Next, we will have to implement App Actions, which act as plugins to route structured outbound information from Zoom to external systems. 1. Scroll down the application configurations to the **Actions and Triggers** section. 2. Click on the **Action** tab and click **Add Actions**. 3. Choose **Built-in Actions** from the selection prompt. 4. Select **VoiceBot Events** from the standard catalog and click next. 5. In the wizard setup options, proceed through the **Access** and **Form Builder** screens (the default configuration settings are sufficient). 6. When reaching the **Transformations** screen, select the **Static Webhook** provisioned in the previous step (e.g., `VoiceBot Core Data Link`). 7. Click **Finish** to build out the Action pipeline. ![Example of output mapping configuration in the Zoom Marketplace UI](img/docs/contact-center/3p-bot/Built-in Actions.png) ### Configure the Built-In Trigger (VoiceBot All Events) Next, we will have to add App Triggers to automatically notify the application ecosystem when specific milestone events occur within the Zoom Contact Center runtime environment. 1. Under the **Actions and Triggers** workspace, click on the **Triggers** tab. 2. Click **Add Trigger** and select **Built-in Triggers**. 3. Select **VoiceBot All Events** from the baseline catalog list. 4. Advance through the configuration wizard screens, maintaining default values for Access and Form Builder. 5. In the **Transformations** window, select the same **Static Webhook** target created in the first step. 6. Click **Finish** to deploy the active trigger framework. ![Example of output mapping configuration in the Zoom Marketplace UI](img/docs/contact-center/3p-bot/Built-in triggers.png) > **Critical Timing Rule:** When the platform leverages these event workflows, the external voice engine must transmit metadata and event details to Zoom **prior** to executing a `SIP REFER` line transfer. Events delivered after line tear-down cannot be tied back to the customer interaction. ![Example of output mapping configuration in the Zoom Marketplace UI](img/docs/contact-center/3p-bot/transformation.png) ### Generate a Local Test Connection Finally, we will have to deploy a local sandboxed connection of the marketplace application to verify that the configurations render correctly. 1. Navigate to the application's **Local Test** view on the left menu pane. 2. Click **Preview your app listing page**. 3. Select **Add App** and designate the installation boundaries (e.g., _All users on the account_). 4. Click authorize to generate a new instance connection. The system will prompt to supply a **Connection Name**. - _Note:_ This connection name represents the explicit label that customer administrators will select within the Zoom Contact Center visual design widgets. Choose a descriptive label (e.g., `Dialogflow_Voice_Agent`). 5. Verify success by navigating to **Marketplace** → **Manage** → **Added Apps** → **Apps in Development**. Confirm that the target application lists an active **Connections** count of `1`.