OpenAPI
概要
RESTAPIを表現するための仕様
yamlとjsonで記述できる
hiroki.icon当然yamlの方が良い
OpenAPIの仕様に則ってAPIの仕様を書けばドキュメントやクライアントライブラリを自動生成できる
Terraformaws_api_gateway_rest_apiとStoplight Studioを使うと爆速でサーバレスAPI構築できる→Terraform API Gateway
aws sam/aws amplifyとかよりも以下の点で良い選択
terraformに慣れている
terraformはどこまでもインフラリソースの対応領域を広げられる
API仕様を記述するよくあるパターン
APIの仕様を_に記載する
スプレットシート
コンフル
OpenAPIのメリット
シンプルなテキストファイルで記述される→gitなどの開発ノウハウがそのまま使える
ドキュメントの自動生成
フォーマットが決まっていて書くことが明確である
デメリット
ちょい学習コストがかかる
Swaggerとは
OpenAPI仕様でREST APIを定義するための公式ツール群
https://gyazo.com/a1380c2bb7e249f11d6177e2be47f892
SwaggerEditor
OpenAPIを書くための公式エディター
Stoplight Studioを使うとyamlを全く覚える必要なく書けるぞ
https://gyazo.com/115743d64ab1cd1bd0b34d4f5f9baef9
SwaggerUI
OpenAPI仕様からAPIドキュメントを生成するツール
CICDから静的ホスティングすればapiドキュメントが常に最新の状態で公開できるね
youtubebackupのapiをSwaggerUIで公開してみた
SwaggerCodegee
OpenAPI仕様からコードを生成する
参照
https://spec.openapis.org/oas/v3.0.0.html
aws公式:OpenAPI definitions of sample API integrated with a Lambda function
OpenAPIでLambdaと統合するための書き方例
Qiita:SwaggerUIを簡単にGithub Pagesで公開する方法