/aspnet-api-versioning

Provides a set of libraries which add service API versioning to ASP.NET Web API, OData with ASP.NET Web API, and ASP.NET Core.

Primary LanguageC#MIT LicenseMIT

AppVeyor Build status

ASP.NET API Versioning

ASP.NET API versioning gives you a powerful, but easy-to-use method for adding API versioning semantics to your new and existing REST services built with ASP.NET. The API versioning extensions define simple metadata attributes and conventions that you use to describe which API versions are implemented by your services. You don't need to learn any new routing concepts or change the way you implement your services in ASP.NET today.

The default API versioning configuration is compliant with the versioning semantics outlined by the Microsoft REST Guidelines. There are also a number of customization and extension points available to support transitioning services that may not have supported API versioning in the past or supported API versioning with semantics that are different from the Microsoft REST versioning guidelines.

The supported flavors of ASP.NET are:

  • ASP.NET Web API ( nuget | quick start | samples )
    Adds service API versioning to your Web API applications

  • ASP.NET Web API and OData ( nuget | quick start | samples )
    Adds service API versioning to your Web API applications using OData v4.0

  • ASP.NET Core ( nuget | quick start | samples )
    Adds service API versioning to your ASP.NET Core applications

This is also the home of the ASP.NET API versioning API explorers that you can use to easily document your REST APIs with Swagger:

  • ASP.NET Web API Versioned API Explorer ( nuget | quick start | samples )
    Replaces the default API explorer in your Web API applications

  • ASP.NET Web API with OData API Explorer ( nuget | quick start | samples )
    Adds an API explorer to your Web API applications using OData v4.0

  • ASP.NET Core Versioned API Explorer ( nuget | quick start | samples )
    Adds additional API explorer support to your ASP.NET Core applications

You can additional find samples, documentation, and getting started instructions in the wiki.


If you are an existing user, please makes sure you review the release notes between all major and minor package releases.