Tutorial: Publish multiple versions of your API

There are times when it's impractical to have all callers to your API use exactly the same version. When callers want to upgrade to a later version, they want an approach that's easy to understand. As shown in this tutorial, it is possible to provided multiple versions in Azure API Management.

For background, see Versions & revisions.

In this tutorial, you learn how to:

  • Add a new version to an existing API
  • Choose a version scheme
  • Add the version to a product
  • Browse the developer portal to see the version

Version shown in Azure portal

Prerequisites

Add a new version

  1. In the Azure portal, navigate to your API Management instance.
  2. Select APIs.
  3. Select Demo Conference API from the API list.
  4. Select the context menu (...) next to Demo Conference API.
  5. Select Add version.

API context menu - add version

Tip

Versions can also be enabled when you create a new API. On the Add API screen, select Version this API?.

Choose a versioning scheme

In Azure API Management, you choose how callers specify the API version by selecting a versioning scheme: path, header, or query string. In the following example, path is used as the versioning scheme.

Enter the values from the following table. Then select Create to create your version.

Add version window

Setting Value Description
Name demo-conference-api-v1 Unique name in your API Management instance.

Because a version is in fact a new API based off an API's revision, this setting is the new API's name.
Versioning scheme Path The way callers specify the API version.
Version identifer v1 Scheme-specific indicator of the version. For Path, the suffix for the API URL path.

If Header or Query string is selected, enter an additional value: the name of the header or query string parameter.

A usage example is displayed.
Products Unlimited Optionally, one or more products that the API version is associated with. To publish the API, you must associate it with a product. You can also add the version to a product later.

After creating the version, it now appears underneath Demo Conference API in the API List. You now see two APIs: Original, and v1.

Versions listed under an API in the Azure portal

You can now edit and configure v1 as an API that is separate from Original. Changes to one version do not affect another.

Note

If you add a version to a non-versioned API, an Original is also automatically created. This version responds on the default URL. Creating an Original version ensures that any existing callers are not broken by the process of adding a version. If you create a new API with versions enabled at the start, an Original isn't created.

Add the version to a product

In order for callers to see the new version, it must be added to a product. If you didn't already add the version to a product, you can add it to a product at any time.

For example, to add the version to the Unlimited product:

  1. In the Azure portal, navigate to your API Management instance.
  2. Select Products > Unlimited > APIs > + Add.
  3. Select Demo Conference API, version v1.
  4. Click Select.

Add version to product

Use version sets

When you create multiple versions, the Azure portal creates a version set, which represents a set of versions for a single logical API. Select the name of an API that has multiple versions. The Azure portal displays its Version set. You can customize the Name and Description of a virtual set.

You can interact directly with version sets by using the Azure CLI:

  • Use the Bash environment in Azure Cloud Shell.

    Launch Cloud Shell in a new window

  • If you prefer, install the Azure CLI to run CLI reference commands.

    • If you're using a local installation, sign in to the Azure CLI by using the az login command. To finish the authentication process, follow the steps displayed in your terminal. For additional sign-in options, see Sign in with the Azure CLI.

    • When you're prompted, install Azure CLI extensions on first use. For more information about extensions, see Use extensions with the Azure CLI.

    • Run az version to find the version and dependent libraries that are installed. To upgrade to the latest version, run az upgrade.

To see all your version sets, run the az apim api versionset list command:

az apim api versionset list --resource-group apim-hello-word-resource-group \
    --service-name apim-hello-world --output table

When the Azure portal creates a version set for you, it assigns an alphanumeric name, which appears in the Name column of the list. Use this name in other Azure CLI commands.

To see details about a version set, run the az apim api versionset show command:

az apim api versionset show --resource-group apim-hello-word-resource-group \
    --service-name apim-hello-world --version-set-id 00000000000000000000000

For more information about version sets, see Versions in Azure API Management.

Browse the developer portal to see the version

If you've tried the developer portal, you can see API versions there.

  1. Select Developer Portal from the top menu.
  2. Select APIs, and then select Demo Conference API.
  3. You should see a dropdown with multiple versions next to the API name.
  4. Select v1.
  5. Notice the Request URL of the first operation in the list. It shows that the API URL path includes v1.

Next steps

In this tutorial, you learned how to:

  • Add a new version to an existing API
  • Choose a version scheme
  • Add the version to a product
  • Browse the developer portal to see the version

Advance to the next tutorial: