概要 tapirはエンドポイントとビジネスロジックを分離して定義することができるScalaのライブラリで、型安全なAPIを簡潔に構築することができます。 主に以下のようなメリットがあります。 Scalaのコードでエンドポイントの定義ができるためコードの共通化・再利用がしやすい エンドポイントの型を定義することによりAPIの仕様を明確にできる エンドポイントの型からSwaggerドキュメントを生成する事により、APIのドキュメント化が容易にできる 今回はPlay Frameworkとtapirを使って、エンドポイントの定義と簡単な認証処理を実装をしてみます。 環境設定 Scala 3.3.3 Play Framework 3.0.5 Java 11 tapir 1.11.1 サンプルコード 今回紹介するコードはこちらのGitHubから確認することができます。 ※ 記事執筆後にコードを変更した