--- title: "How To: Create a Variable Endpoint for an Integration Gateway Recipe" slug: "how-to-create-a-variable-endpoint-for-an-integration-gateway-recipe" updated: 2025-09-25T20:51:51Z published: 2025-09-25T20:51:51Z canonical: "docs.unqork.io/how-to-create-a-variable-endpoint-for-an-integration-gateway-recipe" --- > ## 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: Create a Variable Endpoint for an Integration Gateway Recipe ## Overview The Integration Gateway supports **variable path parameters for endpoints**. Variable path parameters let you insert a dynamic value into an pathway. For example, if you create an Unqork Connector that retrieves a module's [submission data](/v1/docs/submission-data), you can create an endpoint with a variable parameter that uses the module's ID in the pathway. Variable path parameters let you create endpoints similar to [Unqork's API](https://developers.unqork.io/). For example, the Unqork [Get Module Submissions](https://developers.unqork.io/#operation/getModuleSubmissions) API endpoint looks like the following: `https://{host}/api/1.0/modules/{moduleId}/submissions.` The `{host}` and `{moduleId}` values are variables that you replace to target a specific environment and [module](/v1/docs/what-is-a-module). ## Create a Variable Endpoint for an Existing Recipe For this example, you'll create and connect a variable endpoint to an existing recipe. Later, we'll set up a module with a [Plug-In](//docs/plug-in-component) component that targets the variable endpoint. ### What You Need - 1 [Integration Gateway recipe](/v1/docs/how-to-create-connections-and-recipes-using-the-integration-gateway) - 1 [Integration Gateway endpoint](/v1/docs/how-to-create-connections-and-recipes-using-the-integration-gateway) - 1 [Workspace](/v1/docs/introduction-to-workspaces) - 1 [Module-type application](/v1/docs/working-with-module-type-apps) - 1 [Module](/v1/docs/introduction-to-the-module-builder) ### Creating the Variable Endpoint First, use the Integration Gateway to create a new endpoint for an existing recipe. These instructions assume you have an existing recipe where you'll create an endpoint. > [!NOTE] > For this example, we'll use the Integration Gateway recipe set up in the [How to: Retrieve a Payload Using an Unqork Connector](/v1/docs/how-to-retrieve-a-payload-using-an-unqork-connector) article. To create a new variable endpoint: 1. At the top right of the Unqork Designer Platform, click **Settings ▾**. 2. Select **Administration**. 3. Under Integration, click **API Access Management**. 4. Select the **API Platform** tab. ![](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/platformTab_thumb_0_0.jpg?sv=2026-02-06&spr=https&st=2026-11-08T03%3A56%3A53Z&se=2026-11-08T04%3A56%3A53Z&sr=c&sp=r&sig=Sc%2FkgXaQ1Ob2O4wSEgYh1nq34pCZj35BuLyk777RBk4%3D) 5. Select your **API Collection**. 6. Click **+ New Endpoint**. 7. From the **Recipe*** drop-down, select an existing recipe. > [!NOTE] > For this example, we'll use the Unqork **Get Module Submissions** recipe created in the [How to: Retrieve a Payload Using an Unqork Connector](/v1/docs/how-to-retrieve-a-payload-using-an-unqork-connector) article. 8. From the **HTTP Method*** drop-down, select the request method for the recipe. For the **Get** **Module** **Submissions** endpoint, select **GET**. 9. In the **Endpoint Name*** field, enter a unique name. This value displays in a Plug-In component as an External Service. #### Configuring the Variable Endpoint Path The Endpoint Path field accepts variable parameters. To create a variable parameter, use a single set of curly braces {} to enclose a variable value. For this example, the Unqork **Get** **Module** **Submissions** recipe uses the variable value `moduleId `to retrieve submissions from the specified module. Adding `{moduleId}` to the endpoint path displays the recipe's `moduleId `value when calling the endpoint. 1. In the **Endpoint Path***, enter a value that includes a variable parameter. For example `enablement/{moduleId}/getModuleSubmissions`. ![](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/endpoint_thumb_0_0.jpg?sv=2026-02-06&spr=https&st=2026-11-08T03%3A56%3A53Z&se=2026-11-08T04%3A56%3A53Z&sr=c&sp=r&sig=Sc%2FkgXaQ1Ob2O4wSEgYh1nq34pCZj35BuLyk777RBk4%3D) 2. Click **Add Endpoint**. 3. On the endpoint tile, click the **··· (options)** button. 4. Select **Activate Endpoint**. The endpoint's status changes from **Never Active** to **Active**. Your variable endpoint is now active for you to select it in a Plug-In component. ## Configuration The last step of the process is to configure a module to retrieve Unqork application data using the variable endpoint. These instructions assume you have a module saved with a title. > [!NOTE] > For this example, we'll use the Integration Gateway recipe set up in the [How to: Retrieve a Payload Using an Unqork Connector](/v1/docs/how-to-retrieve-a-payload-using-an-unqork-connector) article. ### Configure the Text Field Component Configure a [Text Field](/v1/docs/text-field-component) component for entering the module ID. This value inputs into the Plug-In component you'll configure in the next step. 1. In the Module Builder, drag and drop a **T****ext Field** component onto the canvas. 2. In the Property ID field, enter **text****Module****Id**. 3. In the Canvas Label Text field, enter `Module ID:`. 4. Click **Save & Close**. ### Configure the Plug-In Component Add a [Plug-In](/v1/docs/plug-in-component) component to use your new Integration Gateway endpoint and retrieve your workspace application. 1. Drag and drop a ![](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/Screenshot 2025-09-11 151123.png?sv=2026-02-06&spr=https&st=2026-11-08T03%3A56%3A53Z&se=2026-11-08T04%3A56%3A53Z&sr=c&sp=r&sig=Sc%2FkgXaQ1Ob2O4wSEgYh1nq34pCZj35BuLyk777RBk4%3D) **Plug-In** component onto your canvas, placing it below the **text****Module****Id** **T****ext Field** component. 2. In the Property ID and Canvas Label Text fields, enter `plugGetModuleSubmissions`. 3. Set the **Service Type** to **External**. 4. From the **External Services** drop-down, select the endpoint you created. In the **Data Source URL** field, the variable parameter from the Configuring the Variable Endpoint Path section now displays in {{}} (double curly brackets). ![](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/plugin_thumb_0_0.jpg?sv=2026-02-06&spr=https&st=2026-11-08T03%3A56%3A53Z&se=2026-11-08T04%3A56%3A53Z&sr=c&sp=r&sig=Sc%2FkgXaQ1Ob2O4wSEgYh1nq34pCZj35BuLyk777RBk4%3D) 5. In the **Data Source URL** field, modify the variable value to use the module's **textModuleId** **T****ext Field** component value. For example, `{{moduleId}}` becomes `{{data.textModuleId}}`. Now, when users enter a value in the **textModuleId** **T****ext Field** component field, the Data Source URL updates the value between the brackets. 6. In the **INPUTS** table, enter the following: | Property ID | Mapping | | --- | --- | | textModuleId | moduleId | 7. Click **Save**. ### Configure the Button Component Next, add a [Button](/v1/docs/button-component) component to trigger the Plug-In component. 1. Drag and drop a **Button** component onto the canvas, placing it below your Plug-In component. 2. In the Property ID field, enter **btnGet****Module****Submissions**. 3. In the Canvas Label Text field, enter `Get Module Submissions`. 4. Set the **Action Type** to **Event**. 5. In the **Trigger** field, enter `plugGetModuleSubmissions`. 6. Click **Save & Close**. 7. **Save** your module. ### View the API Request Payload in the DevTools Console Now that you've built your endpoint and created a module that can call it, verify the endpoint works correctly. 1. **Preview** your module in Express View. 2. Right-click anywhere in Express View and click **Inspect**. The DevTools Console displays. > [!NOTE] > Your browser type and settings might look different than the image and steps displayed below. 3. From the DevTools Console, select the **Network** tab. 4. In the **Module** **ID** field, enter a module ID that contains submission data. 5. Click the **Get** **Module** **Submissions** button. The **execute** request displays in the **Network** tab's list. 6. Select the **execute** request, then click **Payload**. The **Request Payload** data displays. In the Request Payload, the endpoint URL replaces the Plug-In component {{data.textModuleId}} variable parameter with the value from the **textModuleId** **T****ext Field** component field. ![](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/networkTab_thumb_0_0.jpg?sv=2026-02-06&spr=https&st=2026-11-08T03%3A56%3A53Z&se=2026-11-08T04%3A56%3A53Z&sr=c&sp=r&sig=Sc%2FkgXaQ1Ob2O4wSEgYh1nq34pCZj35BuLyk777RBk4%3D) The endpoint URL updates every time you call the endpoint using a different module ID. ## Resources - [Integration Administration](/v1/docs/adm-intro-integration-administration). - [How to: Create an Unqork Connector Using the Integration Gateway](/v1/docs/how-to-create-an-unqork-connector-using-the-integration-gateway). - [How to: Retrieve a Payload Using an Unqork Connector](/v1/docs/how-to-retrieve-a-payload-using-an-unqork-connector). - [How to: Get Salesforce Contact Records](/v1/docs/how-to-get-salesforce-contact-records). - [How to: Create Salesforce Contact Records](/v1/docs/how-to-create-salesforce-contact-records). 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 . 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. The DevTools Console helps you securely store, build, test, and deploy your software.