Echolot
仕様

仕様を編集する

OpenAPIドキュメントを、ビジュアルエディタまたはYAMLで設計します。入力中のLint、保存、取り消しに対応しています。

仕様の編集方法は2つあり、ページヘッダーのエディタでいつでも切り替えられます。カードとフィールドのビジュアルと、YAMLまたはJSONそのもののコードです。 どちらも同じテキストを変更します。Echolotが保持するのはそのテキストです。ビジュアルでの編集は、編集した部分の行だけを変更するため、コメント、順序、書式は保たれ、Gitの差分には変更内容だけが表示されます。

仕様を始めるには、サイドバーの仕様ヘッダーで+ › 新規仕様を選択します。EcholotはOpenAPI 3.1ドキュメントをNew APIというタイトルでspecsフォルダに作成し、ビジュアルエディタで開きます。

ビジュアルエディタ

Alpenglow仕様のGET /productsエンドポイントを開いたビジュアルエディタ。メソッドとパス、概要、説明、オペレーションID、タグに続いて、パラメータ、リクエストボディ、レスポンスのセクションが表示されている

ビジュアルエディタのフィールドは、編集を終えたときにドキュメントを変更します。↩を押すか、別のフィールドに移動します。 説明のフィールドはMarkdownを使え、↩で改行します。横のボタンで、説明が実際に表示される形を確認できます。

ページには次のカードがあります。

カード編集する内容
概要APIのタイトル、バージョン、説明。
サーバサーバのURLと説明。サーバを追加で追加し、−で削除します。サーバがない場合、仕様から作成するリクエストは{{baseUrl}}で始まり、その値は自分で設定します。
連絡先とライセンス表示で、連絡先の名前、メールアドレス、URL、ライセンスとそのURL、利用規約が開きます。
エンドポイントすべてのオペレーション。グループ化でパスまたはタグ別に一覧表示します(タグのないものはタグなしの下)。クリックして開きます。
スキーマ再利用可能なスキーマ。ボディやレスポンスから名前で参照できます。クリックして開きます。

エンドポイントを追加する

エンドポイントカードのエンドポイントを追加をクリックします。新規エンドポイントシートでメソッドを選び、パス(/products/{sku}など)を入力し、必要なら概要とタグも入力して、エンドポイントを追加をクリックします。 Echolotがパスのパラメータを定義し、出発点としてボディと成功レスポンスを追加します。すでにあるメソッドとパスの組み合わせは受け付けられません。

開いたエンドポイントには次の部分があります。

部分編集する内容
エンドポイントメソッドとパス。変更すると、オペレーションが移動します。
概要、説明List productsのような短い名前と、その動作、必要なもの、返すもの。
オペレーションID、タグコードジェネレータが使うID、およびカンマで区切ったタグ。
非推奨オペレーションを非推奨にします。
パラメータ各パラメータの名前、場所(場所:path、query、header、cookie)、型、必須、説明。パラメータを追加で追加します。パスに定義されていないパラメータがある場合は、{sku}を追加のようなボタンで定義できます。パス全体と表示されたパラメータは、そのパスのすべてのメソッドに定義されます。
リクエストボディボディを追加でJSONボディを追加します。メディアタイプごとにスキーマがあり、ボディは必須にできます。ボディを削除で取り除きます。
レスポンスステータスコードごとに1行。説明と、ボディを追加後はメディアタイプとスキーマも持ちます。レスポンスを追加は、まだ使われていない次の一般的なコード(200、201、204、400、401、403、404、409、422、500、defaultの順)を追加します。コードを編集して変更できます。オペレーションには、少なくとも1つのレスポンスが必要です。

パラメータ、ボディ、プロパティの型はメニューで選びます。再利用可能なスキーマ、string、integer、number、boolean、object、それらの配列、またはなしです。 メニューで表せないスキーマは書かれたとおりに表示され、ほかのものを選ぶまで保持されます。

開いたエンドポイントの下部には、Lintがそこで見つけた最初の問題(ポインタを置くとすべて表示されます)と、3つのボタンがあります。リクエストを開く(このオペレーションに従うリクエストがある場合)、コードで表示、エンドポイントを削除です。

スキーマを追加する

スキーマカードのスキーマを追加をクリックし、Productのような名前を付けて、追加をクリックします。 開いたスキーマには、名前、説明、プロパティがあります。各プロパティには、名前、型、必須、説明があります。プロパティを追加で追加します。

スキーマには、使われている場所が表示されます(3個所で使用、または未使用)。名前を変更すると、すべての参照が変更されます。 スキーマが使われている場合、スキーマを削除は先に確認します。それらの参照が何も指さなくなるためです。単純なオブジェクトではないスキーマは、コードで記述して編集します。コードで表示で移動できます。

Swagger 2.0

Swagger 2.0のドキュメントは、ビジュアルエディタで開いて読めますが、編集はコードで行います。EcholotはOpenAPI 3を設計します。

コードエディタ

エディタをコードに切り替えると、YAMLまたはJSONを直接編集できます。Lintは入力中、短い間を置いて実行され、エラーと警告はその行に下線で示され、ポインタを置くとメッセージが表示されます。

$refにポインタを置くと参照先が表示され、⌘クリックするとそこに移動します。別のファイルへの参照は、そのファイルを開きます。仕様が参照しているファイルは、常にコードで開きます。

テキストを解析できない場合、ビジュアルエディタにはビジュアルエディタには、解析できるドキュメントが必要です。と、行とエラーが表示されます。コードで修正で、その行に移動します。

保存

手動で保存する必要はありません。Echolotは、変更のたびに少し待ってから仕様を書き込み、別の仕様に切り替えたとき、ページを離れたとき、ウインドウを閉じたときにも書き込みます。動作中のその仕様のモックにも変更が反映されます。

ファイルを書き込めない場合(たとえば読み取り専用になった場合)は、Echolotが仕様を保存できませんでしたと表示し、編集内容をエディタに保持します。

ボタン動作
再試行もう一度ファイルの書き込みを試みます。
コピーを保存…編集内容を、選択したファイルに書き込みます。
変更内容を破棄ディスク上のファイルの状態に戻します。
編集を続けるメッセージを閉じます。編集内容は残り、保存されるまでページはこの仕様のままです。

取り消す

編集 › 取り消す(⌘Z)はどちらのエディタでも編集を取り消し、編集 › やり直す(⇧⌘Z)は元に戻します。 ビジュアルでの編集は1回ごとに1ステップです。入力は、手を止めるまでが1ステップです。取り消しは、変更した仕様に属します。別のファイルを開くと、前のファイルには及びません。

エージェントと使う

外部のエージェントは、設定 › エージェントでそのエージェントの仕様ツールセットをオンにすると、ワークスペースの仕様を読み取り、書き込み、Lintできます。

このページの内容