ASP.NET API Versioning
📣 Check out the announcement regarding upcoming changes |
---|
The "Asp" project, more formally known as 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
Adds API versioning to your Web API applications -
ASP.NET Web API and OData
Adds API versioning to your Web API applications using OData v4.0 -
ASP.NET Core
Adds API versioning to your ASP.NET Core Minimal API applications -
ASP.NET Core MVC
Adds API versioning to your ASP.NET Core MVC (Core) applications -
ASP.NET Core and OData
Adds API versioning to your ASP.NET Core applications using OData v4.0
This is also the home of the ASP.NET API versioning API explorers that you can use to easily document your REST APIs with OpenAPI:
-
ASP.NET Web API Versioned API Explorer
Replaces the default API explorer in your Web API applications -
ASP.NET Web API with OData API Explorer
Adds an API explorer to your Web API applications using OData v4.0 -
ASP.NET Core Versioned API Explorer
Adds additional API explorer support to your ASP.NET Core applications -
ASP.NET Core with OData API Explorer
Adds additional API explorer support to your ASP.NET Core applications using OData v4.0
The client-side libraries make it simple to create API version-aware HTTP clients.
Documentation
You can find additional examples, documentation, and getting started instructions in the wiki.
Discussion
Have a general question, suggestion, or other feedback? Check out how you can contribute.
Code of Conduct
This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information see the .NET Foundation Code of Conduct.
License
This project is licensed under the MIT license.
.NET Foundation
This project is supported by the .NET Foundation.
If you are an existing user, please makes sure you review the release notes between all major and minor package releases.