Morning Girl

Web API, Windows, C#, .NET, Dynamics 365/CRM etc..

OpenAPI(Swagger) Spec のバージョンを 3.0 から 2.0 に変換したい:API MATIC を試してみた

2.0 から 3.0 に上げたいならまだしも、3.0 から 2.0 に下げたい? 何をバカなことを言っているのだ? と思われるかもしれないんですがちゃんとした理由がありまして

PowerApps のカスタムコネクタが OpenAPI Spec から生成できるんですが、現在 2.0 しかサポートしていないんですね。

docs.microsoft.com

でも、私が個人的に作っていた API が OpenAPI Spec 3.0 なのですね。(わかってたのにー (ノシ 'ω')ノシ バンバン)

なので、変換できるツール無いかなーと探していたら、ありました!

API MATIC

API MATIC」という API定義から各言語のSDKを生成するサービスがあるんですが

www.apimatic.io

f:id:sugimomoto:20200118194014p:plain

その機能の中に「API Transformer」というものがありまして、OpenAPI以外にも、各種API Specを相互変換!

www.apimatic.io

f:id:sugimomoto:20200118194455p:plain

しかも、Postman Collection までサポート・・・!!!!!

素晴らしい!!!

なお、基本的には Web API を提供している側向けのサービスなので、お値段は月々 $9.9 ~。

f:id:sugimomoto:20200118194642p:plain

今回はとりあえず Trial で試してみました。

使い方

使い方は簡単です。サインアップしたら、ダッシュボードの画面右上に「Transform API」というボタンがあるので、これをクリック。

f:id:sugimomoto:20200118194832p:plain

あとは対象となる YAML を選んで、Export Format から OpenAPI/Swagger v2.0 を選べばOK!

f:id:sugimomoto:20200118195031p:plain

ValidationがOKだったら、Proceed をクリックすると、OpenAPI/Swagger v2.0 の Spec がダウンロードされてきます。

f:id:sugimomoto:20200118195132p:plain

やったね!

f:id:sugimomoto:20200118195307p:plain