| OpenAPI仕様 | |
| 開始年 | 2010 |
|---|---|
| 初版 | 2011年8月10日 |
| 最新バージョン | 3.1.1 2024年10月24日 |
| Webサイト | オープンAPIS |
OpenAPI仕様は、以前はSwagger仕様として知られていましたが、Webサービスを記述、生成、使用、視覚化するための機械可読インターフェース定義言語の仕様です。[1]もともとSwaggerフレームワークをサポートするために開発されましたが、2015年にLinux FoundationのオープンソースコラボレーションプロジェクトであるOpenAPI Initiativeによって監督される独立したプロジェクトになりました。[2] [3]
OpenAPI記述(OAD)[4]は、ツールがコード、ドキュメント、テストケースなどを生成するために使用できるAPIの正式な記述を表します。
歴史

Swaggerの開発は、オンライン辞書会社Wordnikで働いていたTony Tamによって2010年初頭に開始されました。[5]
2015年3月、SmartBear SoftwareはWordnikの親会社であるReverb TechnologiesからオープンソースのSwagger API仕様を取得しました。[6]
2015年11月、SmartBearはLinux Foundationの支援を受けてOpenAPI Initiativeと呼ばれる新しい組織にSwagger仕様を寄贈すると発表しました。他の創立メンバー企業には、3scale、Apigee、Capital One、Google、IBM、Intuit、Microsoft、PayPal、Restletが含まれています。[7] [8]
2016年1月1日、Swagger仕様はOpenAPI仕様(OAS)に改名され、新しいGitHub リポジトリに移行されました。[9]
2017年7月、OpenAPI Initiativeは仕様のバージョン3.0.0をリリースしました。[10]
2021年2月、OpenAPI Initiativeはバージョン3.1.0をリリースしました。[11] OpenAPI仕様3.1.0の主な変更点には、JSONスキーマ語彙の調整、帯域外で登録および管理されるWebhookを記述するための新しいトップレベル要素、標準SPDX識別子を使用したAPIライセンスの識別のサポート、スキーマ参照の使用と並行した記述の許可、および再利用可能なコンポーネントライブラリの作成を簡素化するためにPathItemsオブジェクトをオプションにする変更が含まれます。[12] [13] [14]
フォーマットの統合
MuleSoftのRESTful API モデリング言語(RAML) と Apiary の API ブループリントという、 2 つのやや類似したテクノロジは、当時はまだ Swagger 仕様と呼ばれていたものとほぼ同時期に開発されました。
両フォーマットの制作者は後にOpenAPIイニシアチブに参加した。Apiaryは2016年に[15]、MuleSoftは2017年に[16]参加 した。どちらもOASのサポートを追加した。[17] [16]
リリース日
使用法
OASはOpenAPI記述(OAD) [4]の形式を記述しており、さまざまなアプリケーション、ライブラリ、ツールで使用できます。
アプリケーションはOADを使用してメソッド、パラメータ、データモデルのドキュメントを自動的に生成することができます。これにより、ドキュメント、クライアントライブラリ、ソースコードの同期を保つことができます。[19]
OAD を使用してサーバーのソース コード スタブを生成するプロセスは、スキャフォールディングと呼ばれます。
ソフトウェアエンジニアリングの実践との関係
最初にプログラムをコーディングし、その動作の遡及的な記述を契約として記述するのではなく、最初にAPI契約に合意し、その後でビジネスロジックをプログラミングするパラダイムは、契約優先開発と呼ばれます。コードが記述される前にインターフェースが決定されるため、下流の開発者はサーバーの動作をモック化し、すぐにテストを開始できます。[20]この意味で、契約優先開発はシフトレフトテストの実践でもあります。
特徴
OpenAPI仕様は言語に依存しません。OpenAPIの宣言型リソース仕様により、クライアントはサーバーの実装を知らなくても、サーバーコードにアクセスしなくてもサービスを理解して利用できます。[1]
OpenAPI と連携するツール
OpenAPI Initiativeは、仕様バージョン3.0の実装リストを管理しています。[21]
年次会議
OpenAPI Initiative は、毎年開催される API 仕様会議 (ASC) を後援しています。このイベントは、長年にわたって開催され、2016 年に OpenAPI Initiative の一部となった API 戦略および実践会議 (APIStrat) に端を発しています。
参照
参考文献
- ^ ab 「OpenAPI ドキュメント: はじめに」。OpenAPIを学ぶ。OpenAPI イニシアティブ。2024 年9 月 17 日閲覧。
- ^ 「接続されたアプリケーションとサービスを構築するための Swagger 仕様を拡張する新しい共同プロジェクト」。2023 年 10 月 31 日時点のオリジナルよりアーカイブ。
- ^ 「OpenAPI Initiative Charter」。OpenAPI Initiative 。 2019年11月12日閲覧。
- ^ ab 「OpenAPI ドキュメント: 用語集」。Learn OpenAPI。The OpenAPI Initiative。2023 年。2024 年9 月 17 日に閲覧。
- ^ 「Swagger 作成者が SmartBear に参加」 2015 年 9 月 28 日. 2019 年8 月 6 日閲覧。
- ^ 「SmartBear が Swagger API オープンソース プロジェクトのスポンサーに就任」SmartBear . 2015 年3 月 25 日閲覧。
- ^ 「FAQ」。OpenAPI Initiative 。 2019年11月12日閲覧。
- ^ 「接続されたアプリケーションとサービスを構築するための Swagger 仕様を拡張する新しい共同プロジェクト」。linuxfoundation.org。2016年4 月 27 日時点のオリジナルよりアーカイブ。2016年4 月 22 日閲覧。
- ^ OpenAPI Initiative. 「OpenAPI仕様」. GitHub . 2019年11月12日閲覧。
- ^ 「OAIがOpenAPI仕様3.0.0を発表」。OpenAPIs。2017年7月26日。 2018年4月19日閲覧。
- ^ 「OpenAPI 仕様 3.1.0 が利用可能になりました」。Linux.com。2021年4 月 26 日。2021年4 月 26 日閲覧。
- ^ Charboneau, Tyler (2021年4月7日). 「OpenAPI 3.1.0の新機能」. Nordic APIs . 2021年4月7日閲覧。
- ^ 「OpenAPI仕様3.1.0がリリースされました」。OpenAPI Initiative。2021年2月18日。 2021年2月18日閲覧。
- ^ Sturgeon, Phil (2021年2月16日). 「OpenAPI 3.0から3.1.0への移行」. OpenAPI Initiative . 2021年2月16日閲覧。
- ^ Lensmar, Ole (2016 年 2 月 23 日). 「OAI アップデート – 新メンバー、OpenAPI 仕様 3.0 の進捗状況など!」OpenAPI Initiative . 2024 年10 月 13 日閲覧。
- ^ ab Avram, Abel (2017 年 5 月 6 日)。「HTTP API 領域は OAS を中心に統合されつつある」。InfoQ。2017年5 月 14 日閲覧。
- ^ Nesetril, Jakub (2016 年 1 月 18 日). 「We've got Swagger」. Oracle Apiary . 2024 年10 月 13 日閲覧。
- ^ 「OpenAPI仕様バージョン3.1.0」。GitHub 。2023年11月7日閲覧。
- ^ 「OpenAPI ドキュメント: 概要」。Learn OpenAPI。The OpenAPI Initiative。2023 年。2024 年9 月 17 日に閲覧。
- ^ Preibisch, Sascha (2018). API 開発: ビジネス実装成功のための実践ガイド. [カリフォルニア州バークレー]: Apress. ISBN 978-1-4842-4140-0OCLC 1076234393。Swagger
(または、その他の機械可読ドキュメント) を利用できると、チーム メンバーは同時にプロジェクトの自分の部分の作業を開始できます
。 - ^ 「OpenAPI ツール」。OpenAPIツール。OpenAPI イニシアティブ。2024年9 月 17 日閲覧。
文献
- Haupt, F.; Karastoyanova, D.; Leymann, F.; Schroth, B. (2014). REST準拠サービスのためのモデル駆動型アプローチ。ICWS 2014。2014 IEEE 国際 Web サービス会議。pp. 129–136。doi :10.1109 / ICWS.2014.30。ISBN 978-1-4799-5054-6。
- Pautasso, Cesare (2021). 美しい API。LeanPub. p. 100。
外部リンク
- OpenAPI Initiative (OAI) ウェブサイト
- API仕様会議(ASC)ウェブサイト
- GitHub の OpenAPI 仕様
- OpenAPI 記述のディレクトリ
- OAI の公式 Learn OpenAPIs サイトにある OpenAPI の説明例
