Tutorial: Mock API responses

Backend APIs are imported into an API Management (APIM) API or created and managed manually. The steps in this tutorial, show you how to:

  • Use API Management to create a blank HTTP API
  • Manage an HTTP API manually
  • Set a policy on an API so it returns a mocked response

This method lets developers continue with the implementation and testing of the API Management instance even if the backend isn't available to send real responses.

The ability to mock up responses is useful in many scenarios:

  • When the API façade is designed first and the backend implementation comes later. Or, the backend is being developed in parallel.
  • When the backend is temporarily not operational or not able to scale.

In this tutorial, you learn how to:

  • Create a test API
  • Add an operation to the test API
  • Enable response mocking
  • Test the mocked API

Mocked API response

Prerequisites

Create a test API

The steps in this section show how to create an HTTP API with no backend.

  1. Sign in to the Azure portal, and then navigate to your API Management instance.

  2. Select APIs > + Add API > HTTP tile.

    Define a HTTP API

  3. In the Create an HTTP API window, select Full.

  4. Enter Test API for Display name.

  5. Select Unlimited for Products.

  6. Ensure that Managed is selected for Gateways.

  7. Select Create.

    Create an HTTP API

Add an operation to the test API

An API exposes one or more operations. In this section, you'll add an operation to the HTTP API you created. Calling the operation after completing the steps in this section triggers an error. After you complete the steps in the Enable response mocking section, you'll get no errors.

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

  2. Select + Add Operation.

  3. In the Frontend window, enter the following values.

    Frontend window

    Setting Value Description
    Display name Test call The name that is displayed in the developer portal.
    URL (HTTP verb) GET Select one of the predefined HTTP verbs.
    URL /test A URL path for the API.
    Description Optional description of the operation, used to provide documentation in the developer portal to the developers using this API.
  4. Select the Responses tab, located under the URL, Display name, and Description fields. Enter settings on this tab to define response status codes, content types, examples, and schemas.

  5. Select + Add response, and select 200 OK from the list.

    Add response to the API operation

  6. Under the Representations heading on the right, select + Add representation.

  7. Enter application/json into the search box and select the application/json content type.

  8. In the Sample text box, enter { "sampleField" : "test" }.

  9. Select Save.

    Add representation to the API operation

Although not required for this example, you can configure more settings for an API operation on other tabs, including:

Tab Description
Query Add query parameters. Besides providing a name and description, you can also provide values that are assigned to a query parameter. You can mark one of the values as default (optional).
Request Define request content types, examples, and schemas.

Enable response mocking

  1. Select the API you created in Create a test API.

  2. In the window on the right, ensure that the Design tab is selected.

  3. Select the test operation that you added.

  4. In the Inbound processing window, select + Add policy.

    Add processing policy

  5. Select Mock responses from the gallery.

    Mock responses policy tile

  6. In the API Management response textbox, type 200 OK, application/json. This selection indicates that your API should return the response sample you defined in the previous section.

    Set mocking response

  7. Select Save.

    Tip

    A yellow bar with the text Mocking is enabled displays. This indicates that the responses returned from API Management are mocked by the mocking policy and aren't produced by the backend.

Test the mocked API

  1. Select the API you created in Create a test API.

  2. Select the Test tab.

  3. Ensure that the Test call API is selected, and then select Send to make a test call.

    Test the mocked API

  4. The HTTP response displays the JSON provided as a sample in the first section of the tutorial.

    Mock HTTP response

Next steps

In this tutorial, you learned how to:

  • Create a test API
  • Add an operation to the test API
  • Enable response mocking
  • Test the mocked API

Advance to the next tutorial: