Package-level declarations

Types

Link copied to clipboard
@Serializable
data class Components(val schemas: Map<String, Schema>? = null, val securitySchemes: Map<String, SecurityScheme>? = null)

コンポーネント 再利用可能なオブジェクトを定義する

Link copied to clipboard
@Serializable
data class Info(val title: String, val description: String? = null, val version: String, val license: License? = null)

API情報

Link copied to clipboard
@Serializable
data class License(val name: String, val url: String? = null)

ライセンス情報

Link copied to clipboard
@Serializable
data class MediaType(val schema: Schema? = null)

メディアタイプ

Link copied to clipboard
@Serializable
data class OAuthFlow(val authorizationUrl: String, val tokenUrl: String, val scopes: Map<String, String>)

OAuth2フロー

Link copied to clipboard
@Serializable
data class OAuthFlows(val authorizationCode: OAuthFlow? = null)

OAuth2フロー定義

Link copied to clipboard
@Serializable
data class OpenApiDocument(val openapi: String = "3.1.0", val info: Info, val servers: List<Server> = emptyList(), val paths: Map<String, PathItem> = emptyMap(), val components: Components? = null, val security: List<Map<String, List<String>>>? = null, val tags: List<Tag>? = null)

OpenAPI 3.1.0ドキュメントのルートオブジェクト

Link copied to clipboard
@Serializable
data class Operation(val summary: String? = null, val description: String? = null, val operationId: String? = null, val tags: List<String>? = null, val parameters: List<Parameter>? = null, val requestBody: RequestBody? = null, val responses: Map<String, Response>, val security: List<Map<String, List<String>>>? = null)

オペレーション HTTPメソッドに対応する操作を定義する

Link copied to clipboard
@Serializable
data class Parameter(val name: String, val location: String, val description: String? = null, val required: Boolean = false, val schema: Schema? = null)

パラメータ リクエストパラメータ(path, query, header, cookie)を定義する

Link copied to clipboard
@Serializable
data class PathItem(val summary: String? = null, val description: String? = null, val get: Operation? = null, val post: Operation? = null, val put: Operation? = null, val delete: Operation? = null, val patch: Operation? = null)

パスアイテム 特定のパスに対する操作を定義する

Link copied to clipboard
@Serializable
data class RequestBody(val description: String? = null, val content: Map<String, MediaType>, val required: Boolean = false)

リクエストボディ

Link copied to clipboard
@Serializable
data class Response(val description: String, val content: Map<String, MediaType>? = null)

レスポンス

Link copied to clipboard
@Serializable
data class Schema(val type: String? = null, val format: String? = null, val description: String? = null, val properties: Map<String, Schema>? = null, val items: Schema? = null, val required: List<String>? = null, val additionalProperties: Boolean? = null, val nullable: Boolean? = null, val enum: List<String>? = null)

JSONスキーマ データ構造を定義する

Link copied to clipboard
@Serializable
data class SecurityScheme(val type: String, val description: String? = null, val flows: OAuthFlows? = null)

セキュリティスキーム

Link copied to clipboard
@Serializable
data class Server(val url: String, val description: String? = null)

サーバー情報

Link copied to clipboard
@Serializable
data class Tag(val name: String, val description: String? = null)

タグ情報 エンドポイントをグループ化するために使用