You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/connectors/connectors-native-reqres.md
+41-20Lines changed: 41 additions & 20 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -16,9 +16,9 @@ This how-to guide shows create a logic app workflow that can receive and handle
16
16
17
17
> [!NOTE]
18
18
>
19
-
> The Response action works only when you use the Request trigger.
19
+
> The Response action works only when you use the **Request** trigger.
20
20
21
-
For example, this list describes some tasks that your workflow can perform when you use the Request trigger and Response action:
21
+
For example, this list describes some tasks that your workflow can perform when you use the **Request** trigger and Response action:
22
22
23
23
* Receive and respond to an HTTPS request for data in an on-premises database.
24
24
@@ -32,13 +32,34 @@ To run your workflow by sending an outgoing or outbound request instead, use the
32
32
33
33
* An Azure account and subscription. If you don't have a subscription, you can [sign up for a free Azure account](https://azure.microsoft.com/free/?WT.mc_id=A261C142F).
34
34
35
-
* The logic app workflow where you want to receive the inbound HTTPS request. To start your workflow with a Request trigger, you have to start with a blank workflow. To use the Response action, your workflow must start with the Request trigger.
35
+
* The logic app workflow where you want to receive the inbound HTTPS request. To start your workflow with a **Request** trigger, you have to start with a blank workflow. To use the Response action, your workflow must start with the **Request** trigger.
36
+
37
+
* To test the example workflow in this guide, you need a tool that can send HTTP requests to the endpoint created by the **Request** trigger, for example:
38
+
39
+
-[Visual Studio Code](https://code.visualstudio.com/download) with an [extension from Visual Studio Marketplace](https://marketplace.visualstudio.com/vscode)
> For scenarios where you have sensitive data, such as credentials, secrets, access tokens, API keys,
54
+
> and other such information, make sure to use a tool that works only locally or offline and has
55
+
> the necessary security features to protect your data. To avoid public exposure, use a tool that
56
+
> doesn't sync your data to the cloud and doesn't require you to create an online account.
36
57
37
58
<aname="add-request-trigger"></a>
38
59
39
60
## Add a Request trigger
40
61
41
-
The Request trigger creates a manually callable endpoint that handles *only* inbound requests over HTTPS. When the caller sends a request to this endpoint, the Request trigger fires and runs the workflow. For information about how to call this trigger, review [Call, trigger, or nest workflows with HTTPS endpoints in Azure Logic Apps](../logic-apps/logic-apps-http-endpoint.md).
62
+
The **Request** trigger creates a manually callable endpoint that handles *only* inbound requests over HTTPS. When the caller sends a request to this endpoint, the **Request** trigger fires and runs the workflow. For information about how to call this trigger, review [Call, trigger, or nest workflows with HTTPS endpoints in Azure Logic Apps](../logic-apps/logic-apps-http-endpoint.md).
42
63
43
64
## [Consumption](#tab/consumption)
44
65
@@ -51,7 +72,7 @@ The Request trigger creates a manually callable endpoint that handles *only* inb
51
72
| Property name | JSON property name | Required | Description |
|**HTTP POST URL**| {none} | Yes | The endpoint URL that's generated after you save your workflow and is used for sending a request that triggers your workflow. |
54
-
|**Request Body JSON Schema**|`schema`| No | The JSON schema that describes the properties and values in the incoming request body. The designer uses this schema to generate tokens for the properties in the request. That way, your workflow can parse, consume, and pass along outputs from the Request trigger into your workflow. <br><br>If you don't have a JSON schema, you can generate the schema from a sample payload by using the **Use sample payload to generate schema** capability. |
75
+
|**Request Body JSON Schema**|`schema`| No | The JSON schema that describes the properties and values in the incoming request body. The designer uses this schema to generate tokens for the properties in the request. That way, your workflow can parse, consume, and pass along outputs from the **Request** trigger into your workflow. <br><br>If you don't have a JSON schema, you can generate the schema from a sample payload by using the **Use sample payload to generate schema** capability. |
55
76
56
77
The following example shows a sample JSON schema:
57
78
@@ -115,7 +136,7 @@ The Request trigger creates a manually callable endpoint that handles *only* inb
115
136
116
137
To generate a JSON schema that's based on the expected payload (data), you can use a tool such as [JSONSchema.net](https://jsonschema.net), or you can follow these steps:
117
138
118
-
1. In the Request trigger, select **Use sample payload to generate schema**.
139
+
1. In the **Request** trigger, select **Use sample payload to generate schema**.
119
140
120
141

121
142
@@ -161,7 +182,7 @@ The Request trigger creates a manually callable endpoint that handles *only* inb
161
182
}
162
183
```
163
184
164
-
1. In the Request trigger's title bar, select the ellipses button (**...**).
185
+
1. In the **Request** trigger's title bar, select the ellipses button (**...**).
165
186
166
187
1. In the trigger's settings, turn on **Schema Validation**, and select **Done**.
167
188
@@ -193,7 +214,7 @@ The Request trigger creates a manually callable endpoint that handles *only* inb
193
214
> [!NOTE]
194
215
>
195
216
> If you want to include the hash or pound symbol (**#**) in the URI
196
-
> when making a call to the Request trigger, use this encoded version instead: `%25%23`
217
+
> when making a call to the **Request** trigger, use this encoded version instead: `%25%23`
197
218
198
219
## [Standard](#tab/standard)
199
220
@@ -206,7 +227,7 @@ The Request trigger creates a manually callable endpoint that handles *only* inb
206
227
| Property name | JSON property name | Required | Description |
| **HTTP POST URL** | {none} | Yes | The endpoint URL that's generated after you save your workflow and is used for sending a request that triggers your workflow. |
209
-
| **Request Body JSON Schema** | `schema` | No | The JSON schema that describes the properties and values in the incoming request body. The designer uses this schema to generate tokens for the properties in the request. That way, your workflow can parse, consume, and pass along outputs from the Request trigger into your workflow. <br><br>If you don't have a JSON schema, you can generate the schema from a sample payload by using the **Use sample payload to generate schema** capability. |
230
+
| **Request Body JSON Schema** | `schema` | No | The JSON schema that describes the properties and values in the incoming request body. The designer uses this schema to generate tokens for the properties in the request. That way, your workflow can parse, consume, and pass along outputs from the **Request** trigger into your workflow. <br><br>If you don't have a JSON schema, you can generate the schema from a sample payload by using the **Use sample payload to generate schema** capability. |
210
231
211
232
The following example shows a sample JSON schema:
212
233
@@ -270,7 +291,7 @@ The Request trigger creates a manually callable endpoint that handles *only* inb
270
291
271
292
To generate a JSON schema that's based on the expected payload (data), you can use a tool such as [JSONSchema.net](https://jsonschema.net), or you can follow these steps:
272
293
273
-
1. In the Request trigger, select **Use sample payload to generate schema**.
294
+
1. In the **Request** trigger, select **Use sample payload to generate schema**.
274
295
275
296

276
297
@@ -316,7 +337,7 @@ The Request trigger creates a manually callable endpoint that handles *only* inb
316
337
}
317
338
```
318
339
319
-
1. On the designer, select the Request trigger. On the information pane that opens, select the **Settings** tab.
340
+
1. On the designer, select the **Request** trigger. On the information pane that opens, select the **Settings** tab.
320
341
321
342
1. Expand **Data Handling**, and set **Schema Validation** to **On**.
322
343
@@ -348,12 +369,12 @@ The Request trigger creates a manually callable endpoint that handles *only* inb
348
369
> [!NOTE]
349
370
>
350
371
> If you want to include the hash or pound symbol (**#**) in the URI
351
-
> when making a call to the Request trigger, use this encoded version instead: `%25%23`
372
+
> when making a call to the **Request** trigger, use this encoded version instead: `%25%23`
352
373
>
353
-
> The URL for the Request trigger is associated with your workflow's storage account. This URL
374
+
> The URL for the **Request** trigger is associated with your workflow's storage account. This URL
354
375
> changes if the storage account changes. For example, with Standard logic apps, if you manually
355
376
> change your storage account and copy your workflow to the new storage account, the URL for
356
-
> the Request trigger also changes to reflect the new storage account. The same workflow has a different URL.
377
+
> the **Request** trigger also changes to reflect the new storage account. The same workflow has a different URL.
357
378
358
379
---
359
380
@@ -370,7 +391,7 @@ For information about security, authorization, and encryption for inbound calls
370
391
371
392
## Trigger outputs
372
393
373
-
The following table lists the outputs from the Request trigger:
394
+
The following table lists the outputs from the **Request** trigger:
374
395
375
396
| JSON property name | Data type | Description |
376
397
|--------------------|-----------|-------------|
@@ -381,7 +402,7 @@ The following table lists the outputs from the Request trigger:
381
402
382
403
## Add a Response action
383
404
384
-
When you use the Request trigger to receive inbound requests, you can model the response and send the payload results back to the caller by using the Response built-in action, which works *only* with the Request trigger. This combination with the Request trigger and Response action creates the [request-response pattern](https://en.wikipedia.org/wiki/Request%E2%80%93response). Except for inside Foreach loops and Until loops, and parallel branches, you can add the Response action anywhere in your workflow.
405
+
When you use the **Request** trigger to receive inbound requests, you can model the response and send the payload results back to the caller by using the Response built-in action, which works *only* with the **Request** trigger. This combination with the **Request** trigger and Response action creates the [request-response pattern](https://en.wikipedia.org/wiki/Request%E2%80%93response). Except for inside Foreach loops and Until loops, and parallel branches, you can add the Response action anywhere in your workflow.
385
406
386
407
> [!IMPORTANT]
387
408
>
@@ -409,7 +430,7 @@ When you use the Request trigger to receive inbound requests, you can model the
409
430
410
431
1. On the workflow designer, [follow these general steps to find and add the Response built-in action named **Response**](../logic-apps/create-workflow-with-trigger-or-action.md?tabs=consumption#add-action).
411
432
412
-
For simplicity, the following examples show a collapsed Request trigger.
433
+
For simplicity, the following examples show a collapsed **Request** trigger.
413
434
414
435
1. In the action information box, add the required values for the response message.
415
436
@@ -463,13 +484,13 @@ When you use the Request trigger to receive inbound requests, you can model the
463
484
464
485
## Test your workflow
465
486
466
-
To test your workflow, send an HTTP request to the generated URL. For example, you can use local tools or apps such as [Insomnia](https://insomnia.rest/) or [Bruno](https://www.usebruno.com/) to send the HTTP request.
487
+
To trigger your workflow, send an HTTP request to the URL generated for the **Request** trigger, including the method that the **Request** trigger expects, by using your HTTP request tool and its instructions.
467
488
468
-
For more information about the trigger's underlying JSON definition and how to call this trigger, see these topics, [Request trigger type](../logic-apps/logic-apps-workflow-actions-triggers.md#request-trigger) and [Call, trigger, or nest workflows with HTTP endpoints in Azure Logic Apps](../logic-apps/logic-apps-http-endpoint.md).
489
+
For more information about the trigger's underlying JSON definition and how to call this trigger, see these topics, [**Request** trigger type](../logic-apps/logic-apps-workflow-actions-triggers.md#request-trigger) and [Call, trigger, or nest workflows with HTTP endpoints in Azure Logic Apps](../logic-apps/logic-apps-http-endpoint.md).
469
490
470
491
## Security and authentication
471
492
472
-
In a Standard logic app workflow that starts with the Request trigger (but not a webhook trigger), you can use the Azure Functions provision for authenticating inbound calls sent to the endpoint created by that trigger by using a managed identity. This provision is also known as "**Easy Auth**". For more information, review [Trigger workflows in Standard logic apps with Easy Auth](https://techcommunity.microsoft.com/t5/integrations-on-azure-blog/trigger-workflows-in-standard-logic-apps-with-easy-auth/ba-p/3207378).
493
+
In a Standard logic app workflow that starts with the **Request** trigger (but not a webhook trigger), you can use the Azure Functions provision for authenticating inbound calls sent to the endpoint created by that trigger by using a managed identity. This provision is also known as "**Easy Auth**". For more information, review [Trigger workflows in Standard logic apps with Easy Auth](https://techcommunity.microsoft.com/t5/integrations-on-azure-blog/trigger-workflows-in-standard-logic-apps-with-easy-auth/ba-p/3207378).
473
494
474
495
For more information about security, authorization, and encryption for inbound calls to your logic app workflow, such as [Transport Layer Security (TLS)](https://en.wikipedia.org/wiki/Transport_Layer_Security), previously known as Secure Sockets Layer (SSL), [Microsoft Entra ID Open Authentication (Microsoft Entra ID OAuth)](../active-directory/develop/index.yml), exposing your logic app with Azure API Management, or restricting the IP addresses that originate inbound calls, see [Secure access and data - Access for inbound calls to request-based triggers](../logic-apps/logic-apps-securing-a-logic-app.md#secure-inbound-requests).
0 commit comments