/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

.NET Foundation MIT License Build Status

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 Core

    Adds API versioning to your ASP.NET Core Minimal API applications

    NuGet Package NuGet Downloads Quick Start Examples

  • ASP.NET Core MVC

    Adds API versioning to your ASP.NET Core MVC (Core) applications

    NuGet Package NuGet Downloads Quick Start Examples

  • ASP.NET Core and OData

    Adds API versioning to your ASP.NET Core applications using OData v4.0

    NuGet Package NuGet Downloads Quick Start Examples

  • ASP.NET Web API

    Adds API versioning to your Web API applications

    NuGet Package NuGet Downloads Quick Start Examples

  • ASP.NET Web API and OData

    Adds API versioning to your Web API applications using OData v4.0

    NuGet Package NuGet Downloads Quick Start Examples

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 Core Versioned API Explorer

    Adds additional API explorer support to your ASP.NET Core applications

    NuGet Package NuGet Downloads Quick Start Examples

  • ASP.NET Core with OData API Explorer

    Adds additional API explorer support to your ASP.NET Core applications using OData v4.0

    NuGet Package NuGet Downloads Quick Start Examples

  • ASP.NET Web API Versioned API Explorer

    Replaces the default API explorer in your Web API applications

    NuGet Package NuGet Downloads Quick Start Examples

  • ASP.NET Web API with OData API Explorer

    Adds an API explorer to your Web API applications using OData v4.0

    NuGet Package NuGet Downloads Quick Start Examples

The client-side libraries make it simple to create API version-aware HTTP clients.

  • HTTP Client API Versioning Extensions

    Adds API versioning support to HTTP clients

    NuGet Package NuGet Downloads Quick Start

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.

Logo by Sacramento Design Works