Import SOAP API to API Management and convert to REST

APPLIES TO: All API Management tiers

This article shows how to import a SOAP API as a WSDL specification and then convert it to a REST API. The article also shows how to test the API in API Management.

In this article, you learn how to:

  • Import a SOAP API and convert to REST
  • Test the API in the Azure portal

Note

WSDL import to API Management is subject to certain limitations. WSDL files with wsdl:import, xsd:import, and xsd:include directives aren't supported. For an open-source tool to resolve and merge these dependencies in a WSDL file, see this GitHub repo.

Prerequisites

Complete the following quickstart: Create an Azure API Management instance

Go to your API Management instance

  1. In the Azure portal, search for and select API Management services.

    Select API Management services

  2. On the API Management services page, select your API Management instance.

    Select your API Management instance

Import and publish a back-end API

  1. From the left menu, under the APIs section, select APIs > + Add API.

  2. Under Create from definition, select WSDL.

    SOAP API

  3. In WSDL specification, enter the URL to your SOAP API, or select Select a file to select a local WSDL file.

  4. In Import method, select SOAP to REST. When this option is selected, API Management attempts to make an automatic transformation between XML and JSON. In this case, consumers should call the API as a RESTful API, which returns JSON. API Management converts each request to a SOAP call.

    SOAP to REST

  5. The following fields are filled automatically with information from the SOAP API: Display name, Name, Description. Operations are filled automatically with Display name, URL, and Description, and receive a system-generated Name.

  6. Enter other API settings. You can set the values during creation or configure them later by going to the Settings tab.

    For more information about API settings, see Import and publish your first API tutorial.

  7. Select Create.

Test the new API in the Azure portal

Operations can be called directly from the Azure portal, which provides a convenient way to view and test the operations of an API.

  1. Select the API you created in the previous step.

  2. Select the Test tab.

  3. Select an operation.

    The page shows fields for query parameters and fields for the headers. One of the headers is Ocp-Apim-Subscription-Key, for the subscription key of the product that is associated with this API. If you created the API Management instance, you're an admin already, so the key is filled in automatically.

  4. Press Send.

    When the test is successful, the backend responds with 200 OK and some data.

Append other APIs

You can compose an API of APIs exposed by different services, including:

  • An OpenAPI specification
  • A SOAP API
  • A GraphQL API
  • A Web App hosted in Azure App Service
  • Azure Function App
  • Azure Logic Apps
  • Azure Service Fabric

Append a different API to your existing API using the following steps.

Note

When you import another API, the operations are appended to your current API.

  1. Go to your Azure API Management instance in the Azure portal.

    Screenshot of navigating to API Management instance in the portal.

  2. Select APIs on the Overview page or from the menu on the left.

    Screenshot of selecting APIs on Overview page in the portal.

  3. Click ... next to the API that you want to append another API to.

  4. Select Import from the drop-down menu.

    Select import

  5. Select a service from which to import an API.

    Screenshot of selecting a service in the portal.

Next steps