--- title: "How to: Build a Remote Execute Dashboard With a Delete Action" slug: "use-case-building-a-remote-execute-dashboard-with-a-delete-action" description: "Learn to build a remote execute dashboard with a Delete button using Unqork, enhancing your module's functionality and user experience." updated: 2026-01-20T18:07:14Z published: 2026-01-20T20:38:53Z canonical: "docs.unqork.io/use-case-building-a-remote-execute-dashboard-with-a-delete-action" --- > ## 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: Build a Remote Execute Dashboard With a Delete Action In this how-to guide, you'll learn how to **build a remote execute dashboard with a Delete button**. Deleting submissions is possible thanks to the **Deletes Multiple** **Module** **Submissions** internal service. It's a best practice to remote execute any API calls in front-end modules. So, you’ll use a server-side module to handle the retrieval of submissions from the dashboard, and another server-side module to delete submissions from the dashboard. In this guide, you’ll create four modules: | # | Module Title | Description | | --- | --- | --- | | 1 | Simple Module for Remote Execute | A simple module where the end-user enters their personal information. This module acts as the source module for the dashboard. We'll refer to this module as Module 1. | | 2 | Remote Execution | Controls the back-end functions, including the module ID used by the remote execute. This module retrieves submissions to display in your dashboard. We'll refer to this module as Module 2. | | 3 | Simple Dashboard With Remote Execute | The dashboard module, where you'll display submission information from Module 1. We'll refer to this module as Module 3. | | 4 | Remote Execution for Deleting Submissions | This module handles deleting submissions after the end-user clicks the dashboard's **Delete** button. We'll refer to this module as Module 4. | Select the tab that corresponds to your Unqork Designer experience: UDesignerClassic Designer ## Module 1 Configuration: Simple Module for Remote Execute Let's begin by creating the **Simple** **Module** **for Remote Execute** module. In this module, you'll set up fields to record the end-user's personal information. ### Configure the Text Field Components 1. In the Module Builder, drag and drop three **Text Field** components onto the canvas. 2. In the **Property ID** and **Label Text** fields, enter the following for each component: | # | Property ID | Label Text | | --- | --- | --- | | 1 | firstName | First Name | | 2 | middleName | Middle Name | | 3 | lastName | Last Name | 3. Click **Save Component** for each component after adding it. ### Configure the Email Component 1. Drag and drop an **Email** component onto the canvas, placing it below the Text Field components. 2. In the **Property ID** and **Label Text,** enter `emailAddress`. 3. Click **Save Component**. ### Configure the Date Input Component 1. Drag and drop a **Date Input** component onto the canvas, placing it below the **Email** component. 2. In the **Property ID** field, enter `dateOfBirth`. 3. In the **Label Text** field, enter `Date of Birth`. 4. Under the **Formatting** section, in the **Display (+/-) years from the current date** field, enter `125`. 5. Navigate to the component’s **Advanced** settings. 6. From the **Restrict Date selection to:** drop-down, select **Past Only**. 7. Click **Save Component**. ### Configure the Button Component 1. Drag and drop a **Button** component onto the canvas, placing it below the **Date Input** component. 2. In the **Property ID** field, enter `btnSave`. 3. In the **Label Text** field, enter `Save`. 4. In the **Success Message field,** enter `Saved!`. 5. Click **Save Component**. 6. **Save** your module. Here's how the completed module looks in the Module Builder: ![User information form with fields for name, email, and date of birth.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/UDesigner_Module%201%20final.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) ## Module 2 Configuration: Remote Execute Module Next, you'll create the Remote Execution module (Module 2). This module contains the [Plug-In](/v1/docs/plug-in-component) component logic and exists on the server side. Meaning, it’s inaccessible to end-users. When you preview this module, you’ll see a blank screen. Module details are only accessible in the DevTools Console. Before adding components to Module 2, you'll adjust the module settings. By setting the module to server-side execute, the module becomes inaccessible to anyone without Module Builder access. 1. At the top right of the Module Builder, click the ![ellipsisButtonDummy.jpg](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/ellipsisButtonDummy.jpg?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) **(ellipsis)** button. 2. Select **Module Settings**. 3. To the left of the modal, select **Module Settings**. 4. Set **Server-Side Execution Only** to ![files](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/toggle_ON(15).png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) **(ON)**. ![Settings panel showing options for server-side execution and user permissions configuration.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Udesigner_SSE.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) 5. Click **Save & Close**. ### Configure the Initializer Component 1. In the Module Builder, drag and drop an **Initializer** component onto the canvas. 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 | 5. Click **Save Component**. ### Configure the First Hidden Component You'll use two [Hidden](/v1/docs/hidden-component) components in this configuration. The first Hidden component stores the module ID of the **Simple** **Module** **for Remote Execute (****Module** **1)**. For security purposes, you do not want this module ID stored in the database. So, we'll keep the **Store Data in Database** setting disabled. 1. Drag and drop a **Hidden** component onto the canvas, placing it below the **Initializer** component. 2. In the **Property ID** and **Label Text** fields, enter `moduleId`. 3. In the **Default Value** field, copy and paste the module Id of Module 1. > [!NOTE] > In this example, the module ID of **Simple** **Module** **for Remote Execute (****Module** **1)** is **5f8d9eb9f1a98d024e984c75**. If you created your own Module 1, enter that module's module ID. 4. Click **Save Component**. ### Configure the Second Hidden Component This [Hidden](/v1/docs/hidden-component) component stores the submission data retrieved by the `pluginGetSubmissions` **Plug-In** component. 1. Drag and drop the second **Hidden** component onto the canvas, placing it below the first Hidden component. 2. In the **Property ID** and **Label Text** fields, enter `submissions`. 3. Set **Store Data in Database** to ![files](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/toggle_ON(15).png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) **(ON)**. Doing so allows the submission data to be brought into the dashboard. 4. Click **Save Component**. ### Configure the Plug-In Component The [Plug-In](/v1/docs/plug-in-component) component retrieves the submission data from the source module. 1. Drag and drop a **Plug-In** component onto the canvas, placing it below the Initializer component. 2. In the **Property ID** and **Canvas** **Label Text** fields, enter `pluginGetSubmissions`. 3. In the **Inputs** table, enter the following: | | Property ID | Mapping | | --- | --- | --- | | 1 | moduleId | moduleId | | 2 | 'firstName,lastName,emailAddress' | fields | > [!NOTE] > The first row defines which module you’ll retrieve the submissions from. The second row defines which fields you'll send to the dashboard. Here, its references to `firstName`, `lastName`, and `emailAddress`. The values entered in the Mapping column (`moduleId` and `fields`) are native to Unqork. 4. From the **Internal Services** drop-down, select **List Submissions for Dashboard**. The **Request Type** and **Data Source URL** populate automatically. 5. Click **Save Component**. ### Configure the Data Workflow Component This [Data Workflow](/v1/docs/data-workflow-component) component retrieves the submission data from the [Plug-In](/v1/docs/plug-in-component) component and sends it to the `submissions` **Hidden** component. 1. Drag and drop a **Data Workflow** component onto the canvas, placing it below the Hidden components. 2. In the **Property ID** and **Canvas Label Text** fields, enter `dwfSaveSubmissions`. #### Configure the Input Operator 1. Drag and drop an **Input** operator onto the Data Workflow canvas. 2. Configure the operator's **Info** window as follows: | Setting | Value | | --- | --- | | Category | Input | | Component | pluginGetSubmissions | | Required | Yes | | Source | Default | #### Configure the Output Operator 1. Drag and drop an **Output** operator onto the Data Workflow canvas. 2. Configure the operator's **Info** window as follows: | Setting | Value | | --- | --- | | Category | Output | | Component | submissions | | Action | value | 3. Connect the output port (right) of the **Input** operator to the input port (left) of the **Output** operator. 4. Click **Save Component**. 5. **Save** the module. Here's how the completed module looks in the Module Builder:![Overview of components and submissions in the Enablement Lab interface.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/U%20Designer_Module%202%20final.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) ## Module 3 Configuration: Remote Execute Module The **Simple Dashboard With Remote Execute module (****Module** **3)** calls on the **Remote Execution** **module** **(****Module** **2)**. The [Plug-In](/v1/docs/plug-in-component) component in this module retrieves the submission data to display in a simple dashboard. ### Configure the Initializer Component Like the last module, the [Initializer](/v1/docs/initializer-component) component triggers the [Plug-In](/v1/docs/plug-in-component) component on page-load. 1. In the Module Builder, drag and drop an **Initializer** component onto the canvas. 2. In the **Property ID** and **Canvas** **Label Text** fields, enter `initPluginRemoteSubmissionsModule`. 3. From the **Trigger Type** drop-down, select **New Submission**. 4. In the **Outputs** table, enter the following: | Property ID | Type | Value | | --- | --- | --- | | pluginExecuteSubmissionsModule | trigger | GO | 5. Click **Save Component**. ### Configure the Plug-In Component Next, let's add a [Plug-In](/v1/docs/plug-in-component) component to retrieve the submission data in the `submissions` **Hidden** component of the **Remote Execution** **module** **(****Module** **2)**. Then, you’ll store the submission data in a new [Hidden](/v1/docs/hidden-component) component you'll create in this module. 1. Drag and drop a **Plug-In** component onto the canvas, placing it below the Initializer component. 2. In the **Property ID** and **Canvas** **Label Text** fields, enter `pluginExecuteSubmissionsModule`. 3. In the **Outputs** table, enter the following: | # | Property ID | Mapping | | --- | --- | --- | | 1 | submissionsFromPlugin | data.resolved.submissions | > [!NOTE] > The Property ID references a Hidden component you'll set up in the next step. The Mapping column tells the system to retrieve the submission data from the `submissions` **Hidden** component in Module 2. 4. From the **Internal Services** drop-down, select **Execute Module**. The **Request Type** and **Data Source URL** populate automatically. 5. In the **Data Source URL**, replace **{****module****ID}** with the module ID from the Remote Execution module (Module 2). > [!NOTE] > In this example, the module ID of the **Remote Execution** **module** **(****Module** **2)** is **5f8d9fec19c4e6024ed45c48**. 6. Click **Save Component**. ### Configure the Hidden Component Now, let's add a [Hidden](/v1/docs/hidden-component) component that stores the submissions from the **Remote Execution** **module** **(****Module** **2)**. 1. Drag and drop a **Hidden** component onto the canvas, placing it below the Plug-In component. 2. In the **Property ID** and **Label Text** fields, enter `submissionsFromPlugin`. 3. Click **Save Component**. ### Configure the ViewGrid Component Now, let's add a [Hidden](/v1/docs/hidden-component) component that stores the submissions from the **Remote Execution** **module** **(****Module** **2)**. 1. Drag and drop a **ViewGrid** component onto the canvas, placing it below the Hidden component. 2. In the **Property ID** field, enter `gridDashboard`. 3. In the **Canvas Label Text** field, enter `Dashboard`. 4. In the **Inputs** table, enter `submissionsFromPlugin`. 5. In the **Display** table, enter the following: | # | ID | Formula | Heading | | --- | --- | --- | --- | | 1 | firstName | | First Name | | 2 | lastName | | Last Name | | 3 | emailAddress | | Email | 6. In the **Action** field, enter `null`. > [!NOTE] > Doing so removes the default Submit button from the dashboard. 7. Click **Save Component**. 8. **Save** module. ## Module 3 Configuration: Simple Dashboard With Remote Execute Let’s stay in your Module 3 and add the **Delete** button and supporting components. After creating Module 4, we’ll revisit Module 3 one more time. ### Update the ViewGrid Component 1. Hover over the `gridDashboard` **ViewGrid** component and click the (**Settings**) button from the toolbar to open the Configuration window. 2. In the **Outputs** table, enter the following: | # | ID | Mapping | | --- | --- | --- | | 1 | exportId | _id | > [!NOTE] > Set up the Outputs table to export submission IDs. When you click a row’s **Delete** button, that row’s submission ID is exported to a Hidden component. Doing so allows the **Delete Multiple Module Submissions API** call to identify which submission to remove. For now, use a placeholder Property ID in the Outputs table. In the next step, you’ll configure the Hidden component that stores the submission ID. 3. In the **Display** table, add the following information to a new row: | # | ID | Heading | Button | | --- | --- | --- | --- | | 1 | Delete | Delete | ![](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-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) (checked) | ![Dashboard layout displaying data fields for user information and actions.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Udesigner_View%20grid%20M3.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) 4. Click **Save Component**. ### Configure the Hidden Component Next, you'll create a [Hidden](/v1/docs/hidden-component) component to store the submission ID exported by the [ViewGrid](/v1/docs/viewgrid-component) component. Remember to use the same placeholder Property ID you used in the ViewGrid component's Outputs table. 1. Drag and drop a **Hidden** component onto the canvas, placing it below the `Dashboard` **ViewGrid** component. 2. In the **Property ID** and **Label Text** fields, enter `exportId`. 3. Click **Save Component**. ### Configure the Decisions Component Next, let's set up the [Decisions](/v1/docs/decisions-component) component to create an action when your end-user clicks the **Delete** button. On button-click, the Decisions component triggers the [Plug-In](/v1/docs/plug-in-component) component you'll set up next. That Plug-In component triggers the remote execute of Module 4. 1. Drag and drop a **Decisions** component onto the canvas, placing it below the `exportId` **Hidden** component. 2. In the **Property ID** and **Canvas** **Label Text** fields, enter `ruleButtons`. 3. In the **Inputs** table, enter the following: | # | Property ID | Type | Required | | --- | --- | --- | --- | | 1 | buttonClick | exact | Yes (checked) | 4. In the **Outputs** table, enter the following: | # | Property ID | Type | | --- | --- | --- | | 1 | pluginExecuteDelete | trigger | 5. In the **Conditionals** table, enter the following: | # | buttonClick | **pluginExecuteDelete_trigger** | | --- | --- | --- | | 1 | Delete | GO | ![Configuration settings for decision-making actions in a software interface.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Udesigner_decisions%20M3.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) 6. Click **Save Component**. ### Configure the Plug-In Component This [Plug-In](/v1/docs/plug-in-component) component executes the **Remote Execution for Deleting Submissions** **module** (Module 4). You'll need to revisit this Plug-In component later to finalize the connection. 1. Drag and drop a **Plug-In** component onto the canvas, placing it below the **Decisions** component. 2. In the **Property ID** and **Canvas** **Label Text** fields, enter `pluginExecuteDelete`. 3. From the **Internal Services** drop-down, select **Execute** **Module.** 4. In the **Inputs** table, enter the following: | # | Property ID | Mapping | Required | | --- | --- | --- | --- | | 1 | exportId | data.ids | Yes (checked) | 5. In the **Post Trigger** field, enter `pluginExecuteSubmissionsModule`. > This configuration ensures the dashboard refreshes after deleting a submission. ![Configuration settings for a plugin execution module with input and output mappings.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Udesigner_plugin_M3.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) 6. Click **Save Component**. 7. **Save** module. Here's how the updated module looks in the Module Builder: ![Overview of components in the Enablement Lab dashboard with highlighted modules and options.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Udesigner_M3_Final.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) ## Module 4 Configuration: Remote Execution for Deleting Submissions This module handles deleting submissions from Module 1. Clicking the dashboard's **Delete** button, the `pluginExecuteDelete` **Plug-In** component in Module 3 calls on Module 4. This action causes the [Initializer](/v1/docs/initializer-component) component to fire, which triggers the [Plug-In](/v1/docs/plug-in-component) component of Module 4 to run the **Deletes Multiple** **Module** **Submissions** API call. ### Configure the API Module Module 4 must be configured as an Unqork **API** module to ensure it executes on the server side. To begin, navigate to the Application page where your other modules are configured. 1. At the top right of the Application page, click **+ Create New**. 2. Select **Module**. 3. In the **Module Name** field, enter a name for your Module 4 module. 4. From the **Module Type** drop-down, select **API**. 5. Click **Create**. ### Enabling Server-Side Execution Only Before adding components to Module 4, you'll adjust the module settings. By setting the module to server-side execute, the module becomes inaccessible to anyone without Module Builder access. 1. At the top right of the Module Builder, click the ![ellipsisButtonDummy.jpg](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/ellipsisButtonDummy.jpg?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) **(ellipsis)** button. 2. Select **Module Settings**. 3. To the left of the modal, click **Module Settings**. 4. Set **Server-Side Execution Only** to ![files](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/toggle_ON(15).png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) **(ON)**. ![Settings panel showing options for server-side execution and user permissions configuration.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Udesigner_SSE.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) 5. Click **Save**. ### Update the `panelInfo` Panel Component Let's return to the Module Builder and begin configuring your Module 4. Next, let's make some updates to the components in the `panelInfo` **Panel** component. This information states the purpose of this remote execute module. #### Update the HTML Element Component 1. Hover over the `description` **HTML Element** component to open the configuration settings drawer. 2. In the **Content** field, replace the default text with the following: `This module is to host the Deletes Multiple Module Submissions call that is used to delete module submissions on the dashboard.`. 3. Click **Save Component**. #### Update the Hidden Component 1. Hover over the `method` **Hidden** component to open the configuration settings drawer. 2. In the **Default Value** field, replace the default value with `DELETE`. 3. Click **Save Component**. ### Update the `panelRequest` Panel Component Next, let's set up the `panelRequest` **Panel** component. Components in this [Panel](/v1/docs/panel-component) component are part of the API request and store the values the [Plug-In](/v1/docs/plug-in-component) component uses when running the **Delete Multiple Module Submissions** API call. #### Update the `requestParameter` Hidden Component 1. Hover over the `requestParameter` **Hidden** component to open the configuration settings drawer. 2. In the **Property ID** and **Label Text** fields, replace the default value with `ids`. ### Update the `panelConfig` Panel Component Now, let's update the `panelConfig` **Panel** component by adding an [Initializer](/v1/docs/initializer-component) and a [Plug-In](/v1/docs/plug-in-component) component. #### Configure the Initializer component Let's set up an [Initializer](/v1/docs/initializer-component) component to trigger the `pluginDeleteSubmissions` **Plug-In** component you’ll set up later. 1. Drag and drop an **Initializer** component onto the canvas, placing it inside the `panelConfig` **Panel** component. 2. In the **Property ID** and **Canvas** **Label Text** fields, enter `initExecuteDeleteSubmissions`. 3. From the **Trigger Type** drop-down, select **New Submission**. > [!NOTE] > The **New Submission** Trigger Type runs the Initializer component whenever the `pluginExecuteDelete` **Plug-In** component in your Module 3 calls Module 4. 4. In the **Outputs** table, enter the following: | Property ID | Type | Value | | --- | --- | --- | | pluginDeleteSubmissions | trigger | GO | 5. Click **Save Component**. #### Configure the Plug-In component The last step in configuring this module is setting up the [Plug-In](/v1/docs/plug-in-component) component that deletes submissions from Module 1. So, you'll need Module 1’s module ID to complete the configuration. 1. Drag and drop a **Plug-In** component onto the canvas, placing it inside the `panelConfig` **Panel** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `pluginDeleteSubmissions`. 3. From the **Internal Services** drop-down, select **Deletes Multiple** **Module** **Submissions**. 4. In the **Data Source URL** field, replace **{****module****Id}** with the module ID of Module 1. > [!NOTE] > You can retrieve the module ID from Module 1 from the source module's URL as follows: https://training.unqork.io/#/form/**5f8d9eb9f1a98d024e984c75**/edit. If you have created your own Module 1, enter your module's unique module ID instead. 5. In the **Inputs** table, enter the following: | Property ID | Mapping | Required | | --- | --- | --- | | ids | ids | ![](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-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) (checked) | 6. Click **Save Component**. 7. **Save** module. Here's how the completed module looks in the Module Builder: ![Dashboard interface displaying components for deleting multiple module submissions.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Udesigner_Module%204_final.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) ## Update Module 3: Simple Dashboard with Remote Execute The last step of the configuration ensures the dashboard's **Delete** button removes a submission. You'll enter the module ID of Module 4 in the `pluginExecuteDelete` **Plug-In** component to achieve this action. So, return to Module 4 and copy the module ID. ### Update the Plug-In component 1. Hover over the `pluginExecuteDelete` **Plug-In** component to open the configuration settings drawer. 2. In the **Data Source URL** field, replace **{****module****Id}** with `5f90843a7bfe8d023c981142`. > [!NOTE] > You can retrieve the module ID from Module 4 from the source module's URL as follows: https://training.unqork.io/#/form/**5f90843a7bfe8d023c981142**/edit . If you created your own Module 4, enter your module's unique module ID instead. 3. Click **Save Component**. 4. **Save** module. Here’s how the complete dashboard works in Express View: ![](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/alp_remotedelete_01_express.gif?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) ## Module 1 Configuration: Simple Module for Remote Execute Let's begin by creating the **Simple** **Module** **for Remote Execute** module. In this module, you'll set up fields to record the end-user's personal information. ### Configure the Text Field Components 1. In the Module Builder, drag and drop three **Text Field** components onto the canvas. 2. In the **Property ID** and **Label Text** fields, enter the following for each component: | # | Property ID | Label Text | | --- | --- | --- | | 1 | firstName | First Name | | 2 | middleName | Middle Name | | 3 | lastName | Last Name | 3. Click **Save & Close** for each component after adding it. ### Configure the Email Component 1. Drag and drop an **Email** component onto the canvas, placing it below the Text Field components. 2. In the **Property ID** and **Label Text,** enter `emailAddress`. 3. Click **Save & Close**. ### Configure the Date Input Component 1. Drag and drop a **Date Input** component onto the canvas, placing it below the **Email** component. 2. In the **Property ID** field, enter `dateOfBirth`. 3. In the **Label Text** field, enter `Date of Birth`. 4. Under the **Formatting** section, in the **Display (+/-) years from the current date** field, enter `125`. 5. Navigate to the component’s **Advanced** settings. 6. From the **Restrict Date selection to:** drop-down, select **Past Only**. 7. Click **Save & Close**. ### Configure the Button Component 1. Drag and drop a **Button** component onto the canvas, placing it below the **Date Input** component. 2. In the **Property ID** field, enter `btnSave`. 3. In the **Label Text** field, enter `Save`. 4. In the **Success Message field,** enter `Saved!`. 5. Click **Save & Close**. 6. **Save** your module. Here's how the completed module looks in the Module Builder: ![User information panel with fields for name, email, and date of birth.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Module%201.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) ## Module 2 Configuration: Remote Execute Module Next, you'll create the Remote Execution module (Module 2). This module contains the [Plug-In](/v1/docs/plug-in-component) component logic and exists on the server side. Meaning, it’s inaccessible to end-users. When you preview this module, you’ll see a blank screen. Module details are only accessible in the DevTools Console. Before adding components to Module 2, you'll adjust the module settings. By setting the module to server-side execute, the module becomes inaccessible to anyone without Module Builder access. 1. At the top right of the Module Builder, click the ![ellipsisButtonDummy.jpg](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/ellipsisButtonDummy.jpg?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) **(ellipsis)** button. 2. Select **Module Settings**. 3. To the left of the modal, select **Module Settings**. 4. Set **Server-Side Execution Only** to ![files](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/toggle_ON(15).png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) **(ON)**. ![Settings for module execution and express settings in a user interface.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Server%20side%20-ON.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) 5. Click **Save**. ### Configure the Initializer Component 1. In the Module Builder, drag and drop an **Initializer** component onto the canvas. 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 | | --- | --- | --- | | pluginGetSubmissions | trigger | GO | 5. Click **Save & Close**. ### Configure the First Hidden Component You'll use two [Hidden](/v1/docs/hidden-component) components in this configuration. The first Hidden component stores the module ID of the **Simple** **Module** **for Remote Execute (****Module** **1)**. For security purposes, you do not want this module ID stored in the database. So, we'll keep the **Store Data in Database** setting disabled. 1. Drag and drop a **Hidden** component onto the canvas, placing it below the **Initializer** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `moduleId`. 3. In the **Default Value** field, copy and paste the module Id of Module 1. > [!NOTE] > In this example, the module ID of **Simple** **Module** **for Remote Execute (****Module** **1)** is **5f8d9eb9f1a98d024e984c75**. If you created your own Module 1, enter that module's module ID. 4. Click **Save & Close**. ### Configure the Second Hidden Component This Hidden component stores the submission data retrieved by the `pluginGetSubmissions` **Plug-In** component. 1. Drag and drop the second **Hidden** component onto the canvas, placing it below the first Hidden component. 2. In the **Property ID** and **Canvas** **Label Text** fields, enter `submissions`. 3. Set **Store Data in Database** to ![files](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/toggle_ON(15).png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) **(ON)**. Doing so allows the submission data to be brought into the dashboard. 4. Click **Save & Close**. ### Configure the Plug-In Component The [Plug-In](/v1/docs/plug-in-component) component retrieves the submission data from the source module. 1. Drag and drop a **Plug-In** component onto the canvas, placing it below the Initializer component. 2. In the **Property ID** and **Canvas** **Label Text** fields, enter `pluginGetSubmissions`. 3. In the **Inputs** table, enter the following: | Property ID | Mapping | | --- | --- | | moduleId | moduleId | | 'firstName,lastName,emailAddress' | fields | > [!NOTE] > The first row defines which module you’ll retrieve the submissions from. The second row defines which fields you'll send to the dashboard. Here, its references to `firstName`, `lastName`, and `emailAddress`. The values entered in the Mapping column (`moduleId` and `fields`) are native to Unqork. 4. From the **Internal Services** drop-down, select **List Submissions for Dashboard**. The **Request Type** and **Data Source URL** are then prepopulated. 5. Click **Save**. ### Configure the Data Workflow Component This [Data Workflow](/v1/docs/data-workflow-component) component retrieves the submission data from the [Plug-In](/v1/docs/plug-in-component) component and sends it to the `submissions` **Hidden** component. 1. Drag and drop a **Data Workflow** component onto the canvas, placing it below your Hidden components. 2. In the **Canvas Label Text** and **Property Name** fields, enter `dwfSaveSubmissions`. #### Configure the Input Operator 1. Drag and drop an **Input** operator onto the Data Workflow canvas. 2. Configure the operator's Info window as follows: | Setting | Value | | --- | --- | | Category | Input | | Component | pluginGetSubmissions | | Required | Yes | | Source | Default | #### Configure the Output Operator 1. Drag and drop an **Output** operator onto the Data Workflow canvas. 2. Configure the operator's Info window as follows: | Setting | Value | | --- | --- | | Category | Output | | Component | submissions | | Action | value | 3. Connect the output port (right) of the **Input** operator to the input port (left) of the **Output** operator. 4. Click **Save**. 5. **Save** the module. Here's how the completed module looks in the Module Builder:![Interface showing components for remote execution in an enablement lab environment.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Module%202.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) ## Module 3 Configuration: Remote Execute Module The **Simple Dashboard With Remote Execute module (****Module** **3)** calls on the **Remote Execution** **module** **(****Module** **2)**. The [Plug-In](/v1/docs/plug-in-component) component in this module retrieves the submission data to display in a simple dashboard. ### Configure the Initializer Component Like the last module, the [Initializer](/v1/docs/initializer-component) component triggers the [Plug-In](/v1/docs/plug-in-component) component on page-load. 1. In the Module Builder, drag and drop an **Initializer** component onto the canvas. 2. In the **Property ID** and **Canvas** **Label Text** fields, enter `initPluginRemoteSubmissionsModule`. 3. From the **Trigger Type** drop-down, select **New Submission**. 4. In the **Outputs** table, enter the following: | Property ID | Type | Value | | --- | --- | --- | | pluginExecuteSubmissionsModule | trigger | GO | 5. Click **Save & Close**. ### Configure the Plug-In Component Next, let's add a [Plug-In](/v1/docs/plug-in-component) component to retrieve the submission data in the `submissions` **Hidden** component of the **Remote Execution** **module** **(****Module** **2)**. Then, you’ll store the submission data in a new [Hidden](/v1/docs/hidden-component) component you'll create in this module. 1. Drag and drop a **Plug-In** component onto the canvas, placing it below the Initializer component. 2. In the **Property ID** and **Canvas** **Label Text** field, enter `pluginExecuteSubmissionsModule`. 3. In the **Outputs** table, enter the following: | Property ID | Mapping | | --- | --- | | submissionsFromPlugin | data.resolved.submissions | > [!NOTE] > The Property ID references a Hidden component you'll set up in the next step. The Mapping column tells the system to retrieve the submission data from the `submissions` **Hidden** component in Module 2. 4. From the **Internal Services** drop-down, select **Execute Module**. The **Request Type** and **Data Source URL** are then pre-populated. 5. In the **Data Source URL**, replace **{****module****ID}** with the module ID from the Remote Execution module (Module 2). > [!NOTE] > In this example, the module ID of the **Remote Execution** **module** **(****Module** **2)** is **5f8d9fec19c4e6024ed45c48**. 6. Click **Save**. ### Configure the Hidden Component Now, let's add a [Hidden](/v1/docs/hidden-component) component that stores the submissions from the **Remote Execution** **module** **(****Module** **2)**. 1. Drag and drop a **Hidden** component onto the canvas, placing it below the Plug-In component. 2. In the **Property ID** and **Canvas** **Label Text** fields, enter `submissionsFromPlugin`. 3. Click **Save & Close**. ### Configure the ViewGrid Component Now, let's add a [Hidden](/v1/docs/hidden-component) component that stores the submissions from the **Remote Execution** **module** **(****Module** **2)**. 1. Drag and drop a **ViewGrid** component onto the canvas, placing it below the Hidden component. 2. In the **Label** field, enter `Dashboard`. 3. In the **Property Name** field, enter `gridDashboard`. 4. In the **Action** field, enter `null`. > [!NOTE] > Doing so removes the default Submit button from the dashboard. 5. In the **Inputs** table, enter `submissionsFromPlugin`. 6. In the **Display** table, enter the following: | ID | Formula | Heading | | --- | --- | --- | | firstName | | First Name | | lastName | | Last Name | | emailAddress | | Email | 7. Click **Save**. 8. **Save** module. ## Module 3: Simple Dashboard with Remote Execute Let’s stay in your Module 3 and add the **Delete** button and supporting components. After creating Module 4, we’ll revisit Module 3 one more time. ### Update the ViewGrid Component 1. Hover over the `gridDashboard` **ViewGrid** component to open the configuration settings. 2. In the **Outputs** table, enter the following: | ID | Mapping | | --- | --- | | exportId | _id | > [!NOTE] > Set up the Outputs table to export submission IDs. When you click a row’s **Delete** button, that row’s submission ID is exported to a Hidden component. Doing so allows the **Delete Multiple Module Submissions API** call to identify which submission to remove. For now, use a placeholder Property ID in the Outputs table. In the next step, you’ll configure the Hidden component that stores the submission ID. 3. In the **Display** table, add the following row: | ID | Heading | Button | | --- | --- | --- | | Delete | Delete | ![](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-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) (checked) | ![Configuration settings for a ViewGrid, including inputs and outputs for data mapping.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Viewgrid%20module%203.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) 4. Click **Save**. ### Configure the Hidden Component Next, you'll create a [Hidden](/v1/docs/hidden-component) component to store the submission ID exported by the [ViewGrid](/v1/docs/viewgrid-component) component. Remember to use the same placeholder Property ID you used in the ViewGrid component's Outputs table. 1. Drag and drop a **Hidden** component onto the canvas, placing it below the `Dashboard` **ViewGrid** component. 2. In the **Property ID** and **Canvas** **Label Text** fields, enter `exportId`. 3. Click **Save & Close**. ### Configure the Decisions Component Next, let's set up the [Decisions](/v1/docs/decisions-component) component to create an action when your end-user clicks the **Delete** button. On button-click, the Decisions component triggers the [Plug-In](/v1/docs/plug-in-component) component you'll set up next. That Plug-In component triggers the remote execute of Module 4. 1. Drag and drop a **Decisions** component onto the canvas, placing it below the `exportId` **Hidden** component. 2. In the **Property ID** and **Canvas** **Label Text** fields, enter `ruleButtons`. 3. In the **Inputs** table, enter the following: | Property ID | Type | Required | | --- | --- | --- | | buttonClick | 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-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) (checked) | 4. In the **Outputs** table, enter the following: | Property ID | Type | | --- | --- | | pluginExecuteDelete | trigger | 5. In the **Micro Decisions** table, enter the following: | buttonClick | **pluginExecuteDelete_trigger** | | --- | --- | | Delete | GO | ![Settings interface displaying inputs and outputs for decision-making actions in a system.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Decisions%20Module%203.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) 6. Click **Save**. ### Configure the Plug-In Component This [Plug-In](/v1/docs/plug-in-component) component executes the **Remote Execution for Deleting Submissions** **module** (Module 4). You'll need to revisit this Plug-In component later to finalize the connection. 1. Drag and drop a **Plug-In** component onto the canvas, placing it below the **Decisions** component. 2. In the **Property ID** and **Canvas** **Label Text** fields, enter `pluginExecuteDelete`. 3. From the **Internal Services** drop-down, select **Execute** **Module.** 4. In the **Inputs** table, enter the following: | Property ID | Mapping | Required | | --- | --- | --- | | exportId | data.ids | ![](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-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) (checked) | 5. In the **Post Trigger** field, enter `pluginExecuteSubmissionsModule`. > Doing ensures the dashboard refreshes after deleting a submission. ![Configuration settings for a plugin including data source and request type options.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/pluginExecuteDelete-Module%203.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) 6. Click **Save**. 7. Save module. Here's how the updated module looks in the Module Builder: ![Dashboard interface displaying various components and modules for remote execution tasks.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Modue%203%20-final%20image.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) ## Module 4 Configuration: Remote Execution for Deleting Submissions This module handles deleting submissions from Module 1. Clicking the dashboard's **Delete** button, the `pluginExecuteDelete` **Plug-In** component in Module 3 calls on Module 4. This action causes the [Initializer](/v1/docs/initializer-component) component to fire, which triggers the [Plug-In](/v1/docs/plug-in-component) component of Module 4 to run the **Deletes Multiple** **Module** **Submissions** API call. ### Configure the API Module Module 4 must be configured as an Unqork **API** module to ensure it executes on the server side. To begin, navigate to the Application page where your other modules are configured. 1. At the top right of the Application page, click **+ Create New**. 2. Select **Module**. 3. In the **Module Name** field, enter a name for your Module 4 module. 4. From the **Module Type** drop-down, select **API**. 5. Click **Create**. ### Enabling Server-Side Execution Only Before adding components to Module 4, you'll adjust the module settings. By setting the module to server-side execute, the module becomes inaccessible to anyone without Module Builder access. 1. At the top right of the Module Builder, click the ![ellipsisButtonDummy.jpg](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/ellipsisButtonDummy.jpg?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) **(ellipsis)** button. 2. Select **Module Settings**. 3. To the left of the modal, click **Module Settings**. 4. Set **Server-Side Execution Only** to ![files](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/toggle_ON(15).png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) **(ON)**. ![Settings for module execution and express settings in a user interface.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Server%20side%20-ON.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) 5. Click **Save**. ### Update the `panelInfo` Panel Component Let's return to the Module Builder and begin configuring your Module 4. Next, let's make some updates to the components in the `panelInfo` **Panel** component. This information states the purpose of this remote execute module. #### Update the HTML Element Component 1. Hover over the `description` **HTML Element** component to open the configuration setting. 2. In the **Content** field, replace the default text with the following: `This module is to host the Deletes Multiple Module Submissions call that is used to delete module submissions on the dashboard.` 3. Click **Save & Close**. #### Update the Hidden Component 1. Hover over the `method` **Hidden** component to open the configuration settings. 2. In the **Default Value** field, replace the default value with `DELETE`. 3. Click **Save & Close**. ### Update the `panelRequest` Panel Component Next, let's set up the `panelRequest` **Panel** component. Components in this [Panel](/v1/docs/panel-component) component are part of the API request and store the values the [Plug-In](/v1/docs/plug-in-component) component uses when running the **Delete Multiple Module Submissions** API call. #### Update the `requestParameter` Hidden Component 1. Hover over the `requestParameter` **Hidden** component to open the configuration settings drawer. 2. In the **Property ID** and **Canvas Label Text** fields, replace the default value with `ids`. ### Update the `panelConfig` Panel Component Now, let's update the `panelConfig` **Panel** by adding an [Initializer](/v1/docs/initializer-component) and a [Plug-In](/v1/docs/plug-in-component) component. #### Configure the Initializer component Let's set up an [Initializer](/v1/docs/initializer-component) component to trigger the `pluginDeleteSubmissions` **Plug-In** component you’ll set up later. 1. Drag and drop an **Initializer** component onto the canvas, placing it inside the `panelConfig` **Panel** component. 2. In the **Property ID** and **Canvas** **Label Text** fields, enter i`nitExecuteDeleteSubmissions`. 3. From the **Trigger Type** drop-down, select **New Submission**. > [!NOTE] > The **New Submission** Trigger Type runs the Initializer component whenever the `pluginExecuteDelete` **Plug-In** component in your Module 3 calls Module 4. 4. In the **Outputs** table, enter the following: | Property ID | Type | Value | | --- | --- | --- | | pluginDeleteSubmissions | trigger | GO | 5. Click **Save & Close**. #### Configure the Plug-In component The last step in configuring this module is setting up the [Plug-In](/v1/docs/plug-in-component) component that deletes submissions from Module 1. So, you'll need Module 1’s module ID to complete the configuration. 1. Drag and drop a **Plug-In** component onto the canvas, placing it inside the `panelConfig` **Panel** component. 2. In the **Property ID** and **Canvas Label Text** fields, enter `pluginDeleteSubmissions`. 3. From the **Internal Services** drop-down, select **Deletes Multiple** **Module** **Submissions.** 4. In the **Data Source URL** field, replace **{****module****Id}** with the module ID of Module 1. > [!NOTE] > You can retrieve the module ID from Module 1 from the source module's URL as follows: https://training.unqork.io/#/form/**5f8d9eb9f1a98d024e984c75**/edit. If you have created your own Module 1, enter your module's unique module ID instead. 5. In the **Inputs** table, enter the following: | Property ID | Mapping | Required | | --- | --- | --- | | ids | ids | Yes (checked) | 6. Click **Save**. 7. **Save** module. Here's how the completed module looks in the Module Builder: ![Dashboard module for deleting multiple module submissions with configuration options displayed.](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Module%204-%20final%20module.png?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) ## Update Module 3: Simple Dashboard with Remote Execute The last step of the configuration ensures the dashboard's **Delete** button removes a submission. You'll enter the module ID of Module 4 in the `pluginExecuteDelete` **Plug-In** component to achieve this action. So, return to Module 4 and copy the module ID. ### Update the Plug-In component 1. Hover over the `pluginExecuteDelete` **Plug-In** component to open the configuration settings drawer. 2. In the **Data Source URL** field, replace **{****module****Id}** with `5f90843a7bfe8d023c981142`. > [!NOTE] > You can retrieve the module ID from Module 4 from the source module's URL as follows: https://training.unqork.io/#/form/**5f90843a7bfe8d023c981142**/edit . If you created your own Module 4, enter your module's unique module ID instead. 3. Click **Save**. 4. **Save** module. Here’s how the complete dashboard works in Express View: ![](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/alp_remotedelete_01_express.gif?sv=2026-02-06&spr=https&st=2026-11-07T17%3A57%3A57Z&se=2026-11-07T18%3A57%3A57Z&sr=c&sp=r&sig=oV4yl9PrK%2FsPQn%2BRKcVEEhYDWlyCsn%2FP2gneqtOigQI%3D) 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. APIs (application programming interfaces) are a set of protocols and definitions developers use to build and integrate application software. APIs act as the connective tissue between products and services. 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. 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. A Property ID is the unique field ID used by Unqork to track and link components in your module. 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 DevTools Console helps you securely store, build, test, and deploy your software. A modal is a window that appears on top of the content you are currently viewing. 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. 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 . The Post Trigger value fires after a component has completed its action. For example, post triggering a component to display the data received from a Plug-In component's API call. HTML (Hyper Text Markup Language) is the standard markup language for for achieving font, color, graphic, and hyperlink effects when creating web pages. A UI (User Interface) Drawer is a layout panel that slides out from the side of the screen to display content. In UDesigner, components display their configuration panels in a drawer. 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 Property ID is the unique field ID used by Unqork to track and link components in your module.