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-http-swagger.md
+14-16Lines changed: 14 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,44 +1,42 @@
1
1
---
2
-
title: Call REST API Endpoints from Workflows
3
-
description: Call the endpoint URL for a REST API from workflows in Azure Logic Apps.
2
+
title: Call endpoints for REST APIs from workflows in Azure Logic Apps
3
+
description: Learn how to call a REST API endpoint URL from an Azure Logic App workflow by using HTTP Swagger operations.
4
4
services: logic-apps
5
5
ms.suite: integration
6
6
ms.reviewers: estfan, azla
7
7
ms.topic: how-to
8
8
ms.update-cycle: 365-days
9
-
ms.date: 03/10/2026
10
-
# Customer intent: As an integration developer who works with Azure Logic Apps, I want to call a REST endpoint from my workflow.
9
+
ms.date: 03/19/2026
10
+
# Customer intent: As an integration developer who works with Azure Logic Apps, I want to call a REST API endpoint from my workflow by using HTTP Swagger operations.
11
11
---
12
12
13
13
# Call endpoints for REST APIs from workflows in Azure Logic Apps
To call a REST API endpoint from a logic app workflow in Azure Logic Apps, you can use the built-in **HTTP + Swagger** operations to call any REST API endpoint through a [Swagger file](https://swagger.io). The **HTTP + Swagger** trigger and action work the same as the [HTTP trigger and action](/azure/connectors/connectors-native-http) but provide a better experience in the workflow designer by exposing the API structure and outputs described by the Swagger file. To implement a polling trigger, follow the polling pattern that's described in [Create custom APIs to call other APIs, services, and systems from logic app workflows](/azure/logic-apps/logic-apps-create-api-app#polling-triggers).
17
+
To call a REST API endpoint from a logic app workflow in Azure Logic Apps, you can use the built-in **HTTP + Swagger** operations to call any REST API endpoint through a [Swagger file](https://swagger.io). The **HTTP + Swagger** trigger and action work the same as the [HTTP trigger and action](/azure/connectors/connectors-native-http) but provide a better experience in the workflow designer by exposing the API structure and outputs described by the Swagger file. To implement a polling trigger, follow the [polling trigger pattern](/azure/logic-apps/logic-apps-create-api-app#polling-triggers).
18
18
19
19
## Limitations
20
20
21
-
The **HTTP + Swagger** built-in operations currently support only OpenAPI 2.0, not OpenAPI 3.0.
21
+
The **HTTP + Swagger** built-in operations support only OpenAPI 2.0, not OpenAPI 3.0.
22
22
23
23
## Prerequisites
24
24
25
25
* An Azure account and subscription. [Get a free Azure account](https://azure.microsoft.com/pricing/purchase-options/azure-account?cid=msft_learn).
26
26
27
27
* The URL for the Swagger file that describes the target REST API endpoint that you want to call
28
28
29
-
Typically, the REST endpoint has to meet the following criteria for the trigger or action to work:
29
+
Typically, the REST endpoint must meet the following criteria for the trigger or action to work:
30
30
31
31
* The Swagger file must be hosted on an HTTPS URL that's publicly accessible.
32
32
33
-
* The Swagger file must contain an **operationID** property for each operation in the definition. If not, the connector only shows the last operation in the Swagger file.
33
+
* The Swagger file must contain an **operationID** property for each operation in the definition. If not, the connector shows only the last operation in the Swagger file.
34
34
35
35
* The Swagger file must have [Cross-Origin Resource Sharing (CORS)](/rest/api/storageservices/cross-origin-resource-sharing--cors--support-for-the-azure-storage-services) enabled.
36
36
37
37
> [!NOTE]
38
38
>
39
-
> To reference a Swagger file that's unhosted or that doesn't meet the security and cross-origin requirements,
40
-
> you can [upload the Swagger file to a blob container in an Azure storage account](#host-swagger), and enable
41
-
> CORS on that storage account so that you can reference the file.
39
+
> To reference a Swagger file that's unhosted or doesn't meet security and cross-origin requirements, you can [upload the Swagger file to a blob container in an Azure storage account](#host-swagger) and enable CORS on that storage account.
42
40
43
41
* The Consumption or Standard logic app workflow from where you want to call the target endpoint. To start with the **HTTP + Swagger** trigger, create a logic app resource with a blank workflow. To use the **HTTP + Swagger** action, start your workflow with any trigger that you want. This example uses the **HTTP + Swagger** trigger as the first operation.
44
42
@@ -54,7 +52,7 @@ This built-in trigger sends an HTTP request to a URL for a Swagger file that des
54
52
55
53
The following example uses a non-functional Swagger URL. Your URL might use a different format.
56
54
57
-
:::image type="content" source="media/connectors-native-http-swagger/http-swagger-trigger-parameters.png" alt-text="Screenshot shows workflow designer with selected Add trigger shape and information pane for HTTP + Swagger trigger. The Swagger endpoint property is set to an example URL.":::
55
+
:::image type="content" source="media/connectors-native-http-swagger/http-swagger-trigger-parameters.png" alt-text="Screenshot shows workflow designer with an Add a trigger pane for an HTTP + Swagger trigger. The Swagger endpoint property is set to an example URL.":::
58
56
59
57
1. After the designer shows the operations described by the Swagger file, select the operation that you want to use.
60
58
@@ -82,7 +80,7 @@ This built-in action sends an HTTP request to the URL for the Swagger file that
82
80
83
81
The following example uses a non-functional Swagger URL. Your URL might use a different format.
84
82
85
-
:::image type="content" source="media/connectors-native-http-swagger/http-swagger-action-parameters.png" alt-text="Screenshot shows workflow designer with trigger named Fabrikam API - Create order and open information pane for HTTP + Swagger action. The Swagger endpoint property is set to a URL.":::
83
+
:::image type="content" source="media/connectors-native-http-swagger/http-swagger-action-parameters.png" alt-text="Screenshot shows workflow designer with a trigger named Fabrikam API - Check customer and an Add an action pane for an HTTP + Swagger action. The Swagger endpoint property is set to a URL.":::
86
84
87
85
1. After the designer shows the operations described by the Swagger file, select the operation that you want to use.
88
86
@@ -100,11 +98,11 @@ This built-in action sends an HTTP request to the URL for the Swagger file that
100
98
101
99
## Host Swagger in Azure Storage
102
100
103
-
You can still reference a Swagger file that's not hosted or that doesn't meet the security and cross-origin requirements. Upload the Swagger file to blob container in an Azure storage account and enable CORS on that storage account. To create, set up, and store Swagger files in Azure Storage, follow these steps:
101
+
You can still reference a Swagger file that's not hosted or that doesn't meet the security and cross-origin requirements. Upload the Swagger file to a blob container in an Azure storage account and enable CORS on that storage account. To create, set up, and store Swagger files in Azure Storage, follow these steps:
104
102
105
103
1.[Create an Azure storage account](/azure/storage/common/storage-account-create).
106
104
107
-
1.Now enable CORS for the blob. On your storage account's menu, select **CORS**. On the **Blob service** tab, specify these values, and select **Save**.
105
+
1.Enable CORS for the blob. On your storage account's **Settings** section, select **CORS**. On the **Blob service** tab, specify these values, and select **Save**.
108
106
109
107
| Property | Value |
110
108
|----------|-------|
@@ -114,7 +112,7 @@ You can still reference a Swagger file that's not hosted or that doesn't meet th
114
112
|**Exposed headers**|`*`|
115
113
|**Max age** (in seconds) |`200`|
116
114
117
-
Although this example uses the [Azure portal](https://portal.azure.com), you can use a tool such as [Azure Storage Explorer](https://storageexplorer.com/), or automatically configure this setting by using this sample [PowerShell script](https://github.com/logicappsio/EnableCORSAzureBlob/blob/master/EnableCORSAzureBlob.ps1).
115
+
Although this example uses the [Azure portal](https://portal.azure.com), you can also use a tool such as [Azure Storage Explorer](https://storageexplorer.com/), or automatically configure this setting by using this sample [PowerShell script](https://github.com/logicappsio/EnableCORSAzureBlob/blob/master/EnableCORSAzureBlob.ps1).
118
116
119
117
1.[Create a blob container](/azure/storage/blobs/storage-quickstart-blobs-portal). On the container's **Overview** pane, select **Change access level**. From the **Public access level** list, select **Blob (anonymous read access for blobs only)**, and select **OK**.
0 commit comments