Provides a set of libraries which add service API versioning to ASP.NET Core Minimal APIs, Controllers, gRPC, OData, and Web API (Classic).
C#
3,206
474 commits
updated Sep 28, 2026
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 Core
ASP.NET Core with MVC (Core)
ASP.NET Core with gRPC
ASP.NET Core with OData
ASP.NET Web API
ASP.NET Web API with OData
This is also the home of the ASP.NET API versioning API explorers that you can use to easily document your APIs with OpenAPI:
ASP.NET Core Versioned OpenAPI
ASP.NET Core Versioned API Explorer and OpenAPI
ASP.NET Core Versioned API Explorer and OpenAPI with gRPC
ASP.NET Core with OData API Explorer
ASP.NET Web API Versioned API Explorer
ASP.NET Web API with OData API Explorer
The client-side libraries make it simple to create API version-aware HTTP clients.
You can find additional examples, documentation, and getting started instructions in the wiki.
Have a general question, suggestion, or other feedback? Check out how you can contribute.
Released versions align to the .NET Support Policy with
support for N-1 Long Term Support (LTS) release types. When LTS versions reach end of support, no additional support
or servicing will be officially supported. Critical bug support in previous versions will be addressed on a case by case
basis, evaluated by the project maintainers. Support for preview releases, even of a future LTS version, should not be
expected. Released versions have platform affinity. There is no guarantee or official support of old library versions
working with newer .NET platform releases, even if they happen to fully or partially function as expected.
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.
This project is licensed under the MIT license.
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.
9,866 followers · starred Apr 2017
144 followers · starred Nov 2020
271 followers · starred Oct 2021
238 followers · starred Apr 2021
Provides a set of libraries which add service API versioning to ASP.NET Core Minimal APIs, Controllers, gRPC, OData, and Web API (Classic).
C#
3,206
474 commits
updated Sep 28, 2026
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 Core
ASP.NET Core with MVC (Core)
ASP.NET Core with gRPC
ASP.NET Core with OData
ASP.NET Web API
ASP.NET Web API with OData
This is also the home of the ASP.NET API versioning API explorers that you can use to easily document your APIs with OpenAPI:
ASP.NET Core Versioned OpenAPI
ASP.NET Core Versioned API Explorer and OpenAPI
ASP.NET Core Versioned API Explorer and OpenAPI with gRPC
ASP.NET Core with OData API Explorer
ASP.NET Web API Versioned API Explorer
ASP.NET Web API with OData API Explorer
The client-side libraries make it simple to create API version-aware HTTP clients.
You can find additional examples, documentation, and getting started instructions in the wiki.
Have a general question, suggestion, or other feedback? Check out how you can contribute.
Released versions align to the .NET Support Policy with
support for N-1 Long Term Support (LTS) release types. When LTS versions reach end of support, no additional support
or servicing will be officially supported. Critical bug support in previous versions will be addressed on a case by case
basis, evaluated by the project maintainers. Support for preview releases, even of a future LTS version, should not be
expected. Released versions have platform affinity. There is no guarantee or official support of old library versions
working with newer .NET platform releases, even if they happen to fully or partially function as expected.
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.
This project is licensed under the MIT license.
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.
9,866 followers · starred Apr 2017
144 followers · starred Nov 2020
271 followers · starred Oct 2021
238 followers · starred Apr 2021