Skip to content
| Marketplace
Sign in
Visual Studio>Tools>Unchase OpenAPI (Swagger) Connected Service
Unchase OpenAPI (Swagger) Connected Service

Unchase OpenAPI (Swagger) Connected Service

Unchase

|
21,885 installs
| (5) | Free
Connected service for Visual Studio to generate OpenAPI (Swagger) web service reference.
Download

Unchase OpenAPI (Swagger) Connected Service Logo

Unchase OpenAPI (Swagger) Connected Service is a Visual Studio 2017/2019 extension to generate C# (TypeScript) HttpClient (or C# Controllers) code for OpenAPI (formerly Swagger API) web service with NSwag.

For VisualStudio 2022: Unchase OpenAPI (Swagger) Connected Service VS2022

Extension now supports yaml-specifications and specification endpoints ends with not only .json!

For VisualStudio 2019: Starting from v16.1.3 extensions based on Microsoft Connected Services now work fine.

The project is developed and maintained by Nikolay Chebotov (Unchase).

Getting Started

Read How-To on medium.com

Install from Tools -> Extensions and Updates menu inside Visual Studio 2017 (from Extensions -> Manage Extensions menu inside VisualStudio 2019):

Adding Unchase OpenAPI (Swagger) Connected Service in Visual Studio

Features

  • Generate C# or TypeScript clients/proxies (client code) from Swagger 2.0 and OpenAPI 3.0 specifications
  • Generate C# ASP.NET Controller from Swagger 2.0 and OpenAPI 3.0 specifications
  • Experimental: Generate C# or TypeScript clients/proxies (client code) or ASP.NET Controller from OData specification converted to OpenAPI based on OpenAPI.NET.OData
  • Generate .nswag file for using in NSwagStudio (no need to install for generating)
  • Add required dependencies for the C# client (before generating):
    • Library targeting .NET Standard 1.4+:
      1. Newtonsoft.Json (NuGet)
      2. System.Net.Http (NuGet)
      3. System.ComponentModel.Annotations (NuGet)
    • Library targeting the full .NET:
      1. Newtonsoft.Json (NuGet)
      2. System.Runtime.Serialization (GAC)
      3. System.ComponentModel.DataAnnotations (GAC)
    • Library targeting PCL 259 (Portable Class Library):
      1. Newtonsoft.Json (NuGet)
      2. Microsoft.Net.Http (NuGet)
      3. Portable.DataAnnotations (NuGet)
  • Add Required dependences for the C# controller (before generating):
    1. Microsoft.AspNetCore.Mvc (NuGet)
  • Command to open generated .nswag and .nswag.json files in NSwagStudio
  • Command to compare .nswag.json specification file with another .nswag.json specification file (or specification given by endpoint)
  • Storage of the last 10 endpoints (specification path)

Settings Meaning

Meaning of the Unchase OpenAPI (Swagger) Connected Service settings according to NSwagStudio:

Unchase OpenAPI (Swagger) Connected Service settings meaning

Exclude type names

Since v1.4.0 you can exclude type names in separate Window for C# client code generation:

Unchase OpenAPI (Swagger) Connected Service - exclude type names

Generate code from OData specification converted to OpenAPI specification

Since v1.5.0 you can generate code from OData specification converted to OpenAPI specification:

Unchase OpenAPI (Swagger) Connected Service - generate from OData

Custom Commands

Open in NSwagStudio Command

Since v1.1.* have been added menu command embedded in Visual Studio Solution Explorer context menu lets you open generated .nswag and .nswag.json files in NSwagStudio.

This extension is for those times where you generate .nswag and .nswag.json files and you want to be able to quickly open it in NSwagStudio.

Prerequisite

In order to use this extension, you must have Visual Studio 2017/2019, this connected service as well as NSwagStudio installed.

Solution Explorer

You can open .nswag and .nswag.json files in NSwagStudio by simply right-clicking it in Solution Explorer and select Open in NSwagStudio:

Open in NSwagStudio menu Command

Path to NSwagStudio.exe

If you installed NSwagStudio at a non-default location, a prompt will ask for the path to NSwagStudio.exe.

You can always change the location in Tools -> Options -> Web -> Unchase OpenAPI (Swagger) Connected Service:

Open in NSwagStudio Option

Compare OpenAPI-specifications... Command

Since v1.2.* have been added menu command embedded in Visual Studio Solution Explorer context menu lets you compare generated .nswag.json specification-file with another .nswag.json specification-file (or with specification given by endpoint).

This extension is for those times where you generate .nswag.json file and you want to quickly compare it with another specification or specification given by endpoint.

Prerequisite

In order to use this extension, you must have Visual Studio 2017/2019 as well as this connected service.

Solution Explorer

You can compare .nswag.json specification-file with another .nswag.json specification-file (or with specification given by endpoint) by simply selecting one or two files and right-clicking them in Solution Explorer and select Compare OpenAPI-specifications...:

Compare OpenAPI Specifications Command

Compare OpenAPI Specifications Command

Path to the specification Endpoint

You can always change the specification Endpoint to compare with in Tools -> Options -> Web -> Unchase OpenAPI (Swagger) Connected Service:

Compare OpenAPI Specifications Option

Compare View

Compare OpenAPI Specifications Command result

HowTos

  • [ ] Add HowTos in a future
  • [ ] ... request for HowTo you need

Troubleshooting

Can't open .nswag file in NSwagStudio

  • You can use Open in NSwagStudio menu command
  • If generated code corrupted, try to open .nswag file in NSwagStudio (Windows GUI for editing .*nswag files)
  • If it doesn't open, try to create new .nswag file in NSwagStudio for the same API service link and check the differences

Installation completes but I can't see the Service in the list of connected services (Visual Studio 2019)

  • Relevant bug report. Connected Services restored in the v16.1.3 update to Visual Studio 2019.

Roadmap

See the changelog for the further development plans and version history.

Feedback

Please feel free to add your review, request a feature, ask a question or report a bug including in connected service:

Unchase OpenAPI Connected Service Report a Bug

Thank you in advance!

Thank me!

If you like what I am doing and you would like to thank me, please consider:

Buy me a coffe!

Thank you for your support!


Copyright © 2019 Nikolay Chebotov (Unchase) - Provided under the Apache License 2.0.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft