Skip to content

Commit 19f1eb5

Browse files
committed
Refresh articles
1 parent 48da742 commit 19f1eb5

5 files changed

Lines changed: 52 additions & 45 deletions

File tree

articles/api-management/import-container-app-with-oas.md

Lines changed: 29 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
---
2-
title: Import an Azure Container App to Azure API Management | Microsoft Docs
3-
description: Learn how to use Azure API Management to import a web API that's hosted in Azure Container Apps.
2+
title: Import an Azure Container App to Azure API Management
3+
description: Learn how to use Azure API Management to import a web API hosted in Azure Container Apps.
44
services: api-management
55
author: dlepow
66

77
ms.service: azure-api-management
88
ms.topic: how-to
9-
ms.date: 03/31/2025
9+
ms.date: 03/11/2026
1010
ms.author: danlep
1111

1212
#customer intent: As an API developer, I want to import a web API that's hosted in Azure Container Apps.
@@ -16,7 +16,7 @@ ms.author: danlep
1616

1717
[!INCLUDE [api-management-availability-all-tiers](../../includes/api-management-availability-all-tiers.md)]
1818

19-
This article describes how to import an Azure container app to Azure API Management as an API and test the imported API by using the Azure portal.
19+
This article describes how to import an Azure container app into Azure API Management as an API and test the imported API by using the Azure portal.
2020

2121
[!INCLUDE [api-management-workspace-availability](../../includes/api-management-workspace-availability.md)]
2222

@@ -30,25 +30,25 @@ In this article, you learn how to:
3030

3131
[Azure Container Apps](../container-apps/overview.md) allows you to deploy containerized apps without managing complex infrastructure. API developers can write code with their preferred programming language or framework, build microservices with full support for Distributed Application Runtime (Dapr), and scale based on HTTP traffic or other events.
3232

33-
By using API Management to expose a web API that's hosted in a container app, you gain the following benefits:
33+
By using API Management to expose a web API hosted in a container app, you gain the following benefits:
3434

3535
* Decouple managing and securing the frontend that's exposed to API consumers from managing and monitoring the backend web API.
3636
* Manage web APIs hosted as container apps in the same environment as your other APIs.
3737
* Apply [policies](api-management-policies.md) to change API behavior, such as call-rate limiting.
38-
* Direct API consumers to the customizable API Management [developer portal](api-management-howto-developer-portal.md) so they can discover and learn about your APIs, request access, and try APIs.
38+
* Direct API consumers to the customizable API Management [developer portal](developer-portal-overview.md) so they can discover and learn about your APIs, request access, and try APIs.
3939

40-
For more information, see [About API Management](api-management-key-concepts.md).
40+
For more information, see [What is Azure API Management?](api-management-key-concepts.md)
4141

4242
## OpenAPI specification vs. wildcard operations
4343

44-
API Management supports importing container apps that provide an OpenAPI specification (a Swagger definition). An OpenAPI specification isn't required, but we recommend that you provide one. API Management can import individual operations, which allows you to validate, manage, secure, and update configurations for each operation separately.
44+
API Management supports importing container apps that provide an OpenAPI specification (a Swagger definition). An OpenAPI specification isn't required, but we recommend that you provide one. API Management can import individual operations, which allows you to validate, manage, secure, and update configurations for each operation separately.
4545

46-
If the container app exposes an OpenAPI specification, API Management creates API operations that map directly to the definition. API Management will look in several locations for an OpenAPI specification:
46+
If the container app exposes an OpenAPI specification, API Management creates API operations that map directly to the definition. API Management looks in several locations for an OpenAPI specification:
4747

4848
* The container app configuration
49-
* `/openapi.json`
50-
* `/openapi.yml`
51-
* `/swagger/v1/swagger.json`
49+
* */openapi.json*
50+
* */openapi.yml*
51+
* */swagger/v1/swagger.json*
5252

5353
If an OpenAPI specification isn't provided, API Management generates [wildcard operations](add-api-manually.md#add-and-test-a-wildcard-operation) for the common HTTP verbs (GET, PUT, and so on). You can still take advantage of the same API Management features, but operations aren't defined at the same level of detail.
5454

@@ -58,34 +58,40 @@ In either case, you can [edit](edit-api.md) or [add](add-api-manually.md) operat
5858

5959
Your backend container app might support two GET operations:
6060

61-
* `https://<app-service>.azurewebsites.net/customer/{id}`
61+
* `https://<app-service>.azurewebsites.net/customer/<id>`
6262
* `https://<app-service>.azurewebsites.net/customers`
6363

6464
You import the container app to your API Management service at a path like `https://<api>.azure-api.net/store`. The following table shows the operations that are imported to API Management, either with or without an OpenAPI specification:
6565

6666
| Type |Imported operations |Sample requests |
6767
|---------|---------|---------|
68-
|OpenAPI specification | `GET /customer/{id}`<br/><br/> `GET /customers` | `GET https://<api>.azure-api.net/store/customer/1`<br/><br/>`GET https://<api>.azure-api.net/store/customers` |
68+
|OpenAPI specification | `GET /customer/<id>`<br/><br/> `GET /customers` | `GET https://<api>.azure-api.net/store/customer/1`<br/><br/>`GET https://<api>.azure-api.net/store/customers` |
6969
|Wildcard | `GET /*` | `GET https://contosoapi.azure-api.net/store/customer/1`<br/><br/>`GET https://<api>.azure-api.net/store/customers` |
7070

7171
The wildcard operation allows the same requests to the backend service as the operations in the OpenAPI specification. However, the OpenAPI-specified operations can be managed separately in API Management.
7272

7373
## Prerequisites
7474

75-
+ Complete the [Create an Azure API Management instance](get-started-create-service-instance.md) quickstart.
75+
+ Create an [Azure API Management instance](get-started-create-service-instance.md).
7676
+ Make sure there's a container app that exposes a web API in your subscription. For more information, see [Container Apps documentation](../container-apps/index.yml).
7777

7878
## Import and publish a backend API
7979

80-
1. Navigate to your API Management service in the Azure portal and select **APIs** > **APIs** in the left pane.
80+
1. Navigate to your API Management service in the [Azure portal](https://portal.azure.com).
81+
82+
1. In the sidebar menu, under **APIs**, select **APIs**, and then select **+ Add API**.
83+
8184
1. Under **Create from Azure resource**, select **Container App**:
8285

8386
:::image type="content" source="media/import-container-app-with-oas/add-api.png" alt-text="Screenshot that shows the Container App tile.":::
8487

8588
1. Select **Browse** to see a list of container apps in your subscription.
89+
8690
1. Select a container app. If an OpenAPI definition is associated with the selected container app, API Management fetches it and imports it. If an OpenAPI definition isn't found, API Management exposes the API by generating wildcard operations for common HTTP verbs.
91+
8792
1. Add an **API URL suffix**. The suffix is a name that identifies the API in the API Management instance. It has to be unique in the API Management instance.
88-
1. Associate the API with a product. Select **Full** and then, in **Product**, select the product. In this case, the **Unlimited** product is used. If you want the API to be published and be available to developers, you need to add it to a product.
93+
94+
1. Associate the API with a product. Select **Full** and then, in **Products**, select the product. In this case, the **Unlimited** product is used. If you want the API to be published and be available to developers, you need to add it to a product.
8995

9096
> [!NOTE]
9197
> *Products* are associations of one or more APIs. You can include many APIs and offer them to developers through the developer portal. Developers must first subscribe to a product to get access to the API. When they subscribe, they get a subscription key that's good for any API in that product. If you created the API Management instance, you're an administrator and subscribed to every product by default.
@@ -95,6 +101,7 @@ The wildcard operation allows the same requests to the backend service as the op
95101
> * **Unlimited**
96102
97103
1. Enter other API settings. You can set these values when you create the API or configure them later on the **Settings** tab. These settings are explained in the [Import and publish your first API](import-and-publish.md#import-and-publish-a-backend-api) tutorial.
104+
98105
1. Select **Create**.
99106

100107
:::image type="content" source="media/import-container-app-with-oas/import-container-app.png" alt-text="Screenshot that shows the Create from Container App window." lightbox="media/import-container-app-with-oas/import-container-app.png":::
@@ -106,10 +113,12 @@ You can call operations directly from the Azure portal. This method is a conveni
106113
To test the API in the Azure portal:
107114

108115
1. Select the API you created in the previous step.
116+
109117
1. Select the **Test** tab.
118+
110119
1. Select an operation.
111120

112-
The page displays fields for query parameters and fields for the headers. One of the headers is `Ocp-Apim-Subscription-Key`. This header is for the subscription key of the product that's associated with the API. If you created the API Management instance, you're an administrator, so the key is filled in automatically.
121+
The page displays fields for query parameters and fields for the headers. One of the headers is `Ocp-Apim-Subscription-Key`. This header is for the subscription key of the product associated with the API. If you created the API Management instance, you're an administrator, so the key is filled in automatically.
113122

114123
1. Select **Send**.
115124

@@ -124,7 +133,9 @@ When wildcard operations are generated, the operations might not map directly to
124133
To test the `/api/TodoItems` path:
125134

126135
1. Select the API that you created, and then select the operation.
136+
127137
1. Select the **Test** tab.
138+
128139
1. In **Template parameters**, update the value next to the wildcard (*) name. For example, enter `api/TodoItems`. This value is appended to the path `/` for the wildcard operation.
129140

130141
:::image type="content" source="media/import-container-app-with-oas/test-wildcard-operation.png" alt-text="Screenshot that shows the steps for testing wildcard operation." lightbox="media/import-container-app-with-oas/test-wildcard-operation.png":::

articles/api-management/import-function-app-as-api.md

Lines changed: 12 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ services: api-management
66
author: dlepow
77
ms.service: azure-api-management
88
ms.topic: how-to
9-
ms.date: 03/28/2025
9+
ms.date: 03/12/2026
1010
ms.author: danlep
1111
ms.custom: sfi-image-nochange
1212

@@ -19,11 +19,11 @@ ms.custom: sfi-image-nochange
1919

2020
Azure API Management supports importing Azure function apps as new APIs or appending them to existing APIs. The process automatically generates a host key in the Azure function app, which is then assigned to a named value in API Management.
2121

22-
[!INCLUDE [api-management-workspace-availability](../../includes/api-management-workspace-availability.md)]
23-
2422
This article describes how to import an Azure function app as an API to Azure API Management and test the API.
2523

26-
You'll learn how to:
24+
[!INCLUDE [api-management-workspace-availability](../../includes/api-management-workspace-availability.md)]
25+
26+
In this article, you learn how to:
2727

2828
> [!div class="checklist"]
2929
> * Import an Azure function app as an API
@@ -33,18 +33,19 @@ You'll learn how to:
3333
3434
## Prerequisites
3535

36-
* Complete the [Create an Azure API Management instance](get-started-create-service-instance.md) quickstart.
36+
* Create an [Azure API Management instance](get-started-create-service-instance.md).
3737
* Make sure you have an Azure function app in your subscription. For more information, see [Getting started with Azure Functions](../azure-functions/functions-get-started.md). The function must have an HTTP trigger. The authorization level must be set to *Anonymous* or *Function*.
3838

3939
> [!NOTE]
40-
> You can also use the API Management Extension for Visual Studio Code to import and manage your APIs. Complete the [API Management Extension tutorial](visual-studio-code-tutorial.md) to get started.
40+
> You can also use the API Management Extension for Visual Studio Code to import and manage your APIs. To get started, complete the [API Management Extension tutorial](visual-studio-code-tutorial.md).
4141
4242
## Import an Azure function app as a new API
4343

4444
To create a new API from an Azure function app:
4545

4646
1. Navigate to your API Management service in the Azure portal.
47-
1. Select **APIs** > **APIs** in the left pane.
47+
48+
1. Select **APIs** > **APIs** in the sidebar menu.
4849

4950
1. Under **Create from Azure resource**, select **Function App**:
5051

@@ -77,15 +78,13 @@ To create a new API from an Azure function app:
7778
7879
1. As needed, specify other settings. You can also specify settings later via the **Settings** tab. These settings are explained in the [Import and publish your first API](import-and-publish.md#import-and-publish-a-backend-api) tutorial.
7980

80-
81-
8281
1. Select **Create**.
8382

8483
## Append a function app to an existing API
8584

8685
To append a function app to an existing API:
8786

88-
1. In your **Azure API Management** service instance, select **APIs** > **APIs** in the left pane.
87+
1. In your **Azure API Management** service instance, select **APIs** > **APIs** in the sidebar menu.
8988

9089
1. Choose an API that you want to import a function app to. Select the ellipsis (**...**) next to the API, and then select **Import**:
9190

@@ -125,7 +124,7 @@ When you import an Azure function app, these items are automatically generated:
125124
For APIs created after April 4, 2019, the host key is passed in HTTP requests from API Management to the function app in a header. Older APIs pass the host key as [a query parameter](../azure-functions/functions-bindings-http-webhook-trigger.md#api-key-authorization). You can change this behavior by using the `PATCH Backend` [REST API call](/rest/api/apimanagement/current-ga/backend/update#backendcredentialscontract) on the `Backend` entity that's associated with the function app.
126125

127126
> [!WARNING]
128-
> Removing or changing either the Azure function app host key value or the API Management named value will disable communication between the services. The values don't automatically sync.
127+
> Removing or changing either the Azure function app host key value or the API Management named value disables communication between the services. The values don't automatically sync.
129128
>
130129
> If you need to rotate the host key, be sure to also change the named value in API Management.
131130
@@ -135,17 +134,13 @@ For APIs created after April 4, 2019, the host key is passed in HTTP requests fr
135134

136135
:::image type="content" source="./media/import-function-app-as-api/keys-01.png" alt-text="Screenshot that shows a list of function app instances." lightbox="./media/import-function-app-as-api/keys-01.png":::
137136

138-
1. In the **Functions** section of the left pane, select **App keys**:
137+
1. In the **Functions** section of the sidebar menu, select **App keys**. Find the keys in the **Host keys** section:
139138

140139
:::image type="content" source="./media/import-function-app-as-api/keys-02b.png" alt-text="Screenshot that shows App keys in the menu." lightbox="./media/import-function-app-as-api/keys-02b.png":::
141140

142-
1. Find the keys in the **Host keys** section:
143-
144-
:::image type="content" source="./media/import-function-app-as-api/keys-03.png" alt-text="Screenshot that shows the host keys." lightbox="./media/import-function-app-as-api/keys-03.png":::
145-
146141
### Access the named value in API Management
147142

148-
Navigate to your API Management instance and select **APIs** > **Named values** in the left pane. The Azure function app key is stored there.
143+
Navigate to your API Management instance and select **APIs** > **Named values** in the sidebar menu. The Azure function app key is stored there.
149144

150145
:::image type="content" source="./media/import-function-app-as-api/api-named-value.png" alt-text="Screenshot that shows the location of the function app key." lightbox="./media/import-function-app-as-api/api-named-value.png":::
151146

0 commit comments

Comments
 (0)