5.3. OAS 仕様に関する補足情報

ドキュメントを OAS Petstore のドキュメント のようにする場合は、関連の Petstore swagger.json ファイルのような Swagger 準拠の仕様を作成する必要があります。この仕様をそのまま使用して、ActiveDocs をテストすることができます。ただし、これは実際の API ではないことに注意してください。

OAS は、JSON でエンコードされたハッシュにマッピングするリソース宣言に依存します。Petstore swagger.json ファイルをサンプルとして使用し、各オブジェクトについて説明します。

OAS オブジェクト

これは API 仕様のルートドキュメントオブジェクトです。最上位レベルのフィールドをすべてリスト表示します。

警告

ホストは、IP アドレスではなくドメインでなければなりません。3scale は、デベロッパーポータルに対して行われたリクエストをプロキシーとしてホストに中継し、結果をレンダリングします。そのためには、セキュリティー上の理由から、ホスト および basePath エンドポイントが 3scale により承認される必要があります。宣言できるのは、ご自分のホストだけです。API プロバイダーが自身に属さないドメインを中継していることが確認された場合、3scale は API プロバイダーのアカウントを終了する権利を有します。つまり、ローカルホストまたはその他のワイルドカードドメインは機能しません。

info オブジェクト

info オブジェクトは API に関するメタデータを提供します。このコンテンツは ActiveDocs ページに提示されます。

paths オブジェクト

paths オブジェクトは、個々のエンドポイントへの相対パスを保持します。パスが basePath に追加され、完全な URL となります。アクセス制御リスト (ACL) の制約により、paths は空になる可能性があります。

オブジェクトではないパラメーターは、プリミティブデータタイプを使用します。Swagger では、プリミティブデータ型は JSON スキーマドラフト 4 でサポートされるタイプに基づきます。プリミティブデータ型には追加の file もありますが、3scale では API エンドポイントで CORS が有効な場合にのみ使用されます。CORS が有効になっていると、アップロードは api-docs ゲートウェイを経由せず、拒否されます。

現在、OAS は以下の dataTypes をサポートしています。

  • 整数型フォーマット: int32 および int64。どちらのフォーマットも署名されています。
  • 数値型フォーマット: float および double
  • プレーン文字列
  • 使用できるフォーマットの文字列: バイト、日付、日時、パスワード、およびバイナリー
  • boolean