--- title: "How to: Configure Multiple Error Messages" slug: "how-to-configure-multiple-error-messages" description: "Learn best practices for error handling in Plug-In components, ensuring users receive clear error messages in your configuration setup." updated: 2026-02-03T15:30:16Z published: 2026-02-03T15:48:58Z canonical: "docs.unqork.io/how-to-configure-multiple-error-messages" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.unqork.io/llms.txt > Use this file to discover all available pages before exploring further. # How to: Configure Multiple Error Messages **UDesigner** Some configurations require layers of remote executes or multiple [Plug-In](https://docs.unqork.io/docs/plug-in-component) component calls. It's a best practice to create error handling for every Plug-In component in your configuration. That way, if an error occurs, your end-user will see the error message. Every Plug-In component needs an error trigger with [Hidden](/v1/docs/hidden-component) components that store the data in the database to carry the error responses to the front-end. Always create error handling for a Plug-In component in the module where that Plug-In component exists. Then, you'll continue the error handling configuration on any module(s). Lastly, you'll bring the error responses to the front-end, completing the assembly line. In this how-to guide, you'll learn how to handle remote execute calls that trigger other calls. Once you learn how this configuration works, you can apply it to any number of calls. Let's look at the two modules in this error handling example: | Module | Description | | --- | --- | | Front-End Remote Execute Module | Your end-users interact with this module by clicking a button that a [Plug-In](/v1/docs/plug-in-component) component. The Plug-In component remote executes to the Back-End API module. > [!NOTE] > Refer to this module as the front-end module. | | Back-End API Module | This module makes the API call using the **Get Submissions API** to retrieve submission data. End-users are unable to view or interact with this module. > [!NOTE] > Refer to this module as the back-end module. | Because there are two calls (one remote execute and one internal), there are two potential places where issues can occur. The goal is to error handle all Plug-In components and configure error messages that display on the front-end module. From there, any error down the line triggers messages for the end-user. The end-user stays informed no matter where the error occurs. Here's how your error message might look in Express View if a remote execute call fails: ![](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Sol_AdvErrorHandling_Front01(2).jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) Here's how your error message might look in Express View if the Get Submissions API call fails: ![](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Sol_AdvErrorHandling_ExtAPI01(1).jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) In a real-life configuration, you can choose to have a generic message. End-users might not know what a remote execute or API does, so use a message that's easy to understand. For this example, each call has a unique error message. Use this approach to test the error handling of both calls. ## Configure the Back-End API Module This back-end module makes the API call. For this use case, use the Get Submissions API call. The front-end module remote executes this back-end module, which fires the API call. If the API call fails, the back-end module tells the front-end module about the failure. The front-end module then fires a pop-up message for the end-user in Express View. This process all happens behind the scenes. ### Configure the API Module An **API** module contains four Panel components to help with the API setup. You can hover over the panelConfig and delete it, as it is not used further in the configuration. To create an API module at the [Application](https://docs.unqork.io/v1/docs/navigating-an-application) level: 1. At the top right of the page, click the **+ Create New** drop-down. 2. Select **Module**. The Create Module modal displays. 3. In the **Module** **Name*** field, enter a unique name for your module. The **Module** **Path*** field populates automatically. 4. From the **Module** **Type*** drop-down, select **API.** > [!TIP] > To learn more about Module Types, view our What Is a Module? article. 5. (Optional) In the **Module** **Description** field, describe the purpose of the API module. 6. (Optional) From the **Tags** drop-down, select any tags you want to add. 7. Click **Create**. #### Configure the Initializer Component Begin by adding an [Initializer](/v1/docs/initializer-component) component to trigger the [Plug-In](/v1/docs/plug-in-component) component that you’ll set up next. 1. In the Module Builder, drag and drop an **Initializer** component inside the `panelInfo` **Panel** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `initPluginGetSubmissions`. 3. From the **Trigger Type** drop-down, select **New Submission** 4. In the **Outputs** table, enter the following: | # | Source | Type | Value | | --- | --- | --- | --- | | 1 | pluginGetSubmissions | trigger | GO | ![A static image displaying the Settings for a new submission trigger with output parameters displayed in a table.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/UD_initPlugGetSubmissions.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 5. Click **Save Component**. #### Configure the Plug-In Component Next, you’ll configure a [Plug-In](/v1/docs/plug-in-component) component to run the **Get Submissions API**. 1. Drag and drop a **Plug-In** component inside the `panelInfo` **Panel** component, below the `initPluginGetSubmissions` **Initializer** component 2. In the **Property ID** and **Canvas Label Text** fields, enter `pluginGetSubmissions`. 3. From the **Internal Services** drop-down, select **List Submissions for Dashboard**. The Data Source URL autopopulates. 4. In the **Inputs** table, enter the following: | | Property ID | Mapping | | --- | --- | --- | | 1 | moduleId | moduleId | | 2 | fields | fields | ![A static image displaying the Configuration settings for a plugin including data source URL and request type.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/UD_Plugin_URL_Inputs.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 5. Click **Save Component**. #### Configure the First Hidden Component Next, configure two Hidden components. The first component stores the fields of the submission data, and the second component stores the module ID of the Front-End Remote Execute module. > [!NOTE] > Because this example is about error handling, you don't have actual submission data. These Hidden components are placeholders for the purpose of this guide. To configure the first Hidden component: 1. Drag and drop a **Hidden** component inside the `panelRequest` **Panel** component. 2. In the **Property ID** and **Label Text** fields, enter `fields`. 3. Click **Save Component**. #### Configure the Second Hidden Component To configure the second Hidden component: 1. Drag and drop a **Hidden** component inside the `panelRequest` **Panel** component. 2. In the **Property ID** and **Label Text** fields, enter `moduleId`. 3. In the **Default Value** field, enter `5f0f5dc4a7aaa20205d8a48e`. > [!NOTE] > This value is the module ID of our Front-End Remote Execute Module. You can locate this ID from your front-end module's URL: https://training.unqork.io/#/form/**5f0f5dc4a7aaa20205d8a48e**/edit > If you created your own front-end module, enter your module's unique module ID. 4. Click **Save Component**. 5. **Save** your module. ## Front-End Remote Execute Module Now, create a **Front-End** module so your end-user can interact with it. ### Configure the Panel Component Configure a [Panel](/v1/docs/panel-component) component that acts as a container for the other components. 1. In the Module Builder, drag and drop a **Panel** component onto your canvas. 2. In the **Property ID** and **Canvas Label Text** fields, enter `panelRemoteExecute`. 3. Click **Save Component**. ### Configure the Plug-In Component Next, configure a [Plug-In](/v1/docs/plug-in-component) component that remote executes and sends the end-user's information to the back-end module. 1. Drag and drop a **Plug-In** component inside the `panelRemoteExecute` **Panel** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `pluginRemoteExecuteAPI`. 3. From the **Internal Services** drop-down, select **Execute****Module**. 4. In the **Data Source URL** field, replace **{****module****Id}** with the back-end module's ID. In this case, enter `5f0f5df7804251020c3b89e0`. ![A static image displaying the Configuration settings for Unqork plugin, including service type and data source URL.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/UD_frontend_plugin.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 5. Click **Save Component**. ### Configure the Button Component Next, configure a [Button](/v1/docs/button-component) component that triggers the `pluginRemoteExecuteAPI` **Plug-In** component, which prompts the remote execute. 1. Drag and drop a **Button** component inside the `panelRemoteExecute` **Panel** component. 2. In the **Property ID** field, enter `btnGetSubmissionsAPI`. 3. In the **Label Text** field, enter `Execute Get Submissions API`. 4. From the **Action Type** drop-down, select **Event**. 5. From the **On Click** drop-down, select **pluginRemoteExecuteAPI**. ![A static image displaying the Button configuration for executing the Get Submissions API with action triggers.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/UD_Frontend_Button.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 6. Click **Save Component**. 7. **Save** your module. ## Error Handling Configuration Now configure pop-up modal error messages for multiple calls on the front-end module. Doing so ensures end-users see error messages if a call fails. Error handling involves both back-end and front-end configuration. > [!WARNING] > It’s important to note that all pop-up error messages should be configured in the **front-end module**. This ensures that if any calls fail, the end-user will receive an error message in Express View. ### Error Handling the Back-End API Module Add an [Initializer](/v1/docs/initializer-component) component as the error trigger for the back-end module's API call. Then, add a [Hidden](/v1/docs/hidden-component) component to store the error response if the API call fails. #### Configure the Initializer Component 1. Drag and drop an **Initializer** component inside the `panelInfo` **Panel** component, below the `pluginGetSubmissions` **Plug-In** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `initError`. 3. In the **Outputs** table, enter the following: | # | Source | Type | Value | | --- | --- | --- | --- | | 1 | apiResponseError | value | There was an error with the Get Submissions call. | ![A static image displaying the manual trigger type with error message for API response in the initializer component.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/UD_Backend_INITError.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 4. Click **Save Component**. #### Update the Plug-In Component's Error Trigger Next, set `initError` **Initializer** component as the error trigger of your `pluginGetSubmissions` **Plug-In** component. This configuration indicates that when an error occurs in your Plug-In component, the Initializer component is triggered. 1. Hover over the `pluginGetSubmissions` **Plug-In** component. A 5-button toolbar displays above the component on hover-over. 2. Using the toolbar, click the ![](https://files.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/AppBuildButton_Settings(49).jpg)(**Settings**) button. 3. In the **Error Trigger** field, enter `initError`. 4. Click **Save Component**. #### Configure the Hidden Component This [Hidden](/v1/docs/hidden-component) component stores the error response for the API call. When the API call fails, the `initError` **Initializer** component is triggered and outputs an error response into the Hidden component. 1. Drag and drop a **Hidden** component inside the `panelResponse` **Panel** component. 2. In the **Property ID** and **Label Text** fields, enter `apiResponseError`. 3. Set **Store Data in Database** to ![A toggle switch icon indicating an on state for user interface settings.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/toggledOn.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) **(ON)**. > Storing this Hidden component in the database means you can map to it. You'll use mapping when you bring the API's error response to the front-end module. 4. Click **Save Component**. 5. **Save** your module. ### Error Handling the Front-End Remote Execute Module Next, set up error handling for the remote execute call in the front-end module. > [!WARNING] > It’s important to note that all pop-up error messages should be configured in the **front-end module**. This ensures that if any calls fail, the end-user will receive an error message in Express View. #### Configure the Panel Component Configure a [Panel](/v1/docs/panel-component) component that acts as a container for the other components. 1. In the Module Builder, drag and drop a **Panel** component onto your canvas. 2. In the **Property ID** and **Canvas Label Text** fields, enter `panelRemoteExecuteError`. 3. Click **Save Component**. #### Configure the Initializer Component Now, configure an [Initializer](/v1/docs/initializer-component) component as the error trigger for the `pluginRemoteExecuteAPI` **Plug-In** component. If the remote execute call fails, the Initializer component outputs the error response to a Hidden component. 1. Drag and drop an **Initializer** component inside the `panelRemoteExecuteError` **Panel** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `initRemoteExecuteError`. 3. In the **Outputs** table, enter the following: | # | Source | Type | Value | | --- | --- | --- | --- | | 1 | remoteExecuteError | value | error | ![A static image displaying the Initializer settings showing property ID, canvas label, and output values for error handling.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/UD_frontend_initremoteexeerror.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 4. Click **Save Component**. #### Update the Plug-In Component's Error Trigger Next, configure the `initRemoteExecuteError` **Initializer** component as the error trigger of your `pluginRemoteExecuteAPI` **Plug-In** component. So, when an error occurs in your Plug-In component, the `initRemoteExecuteError` **Initializer** component is triggered. 1. Hover over the `pluginRemoteExecuteAPI` **Plug-In** component. A 5-button toolbar displays above the component on hover-over. 2. Using the toolbar, click the ![](https://files.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/AppBuildButton_Settings(50).jpg) (**Settings**) button. 3. In the **Error Trigger** field, enter `initRemoteExecuteError`. 4. Click **Save Component**. #### Configure the Hidden Component This [Hidden](/v1/docs/hidden-component) component stores the error response when the front-end's remote execute fails. 1. Drag and drop a **Hidden** component inside the `panelRemoteExecuteError` **Panel** component, below the `initRemoteExecuteError` **Initializer** component. 2. In the **Property ID** and **Label Text** fields, enter `remoteExecuteError`. 3. Click **Save Component**. #### Configure the Decisions Component Now, configure a [Decisions](/v1/docs/decisions-component) component to display an error message when the remote execute operation fails. 1. Drag and drop a **Decisions** component inside the `panelRemoteExecuteError` **Panel** component, below the `remoteExecuteError` **Hidden** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `ruleShowRemoteExecuteError`. 3. In the **Inputs** table, enter the following: | # | Source | Type | Required | | --- | --- | --- | --- | | 1 | remoteExecuteError | exact | ![](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Checked_Box(7).png?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) (checked) | 4. In the **Outputs** table, enter the following: | # | Source | Type | | --- | --- | --- | | 1 | panelRemoteExecuteError | popError | 5. In the **Conditionals** table, enter the following: | # | remoteExecuteError | **panelRemoteExecuteError_popError** | | --- | --- | --- | | 1 | | Uh-oh, there was an error with your remote execute call. | ![A static image displaying the Decision component showing inputs, outputs, and conditionals for remote execution error handling.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/UD_frontend_Decisions.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 6. Click **Save Component**. 7. **Save** your module. Now, if your remote execute fails, the end-user can see the message set in your Decisions component. ### Adding a Pop-Up Error Message for the API Call Next, create a pop-up error message for the back-end module's API call. > [!WARNING] > It’s important to note that all pop-up error messages should be configured in the **front-end module**. This ensures that if any calls fail, the end-user will receive an error message in Express View. #### Update the Plug-In Component's Output Mapping Update your `pluginRemoteExecuteAPI` **Plug-In** component to map the back-end module's `apiResponseError` **Hidden** component to a [Hidden](/v1/docs/hidden-component) component you'll add in the front-end module. 1. Hover over the `pluginRemoteExecuteAPI` **Plug-In** component. A 5-button toolbar displays above the component on hover-over. 2. Using the toolbar, click the ![](https://files.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/AppBuildButton_Settings(51).jpg) (**Settings**) button. 3. In the **Outputs** table, enter the following: | # | Source | Mapping | Option | | --- | --- | --- | --- | | 1 | responseAPIErrorFrontEnd | data.resolved.apiResponseError | replace | ![A static image displaying the Configuration settings for plugin execution with highlighted property ID and mapping details.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/UD_Frontend_plugin_OUtputs.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) > [!NOTE] > The `apiResponseError` value is the name of the Hidden component on the back-end module. Because you set `apiResponseError` to store in the database, you can now map to that field. You can find mapping values using the Angular command in the DevTools Console. 4. Click **Save Component**. #### Configure the Panel Component This [Panel](/v1/docs/panel-component) component acts as a container for the components that follow. 1. In the Module Builder, drag and drop a **Panel** component onto your canvas, placing it below the `panelRemoteExecuteError` **Panel** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `panelAPIError`. 3. Click **Save Component**. #### Configure the Hidden Component This Hidden component stores the error response if the back-end API call fails. 1. Drag and drop a **Hidden** component onto your canvas, placing it inside the `panelAPIError` Panel component. 2. In the **Property ID** and **Label Text** fields, enter `responseAPIErrorFrontEnd`. 3. Click **Save Component**. #### Configure the Decisions Component This [Decisions](/v1/docs/decisions-component) component displays an error message on the front-end if the back-end's API call fails. 1. Drag and drop a **Decisions** component inside the `panelAPIError` **Panel** component, below the `responseAPIErrorFrontEnd` **Hidden** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `ruleShowAPIError`. 3. In the **Inputs** table, enter the following: | # | Source | Type | Required | | --- | --- | --- | --- | | 1 | responseAPIErrorFrontEnd | exact | ![](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Checked_Box(7).png?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) (checked) | 4. In the **Outputs** table, enter the following: | # | Source | Type | | --- | --- | --- | | 1 | panelAPIError | popError | 5. In the **Conditionals** table, enter the following: | # | responseAPIErrorFrontEnd | panelAPIError_popError | | --- | --- | --- | | 1 | | Oh no! Your API call failed! | ![A static image displaying the Decision component showing API error handling with inputs and outputs configuration.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/UD_fronenddecisions2.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 6. Click **Save Component**. 7. **Save** your module. ## Test Your Pop-Up Error Messages You have two different [Plug-In](/v1/docs/plug-in-component) component calls, and each has its own error handling. To test the error messages, you must fail each call. When a call fails, the error trigger fires, which triggers a pop-up error message on the front-end module. An easy way to fail a call is to add a bracket to the Plug-In component's **Data Source URL**. If the URL is incorrect, the call fails, and you receive a pop-up error message. Once you verify that your error message works, you can remove the bracket from the Data Source URL. ### Error Message for the Remote Execute Call First, force the Plug-In component to fail and return an error. Then, check that the error message displays in Express View. 1. Open the front-end module in the Module Builder. 2. Hover over the `pluginRemoteExecuteAPI` **Plug-In** component. A 5-button toolbar displays above the component on hover-over. 3. Using the toolbar, click the ![](https://files.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/AppBuildButton_Settings(52).jpg) (**Settings**) button. 4. In the **Data Source URL** field, enter a bracket anywhere in the URL. ![A static image displaying the Configuration settings for Unqork plugin with data source URL and service type options.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/UD_frontend_errorMessage_Plugin.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 5. Click **Save Component**. 6. **Save** your module. To test that your pop-up error message works: 1. Open your front-end module in Express View. 2. Click the **Execute Get Submissions API** button. A pop-up displays with the error message that you set in the `ruleShowRemoteExecuteError` **Decisions** component. ### Error Message for the API Call You can now test your error handling for the **Get Submissions API** call. First, cause the Plug-In component to fail and return an error. Then, check that the error message displays in Express View. Remember, you want all error messages to display in the front-end module. 1. Open the Back-End API Module in the Module Builder. 2. Hover over the `pluginGetSubmissions` **Plug-In** component. A 5-button toolbar displays above the component on hover-over. 3. Using the toolbar, click the ![](https://files.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/AppBuildButton_Settings(54).jpg) (**Settings**) button. 4. In the **Data Source URL** field, enter a bracket anywhere in the URL. ![A static image displaying the Unqork plugin configuration interface showing service type and data source URL fields.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/UD_BackendErrormessage_Plugin.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 5. Click **Save Component**. 6. **Save** your module. To test that the pop-up error message works: 1. Open your front-end module in Express View. 2. Click the **Execute Get Submissions API** button. You'll see a pop-up with the error message that you set in the `ruleShowAPIError` **Decisions** component. **Classic Designer** Some configurations require layers of remote executes or multiple [Plug-In](https://docs.unqork.io/docs/plug-in-component) component calls. It's a best practice to create error handling for every Plug-In component in your configuration. That way, if an error occurs, your end-user will see the error message. Every Plug-In component needs an error trigger with [Hidden](/v1/docs/hidden-component) components that store the data in the database to carry the error responses to the front-end. Always create error handling for a Plug-In component in the module where that Plug-In component exists. Then, you'll continue the error handling configuration on any module(s). Lastly, you'll bring the error responses to the front-end, completing the assembly line. In this how-to guide, you'll learn how to handle remote execute calls that trigger other calls. Once you learn how this configuration works, you can apply it to any number of calls. Let's look at the two modules in this error handling example: | Module | Description | | --- | --- | | Front-End Remote Execute Module | Your end-users interact with this module by clicking a button that a [Plug-In](/v1/docs/plug-in-component) component. The Plug-In component remote executes to the Back-End API module. > [!NOTE] > Refer to this module as the front-end module. | | Back-End API Module | This module makes the API call using the **Get Submissions API** to retrieve submission data. End-users are unable to view or interact with this module. > [!NOTE] > Refer to this module as the back-end module. | Because there are two calls (one remote execute and one internal), there are two potential places where issues can occur. The goal is to error handle all Plug-In components and configure error messages that display on the front-end module. From there, any error down the line triggers messages for the end-user. The end-user stays informed no matter where the error occurs. Here's how your error message might look in Express View if a remote execute call fails: ![](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Sol_AdvErrorHandling_Front01(2).jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) Here's how your error message might look in Express View if the Get Submissions API call fails: ![](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Sol_AdvErrorHandling_ExtAPI01(1).jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) In a real-life configuration, you can choose to have a generic message. End-users might not know what a remote execute or API does, so use a message that's easy to understand. For this example, each call has a unique error message. Use this approach to test the error handling of both calls. ## Configure the Back-End API Module This back-end module makes the API call. For this use case, use the Get Submissions API call. The front-end module remote executes this back-end module, which fires the API call. If the API call fails, the back-end module tells the front-end module about the failure. The front-end module then fires a pop-up message for the end-user in Express View. This process all happens behind the scenes. ### Configure the API Module An **API** module contains four Panel components to help with the API setup. You can hover over the panelConfig and delete it, as it is not used further in the configuration. To create an API module at the [Application](https://docs.unqork.io/v1/docs/navigating-an-application) level: 1. At the top right of the page, click the **+ Create New** drop-down. 2. Select **Module**. The Create Module modal displays. 3. In the **Module** **Name*** field, enter a unique name for your module. The **Module** **Path*** field populates automatically. 4. From the **Module** **Type*** drop-down, select **API.** > [!TIP] > To learn more about Module Types, view our What Is a Module? article. 5. (Optional) In the **Module** **Description** field, describe the purpose of the API module. 6. (Optional) From the **Tags** drop-down, select any tags you want to add. 7. Click **Create**. #### Configure the Initializer Component Begin by adding an [Initializer](/v1/docs/initializer-component) component to trigger the [Plug-In](/v1/docs/plug-in-component) component that you’ll set up next. 1. Drag and drop an **Initializer** component inside the `panelInfo` **Panel** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `initPluginGetSubmissions`. 3. From the **Trigger Type** drop-down, select **New Submission** 4. In the **Outputs** table, enter the following: | # | Property ID | Type | Value | | --- | --- | --- | --- | | 1 | pluginGetSubmissions | trigger | GO | ![ A static image displaying the Initializer component settings to trigger the Plugin component.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/CD_Backend_INIT.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 5. Click **Save & Close**. #### Configure the Plug-In Component Next, you’ll configure a [Plug-In](/v1/docs/plug-in-component) component to run the **Get Submissions API**. 1. Drag and drop a **Plug-In** component inside the `panelInfo` **Panel** component, below the `initPluginGetSubmissions` **Initializer** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `pluginGetSubmissions`. 3. From the **Internal Services** drop-down, select **List Submissions for Dashboard**. 4. In the **Inputs** table, enter the following: | Property ID | Mapping | | --- | --- | | moduleId | moduleId | | fields | fields | ![A static image displaying the Settings for a plugin including data source URL and request type options.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/CD_Backend_Plugin_URL_Inputs.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 5. Click **Save**. #### Configure the First Hidden Component Next, configure two Hidden components. The first component stores the fields of the submission data, and the second component stores the module ID of the Front-End Remote Execute module. > [!NOTE] > Because this example is about error handling, you don't have actual submission data. These Hidden components are placeholders for the purpose of this guide. To configure the first Hidden component: 1. Drag and drop a **Hidden** component inside the `panelRequest` **Panel** component. 2. In the **Property ID** and **Label Text** fields, enter `fields`. 3. Click **Save & Close**. #### Configure the Second Hidden Component To configure the second Hidden component: 1. Drag and drop a **Hidden** component inside the `panelRequest` **Panel** component. 2. In the **Property ID** and **Label Text** fields, enter `moduleId`. 3. In the **Default Value** field, enter `5f0f5dc4a7aaa20205d8a48e`. > [!NOTE] > This value is the module ID of our Front-End Remote Execute Module. You can locate this ID from your front-end module's URL: https://training.unqork.io/#/form/**5f0f5dc4a7aaa20205d8a48e**/edit > If you created your own front-end module, enter your module's unique module ID. 4. Click **Save & Close**. 5. **Save** your module. ## Front-End Remote Execute Module Now, create a **Front-End** module so your end-user can interact with it. ### Configure the Panel Component Configure a [Panel](/v1/docs/panel-component) component that acts as a container for the other components. 1. In the Module Builder, drag and drop a **Panel** component onto your canvas. 2. In the **Property ID** and **Label Text** fields, enter `panelRemoteExecute`. 3. Click **Save & Close**. ### Configure the Plug-In Component Next, configure a [Plug-In](/v1/docs/plug-in-component) component that remote executes and sends the end-user's information to the back-end module. 1. Drag and drop a **Plug-In** component inside the `panelRemoteExecute` **Panel** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `pluginRemoteExecuteAPI.` 3. From the **Internal Services** drop-down, select **Execute****Module****.** 4. In the **Data Source URL** field, replace **{****module****Id}** with the back-end module's ID. In this case, you’ll enter `5f0f5df7804251020c3b89e0`. ![A static image displaying the Settings for Unqork plugin, including service type and data source URL.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/CD_Frontend_Plugin_URL.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 5. Click **Save**. #### Configure the Button Component Next, configure a [Button](/v1/docs/button-component) component that triggers the `pluginRemoteExecuteAPI` **Plug-In** component, which prompts the remote execute. 1. Drag and drop a **Button** component inside the **panelRemoteExecute** Panel. You can place the Button above or below the `pluginRemoteExecute` Plug-In. 2. In the **Property ID** field, enter `btnGetSubmissionsAPI`. 3. In the **Label Text** field, enter `Execute Get Submissions API`. 4. Set the **Action Type** as **Event**. 5. From the **On Click** drop-down, enter `pluginRemoteExecuteAPI`. ![A static image displaying the Button configuration for executing the Get Submissions API with action triggers.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/CD_Frontend_Button.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 6. Click **Save & Close**. 7. **Save** your module. ## Error Handling Configuration Now configure pop-up modal error messages for multiple calls on the front-end module. Doing so ensures end-users see error messages if a call fails. Error handling involves both back-end and front-end configuration. > [!WARNING] > It’s important to note that all pop-up error messages should be configured in the **front-end module**. This ensures that if any calls fail, the end-user will receive an error message in Express View. ### Error Handling the Back-End API Module Add an [Initializer](/v1/docs/initializer-component) component as the error trigger for the back-end module's API call. Then, add a [Hidden](/v1/docs/hidden-component) component to store the error response if the API call fails. #### Configure the Initializer Component 1. Drag and drop an **Initializer** component inside the `panelInfo` **Panel** component, below the `pluginGetSubmissions` **Plug-In** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `initError`. 3. In the **Outputs** table, enter the following: | # | Source | Type | Value | | --- | --- | --- | --- | | 1 | apiResponseError | value | There was an error with the Get Submissions call. | ![A static image displaying the Display settings for an error initialization with manual trigger and output properties.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/CD_Backend_InitError.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 4. Click **Save & Close**. #### Update the Plug-In Component's Error Trigger Next, set `initError` **Initializer** component as the error trigger of your `pluginGetSubmissions` **Plug-In** component. This configuration indicates that when an error occurs in your Plug-In component, the Initializer component is triggered. 1. Hover over the `pluginGetSubmissions` **Plug-In** component. A 5-button toolbar displays above the component on hover-over. 2. Using the toolbar, click the ![](https://files.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/AppBuildButton_Settings(49).jpg)(**Settings**) button. 3. In the **Error Trigger** field, enter `initError`. 4. Click **Save**. #### Configure the Hidden Component This [Hidden](/v1/docs/hidden-component) component stores the error response for the API call. When the API call fails, the `initError` **Initializer** component is triggered and outputs an error response into the Hidden component. 1. Drag and drop a **Hidden** component inside the `panelResponse` **Panel** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `apiResponseError`. 3. Set **Store Data in Database** to ![A toggle switch icon indicating an on state for user interface settings.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/toggledOn.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) **(ON)**. > Storing this Hidden component in the database means you can map to it. You'll use mapping when you bring the API's error response to the front-end module. 4. Click **Save & Close**. 5. **Save** your module. ### Error Handling the Front-End Remote Execute Module Next, set up error handling for the remote execute call in the front-end module. > [!WARNING] > It’s important to note that all pop-up error messages should be configured in the **front-end module**. This ensures that if any calls fail, the end-user will receive an error message in Express View. #### Configure the Panel Component Configure a [Panel](/v1/docs/panel-component) component that acts as a container for the other components. 1. In the Module Builder, drag and drop a **Panel** component onto your canvas. 2. In the **Property ID** and **Label Text** field, enter `panelRemoteExecuteError`. 3. Click **Save & Close**. #### Configure the Initializer Component Now, configure an [Initializer](/v1/docs/initializer-component) component as the error trigger for the `pluginRemoteExecuteAPI` **Plug-In** component. If the remote execute call fails, the Initializer component outputs the error response to a Hidden component. 1. Drag and drop an **Initializer** component inside the `panelRemoteExecuteError` **Panel** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `initRemoteExecuteError`. 3. In the **Outputs** table, enter the following: | # | Source | Type | Value | | --- | --- | --- | --- | | 1 | remoteExecuteError | value | error | ![A static image displaying the Display settings for a manual trigger type with error output configuration.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/CD_frontend_initremoteexec.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 4. Click **Save & Close**. #### Update the Plug-In Component's Error Trigger Next, configure the `initRemoteExecuteError` **Initializer** component as the error trigger of your `pluginRemoteExecuteAPI` **Plug-In** component. So, when an error occurs in your Plug-In component, the `initRemoteExecuteError` **Initializer** component is triggered. 1. Hover over the `pluginRemoteExecuteAPI` **Plug-In** component. A 5-button toolbar displays above the component on hover-over. 2. Using the toolbar, click the ![](https://files.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/AppBuildButton_Settings(50).jpg) (**Settings**) button. 3. In the **Error Trigger** field, enter `initRemoteExecuteError`. 4. Click **Save**. #### Configure the Hidden Component This [Hidden](/v1/docs/hidden-component) component stores the error response when the front-end module's remote execute fails. 1. Drag and drop a **Hidden** component inside the `panelRemoteExecuteError` **Panel** component, below the `initRemoteExecuteError` **Initializer** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `remoteExecuteError`. 3. Click **Save & Close**. #### Configure the Decisions Component Now, configure a [Decisions](/v1/docs/decisions-component) component to display an error message when the remote execute operation fails. 1. Drag and drop a **Decisions** component inside the `panelRemoteExecuteError` **Panel** component, below the `remoteExecuteError` **Hidden** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `ruleShowRemoteExecuteError`. 3. In the **Inputs** table, enter the following: | Source | Type | Required | | --- | --- | --- | | remoteExecuteError | exact | ![](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Checked_Box(7).png?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) (checked) | 4. In the **Outputs** table, enter the following: | Source | Type | | --- | --- | | panelRemoteExecuteError | popError | 5. In the **Micro Decisions** table, enter the following: | remoteExecuteError | **panelRemoteExecuteError_popError** | | --- | --- | | | Uh-oh, there was an error with your remote execute call. | ![A static image displaying the Settings panel displaying property IDs and error messages for remote execution decisions.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/CD_frontend_Decisions.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 6. Click **Save**. 7. **Save** your module. Now, if your remote execute fails, the end-user sees the message you set in your Decisions component. ### Adding a Pop-Up Error Message for the API Call Next, create a pop-up error message for the back-end module's API call. > [!WARNING] > It’s important to note that all pop-up error messages should be configured in the **front-end module**. This ensures that if any calls fail, the end-user will receive an error message in Express View. #### Update the Plug-In Component's Output Mapping Update your `pluginRemoteExecuteAPI` **Plug-In** component to map the back-end module's `apiResponseError` **Hidden** component to a [Hidden](/v1/docs/hidden-component) component you'll add in the front-end module. 1. Hover over the `pluginRemoteExecuteAPI` **Plug-In** component. A 5-button toolbar displays above the component on hover-over. 2. Using the toolbar, click the ![](https://files.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/AppBuildButton_Settings(51).jpg) (**Settings**) button. 3. In the **Outputs** table, enter the following: | Source | Mapping | Option | | --- | --- | --- | | responseAPIErrorFrontEnd | data.resolved.apiResponseError | replace | ![A static image displaying the Settings for a plugin with property ID and mapping options displayed in a table.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/CD_frontend_Plugin_Output.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) > [!NOTE] > The `apiResponseError` value is the name of the Hidden component on the back-end module. Because you set `apiResponseError` to store in the database, you can now map to that field. You can find mapping values using the Angular command in the DevTools Console. 4. Click **Save**. #### Configure the Panel Component This [Panel](/v1/docs/panel-component) acts as a container for the components that follow. 1. In the Module Builder, drag and drop a **Panel** component onto your canvas, placing it below the `panelRemoteExecuteError` **Panel** component. 2. In the **Property ID** field, enter `panelAPIError`. You can leave the **Label Text** blank. 3. Click **Save & Close**. #### Configure the Hidden Component This [Hidden](/v1/docs/hidden-component) component stores the error response if the back-end API call fails. 1. Drag and drop a **Hidden** component inside the `panelAPIError` **Panel** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `responseAPIErrorFrontEnd`. 3. Click **Save & Close**. #### Configure the Decisions Component This [Decisions](/v1/docs/decisions-component) component displays an error message to your front-end user if the back-end's API call fails. 1. Drag and drop a **Decisions** component inside the `panelAPIError` **Panel** component, below the `responseAPIErrorFrontEnd` **Hidden** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `ruleShowAPIError`. 3. In the **Inputs** table, enter the following: | Source | Type | Required | | --- | --- | --- | | responseAPIErrorFrontEnd | exact | ![](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Checked_Box(7).png?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) (checked) | 4. In the **Outputs** table, enter the following: | Source | Type | | --- | --- | | panelAPIError | popError | 5. In the **Micro Decisions** table, enter the following: | responseAPIErrorFrontEnd | panelAPIError_popError | | --- | --- | | | Oh no! Your API call failed! | ![A static image displaying the Settings panel displaying API error handling and input-output configurations for decisions.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/CD_frontend_Decision2.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 6. Click **Save**. 7. **Save** your module. ## Test Your Pop-Up Error Messages You have two different [Plug-In](/v1/docs/plug-in-component) component calls, and each has its own error handling. To test the error messages, you must fail each call. When a call fails, the error trigger fires, which triggers a pop-up error message on the front-end module. An easy way to fail a call is to add a bracket to the Plug-In component's **Data Source URL**. If the URL is incorrect, the call fails, and you receive a pop-up error message. Once you verify that your error message works, you can remove the bracket from the Data Source URL. ### Error Message for the Remote Execute Call First, force the Plug-In component to fail and return an error. Then, check that the error message displays in Express View. 1. Open the front-end module in the Module Builder. 2. Hover over the `pluginRemoteExecuteAPI` **Plug-In** component. A 5-button toolbar displays above the component on hover-over. 3. Using the toolbar, click the ![](https://files.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/AppBuildButton_Settings(52).jpg) (**Settings**) button. 4. In the **Data Source URL** field, enter a bracket anywhere. ![A static image displaying the Settings interface for a plugin with highlighted data source URL and options.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/CD_Frontend_Errormessage1.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 5. Click **Save**. 6. **Save** your module. To test that your pop-up error message works: 1. Open your front-end module in Express View. 2. Click the **Execute Get Submissions API** button. A pop-up displays with the error message that you set in the `ruleShowRemoteExecuteError` **Decisions** component. ### Error Message for the API Call You can now test your error handling for the **Get Submissions API** call. First, cause the Plug-In component to fail and return an error. Then, check that the error message displays in Express View. Remember, you want all error messages to display in the front-end module. 1. Open the Back-End API Call Module in the Module Builder. 2. Hover over the `pluginGetSubmissions` Plug-In component. A 5-button toolbar displays above the component on hover-over. 3. Using the toolbar, click the ![](https://files.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/AppBuildButton_Settings(54).jpg) (**Settings**) button. 4. In the **Data Source URL** field, enter a bracket anywhere. ![A static image displaying the Settings for a plugin with highlighted data source URL for submissions.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/CD_Frontend_GetErrorMessage.jpg?sv=2026-02-06&spr=https&st=2026-11-11T02%3A57%3A44Z&se=2026-11-11T03%3A57%3A44Z&sr=c&sp=r&sig=Jyjp98hF%2BcU6dqTveHNGn4f2SVpGSaLYqEQZc65xazQ%3D) 5. Click **Save**. 6. **Save** your module. To test that the pop-up error message works: 1. Open your front-end module in Express View. 2. Click the **Execute Get Submissions API** button. You'll see a pop-up with the error message that you set in the `ruleShowAPIError` **Decisions** component. A definition End-users, also known as Express Users, are the individuals accessing an application through Express View. In most cases, end-users are the customers using the product. Triggers activate another component when certain requirements are met. Trigger types include Concurrent, Post, and Error. Some components do not have the ability to trigger others. The Number data type accepts integer or floating point values. The number data type does not use quotes around numerical values. End-users, also known as Express Users, are the individuals accessing an application through Express View. In most cases, end-users are the customers using the product. Also known as Record Data. Submission data consists of information saved by Unqork components. View submission data by using the angular command, or in Record Collections. Express View is how your end-user views your application. Express View also lets you preview your applications to test your configuration and view the styling. This is also the view your end-users will see when interacting with your application. After configuring a module, click Preview in the Module Builder to interact with the module in Express View. A modal is a window that appears on top of the content you are currently viewing. A Property ID is the unique field ID used by Unqork to track and link components in your module. Canvas Label Text indicates the purpose of the corresponding field or component. For non-input components, the Canvas Label Text isn't end-user facing, and only appears in the . Deteremines how the component triggers. The component fires when the page or called module loads without an existing submission ID. Dashboards and remote execute modules are great uses for this trigger. Enter inputs components and actions you want the component to perform.. Label Text conveys what the input component is and what information it displays. Enter the purpose of the corresponding component or field. End-users, also known as Express Users, are the individuals accessing an application through Express View. In most cases, end-users are the customers using the product. The action performed by the button when selected. DOM (Document Object Model) events are signals or notifications that something has occurred or is occurring within a web page, often triggered by user interactions or by the browser itself. These events allow JavaScript to react to changes and interactions on a web page, making it dynamic and interactive. Enter the Property ID of the component that you want to trigger on each button-click. The Angular command, or data command, is a tool that displays submission data in a browser's developer console. In Express View, enter the following command in the devtool console: angular.element('.unqorkio-form').scope().submission The DevTools Console helps you securely store, build, test, and deploy your software.