OpenAPI Specification

OpenAPI Specification（以前はSwagger Specificationとして知られていた）は、Webサービスを記述、生成、、可視化するための機械可読なインターフェース記述言語の仕様である。以前はSwaggerフレームワークの一部だったが、2015年に独立したプロジェクトとなり、Linux Foundationのオープンソース共同プロジェクトであるOpenAPI Initiativeが統括している。

、ツールがコード、ドキュメント、テストケースなどを生成するために使用できる。

 歴史 
Swaggerの開発は、オンライン辞書会社Wordnikに勤務していたトニー・タムによって2010年初めに開始された。

2015年3月、SmartBear SoftwareはWordnikの親会社であるReverb TechnologiesからオープンソースのSwagger API仕様を買収した。

2015年11月、SmartBearはLinux Foundationの後援のもと、OpenAPI Initiativeという新しい組織にSwagger仕様を寄贈すると発表した。他の創設メンバー企業には、3scale、Apigee、キャピタル・ワン、Google、IBM、インテュイット、マイクロソフト、PayPal、Restletが含まれる。

2016年1月1日、Swagger仕様はOpenAPI Specification (OAS)と改名され、新しいGitHubリポジトリに移された。

2017年7月、OpenAPI Initiativeは仕様のバージョン3.0.0をリリースした。RESTful API Modeling Language (RAML)の主要な貢献者であったMuleSoftは、、RAMLの入力からOASドキュメントを生成できるAPI Modeling Frameworkツールをオープンソース化した。

2021年2月、OpenAPI Initiativeはバージョン3.1.0をリリースした。OpenAPI Specification 3.1.0の主な変更点としては、JSONスキーマ語彙の調整、、標準SPDX識別子を使用したAPIライセンスの識別のサポート、。

 リリース日 
バージョン日付説明3.1.02021年2月15日OpenAPI Specification 3.1.0のリリース3.0.32020年2月20日OpenAPI Specification 3.0.3のパッチリリース3.0.22018年10月8日OpenAPI Specification 3.0.2のパッチリリース3.0.12017年12月6日OpenAPI Specification 3.0.1のパッチリリース3.0.02017年7月26日OpenAPI Specification 3.0.0のリリース2.02014年9月8日Swagger 2.0のリリース1.22014年3月14日正式ドキュメントの最初のリリース1.12012年8月22日Swagger 1.1のリリース1.02011年8月10日Swagger Specificationの最初のリリース

 使用方法 
に基づいて実装されたアプリケーションは、メソッド、パラメータ、データモデルのドキュメントを自動的に生成することができる。これにより、ドキュメント、クライアントライブラリ、ソースコードの同期を保つことができる。

OpenAPIドキュメントを使用してサーバ用のソースコードスタブを生成する場合、そのプロセスはスキャフォールディング (scaffolding)と呼ばれる。

 機能 
OpenAPI Specificationは言語に依存しない。OpenAPIの宣言的なリソース仕様により、クライアントはサーバの実装を知らなくても、サーバコードにアクセスしなくても、サービスを理解し利用することができる。

 OpenAPIを扱うツール 
OpenAPI Initiativeは、。SmartBearは現在もOpenAPIツールにSwaggerのブランドを冠している。Swagger UIフレームワークを使用すると、開発者と非開発者の両方が、。SwaggerはJSONとYAMLの両方を扱うことができる。

Swagger Codegenには、OpenAPI定義を解析することで、さまざまな言語のドキュメント、APIクライアント、サーバスタブを生成するテンプレート駆動エンジンが含まれている。2018年7月、Swagger Codegenの筆頭貢献者であるウィリアム・チェンと40人以上の他の貢献者が、OpenAPI Tools組織の下でOpenAPI Generatorというプロジェクトにコードをフォークした。

 年次会議 
OpenAPI Initiativeは毎年API Specification Conference (ASC)を主催している。このイベントは長年運営され、起源は2016年にOpenAPI Initiativeの一部となったAPI Strategy and Practice Conference (APIStrat)にある。

 出典 

 参考文献 




 関連項目 
 Representational state transfer
 gRPC
 データモデリング

 外部リンク 
 OpenAPI Initiative (OAI) Webサイト
 API Specifications Conference (ASC) Webサイト
 Swagger Webサイト
 OpenAPI Specification on GitHub
 Directory of OpenAPI definitions
 OpenAPI Editor: A rich UI Eclipse OpenAPI (OAS) editor and studio to design, develop and test OAS3/OpenAPI
 OpenAPI for EDI the Electronic data interchange
 Petstoreクライアント／サーバ仕様の例

Category:ソフトウェアアーキテクチャ