NIS2のドキュメントが公開され、カタパルトのプレビュー版や情報がちらほら出てきました。

その中でAPIエンドポイントについて、以前の雑なドキュメントとは違い、しっかりしたものが公開されていたので見てみました。

といってもほとんどAPI管理ツールであるSwagger/Insomniaの話ですが。

API管理ツール用のJSON定義

APIについてはSwaggerもしくはInsomniaというAPI定義管理ツールを使っていくようで、そのJSON定義がアップされています。

nem2-docsドキュメントからのリンクはこちら。

それぞれ、ツールに読み込ませればいい感じで各APIエンドポイントの仕様を確認したり、リクエストを投げたりができます。

Swagger

*追記しました。こちらからならすぐに見れます。

以下、執筆時の情報です。

Nis-2-API-Endpoints-swagger.json を見るには、SwaggerUIを使います。

SwaggerUIはNanoWalletと同じ、HTMLとJavaScriptで動くツールで、ダウンロードしてローカルで動かす事もできますが、ひとまず簡単に見るには、オンラインデモを使うと楽です。

nis2-swagger-1

ページを開いたら、上部のフィールドに以下のgithub上のjsonのアドレスを入れて、「Explore」をクリックしてください。

これでNIS2APIの定義が読み込まれます。

nis2-swagger-2

詳しい情報がわかりやすく表示されて、いい感じですね。

Insomnia

こちらはWin/Mac OSX/Linux対応マルチプラットフォームアプリケーションです。

ダウンロードしてインストールします。

動作確認用ツールなので、このUIからリクエストを投げることができます。

NIS1でもブラウザを使ったり、拡張機能を使えばPOSTできたりしますが、こちらのほうが断然使いやすいでしょう。

画面を立ち上げると「import from file」とありますが、Webから直接インポートできるので、こちらのほうが楽でしょう。

nis2-swagger-1

nis2-swagger-2

このアドレスをURLへいれて「Fetch and Import」すればインポートされます。

nis2-swagger-3

nis2-swagger-4

NIS1のドキュメントは、まぁ…アレでしたね。

(明らかにレスポンスに間違いがあったりするのでPull Requestを投げてましたが、正直読みにくいし、メンテしにくいし…)

これらのツールを使えば、リクエストも投げられますし、nem開発がより捗りそうですね。

肝心のNIS2のリリースがまだまだ先みたいですけど、ふいんきを読んだり、思いを馳せることはできそうです。