Package-level declarations

Types

Link copied to clipboard
data class Api<NODE>
Link copied to clipboard
sealed class ApiPath<NODE>
Link copied to clipboard
data class ApiServer(val url: Uri, val description: String? = null)
Link copied to clipboard
sealed class BodyContent
Link copied to clipboard
data class Components<NODE>(val schemas: NODE, val securitySchemes: NODE)
Link copied to clipboard
Link copied to clipboard
fun interface HasSchema<NODE>
Link copied to clipboard
class OpenApi3<NODE : Any>(apiInfo: ApiInfo, json: Json<NODE>, extensions: List<OpenApiExtension> = emptyList(), apiRenderer: ApiRenderer<Api<NODE>, NODE> = OpenApi3ApiRenderer(json), securityRenderer: SecurityRenderer = OpenApi3SecurityRenderer, errorResponseRenderer: ErrorResponseRenderer = JsonErrorResponseRenderer(json), servers: List<ApiServer> = emptyList(), version: OpenApiVersion = _3_0_0) : ContractRenderer, ErrorResponseRenderer

Contract renderer for OpenApi3 format JSON. For the JSON schema generation, naming of object models will default to either reflective or hashcode based depending on if a Auto Json is passed.

Link copied to clipboard
class OpenApi3ApiRenderer<NODE : Any>(json: Json<NODE>, refLocationPrefix: String = "components/schemas", jsonToJsonSchema: JsonSchemaCreator<NODE, NODE> = JsonToJsonSchema(json, refLocationPrefix)) : ApiRenderer<Api<NODE>, NODE>

Converts a API to OpenApi3 format JSON, using non-reflective JSON marshalling - this is the limited version

Link copied to clipboard
class RequestContents<NODE>(val content: Map<String, BodyContent>? = null) : HasSchema<NODE>
Link copied to clipboard
sealed class RequestParameter<NODE>
Link copied to clipboard
class ResponseContents<NODE>(val description: String?, val content: Map<String, BodyContent> = emptyMap()) : HasSchema<NODE>

Functions

Link copied to clipboard
fun AutoJsonToJsonSchema(json: ConfigurableJackson, typeToMetadata: Map<KType, FieldMetadata> = emptyMap()): AutoJsonToJsonSchema<JsonNode>
Link copied to clipboard
fun OpenApi3(apiInfo: ApiInfo, json: ConfigurableJackson = OpenAPIJackson, extensions: List<OpenApiExtension> = emptyList(), servers: List<ApiServer> = emptyList(), version: OpenApiVersion = OpenApiVersion._3_0_0, typeToMetadata: Map<KType, FieldMetadata> = emptyMap()): OpenApi3<JsonNode>

Defaults for configuring OpenApi3 with Jackson