OpenAPI Generator

OpenAPI Generator

  • Get Started
  • Generators
  • Roadmap
  • Team
  • FAQ
  • Blog

Config Options for kotlin-server

OptionDescriptionValuesDefault
apiSuffixsuffix for api classesApi
artifactIdGenerated artifact id (name of jar).kotlin-server
artifactVersionGenerated artifact's package version.1.0.0
enumPropertyNamingNaming convention for enum properties: 'camelCase', 'PascalCase', 'snake_case', 'UPPERCASE', and 'original'camelCase
featureAutoHeadAutomatically provide responses to HEAD requests for existing routes that have the GET verb defined.true
featureCORSKtor by default provides an interceptor for implementing proper support for Cross-Origin Resource Sharing (CORS). See enable-cors.org.false
featureCompressionAdds ability to compress outgoing content using gzip, deflate or custom encoder and thus reduce size of the response.true
featureConditionalHeadersAvoid sending content if client already has same content, by checking ETag or LastModified properties.false
featureHSTSAvoid sending content if client already has same content, by checking ETag or LastModified properties.true
groupIdGenerated artifact package's organization (i.e. maven groupId).org.openapitools
librarylibrary template (sub-template)
ktor
ktor framework
ktor
modelMutableCreate mutable modelsfalse
packageNameGenerated artifact package name.org.openapitools.server
parcelizeModelstoggle "@Parcelize" for generated modelsnull
serializableModelboolean - toggle "implements Serializable" for generated modelsnull
serializationLibraryWhat serialization library to use: 'moshi' (default), or 'gson'moshi
sortModelPropertiesByRequiredFlagSort model properties to place required parameters before optional parameters.null
sortParamsByRequiredFlagSort method arguments to place required parameters before optional parameters.null
sourceFoldersource folder for generated codesrc/main/kotlin

IMPORT MAPPING

Type/AliasImports
BigDecimaljava.math.BigDecimal
Datejava.util.Date
DateTimejava.time.LocalDateTime
Filejava.io.File
LocalDatejava.time.LocalDate
LocalDateTimejava.time.LocalDateTime
LocalTimejava.time.LocalTime
Timestampjava.sql.Timestamp
URIjava.net.URI
UUIDjava.util.UUID

INSTANTIATION TYPES

Type/AliasInstantiated By
arraykotlin.arrayOf
listkotlin.arrayOf
mapkotlin.mapOf

LANGUAGE PRIMITIVES

  • kotlin.Array
  • kotlin.Boolean
  • kotlin.Byte
  • kotlin.ByteArray
  • kotlin.Char
  • kotlin.Double
  • kotlin.Float
  • kotlin.Int
  • kotlin.Long
  • kotlin.Short
  • kotlin.String
  • kotlin.collections.List
  • kotlin.collections.Map
  • kotlin.collections.Set

RESERVED WORDS

  • as
  • break
  • class
  • continue
  • do
  • else
  • false
  • for
  • fun
  • if
  • in
  • interface
  • is
  • null
  • object
  • package
  • return
  • super
  • this
  • throw
  • true
  • try
  • typealias
  • typeof
  • val
  • var
  • when
  • while

FEATURE SET

Client Modification Feature

NameSupportedDefined By
BasePath✗ToolingExtension
Authorizations✗ToolingExtension
UserAgent✗ToolingExtension

Data Type Feature

NameSupportedDefined By
Custom✗OAS2,OAS3
Int32✓OAS2,OAS3
Int64✓OAS2,OAS3
Float✓OAS2,OAS3
Double✓OAS2,OAS3
Decimal✓ToolingExtension
String✓OAS2,OAS3
Byte✓OAS2,OAS3
Binary✓OAS2,OAS3
Boolean✓OAS2,OAS3
Date✓OAS2,OAS3
DateTime✓OAS2,OAS3
Password✓OAS2,OAS3
File✓OAS2
Array✓OAS2,OAS3
Maps✓ToolingExtension
CollectionFormat✓OAS2
CollectionFormatMulti✓OAS2
Enum✓OAS2,OAS3
ArrayOfEnum✓ToolingExtension
ArrayOfModel✓ToolingExtension
ArrayOfCollectionOfPrimitives✓ToolingExtension
ArrayOfCollectionOfModel✓ToolingExtension
ArrayOfCollectionOfEnum✓ToolingExtension
MapOfEnum✓ToolingExtension
MapOfModel✓ToolingExtension
MapOfCollectionOfPrimitives✓ToolingExtension
MapOfCollectionOfModel✓ToolingExtension
MapOfCollectionOfEnum✓ToolingExtension

Documentation Feature

NameSupportedDefined By
Readme✓ToolingExtension
Model✓ToolingExtension
Api✓ToolingExtension

Global Feature

NameSupportedDefined By
Host✓OAS2,OAS3
BasePath✓OAS2,OAS3
Info✓OAS2,OAS3
Schemes✗OAS2,OAS3
PartialSchemes✓OAS2,OAS3
Consumes✓OAS2
Produces✓OAS2
ExternalDocumentation✓OAS2,OAS3
Examples✓OAS2,OAS3
XMLStructureDefinitions✗OAS2,OAS3
MultiServer✗OAS3
ParameterizedServer✗OAS3
ParameterStyling✗OAS3
Callbacks✗OAS3
LinkObjects✗OAS3

Parameter Feature

NameSupportedDefined By
Path✓OAS2,OAS3
Query✓OAS2,OAS3
Header✓OAS2,OAS3
Body✓OAS2
FormUnencoded✓OAS2
FormMultipart✓OAS2
Cookie✗OAS3

Schema Support Feature

NameSupportedDefined By
Simple✓OAS2,OAS3
Composite✓OAS2,OAS3
Polymorphism✗OAS2,OAS3
Union✗OAS3

Security Feature

NameSupportedDefined By
BasicAuth✓OAS2,OAS3
ApiKey✓OAS2,OAS3
OpenIDConnect✗OAS3
BearerToken✗OAS3
OAuth2_Implicit✓OAS2,OAS3
OAuth2_Password✗OAS2,OAS3
OAuth2_ClientCredentials✗OAS2,OAS3
OAuth2_AuthorizationCode✗OAS2,OAS3

Wire Format Feature

NameSupportedDefined By
JSON✓OAS2,OAS3
XML✓OAS2,OAS3
PROTOBUF✗ToolingExtension
Custom✗OAS2,OAS3
Last updated on 2/2/2020
  • IMPORT MAPPING
  • INSTANTIATION TYPES
  • LANGUAGE PRIMITIVES
  • RESERVED WORDS
  • FEATURE SET
    • Client Modification Feature
    • Data Type Feature
    • Documentation Feature
    • Global Feature
    • Parameter Feature
    • Schema Support Feature
    • Security Feature
    • Wire Format Feature
OpenAPI Generator
Docs
Customizing GeneratorsWorkflow Integrations
Community
User ShowcaseStack OverflowChat RoomTwitter
More
BlogGitHub RepoStar
Copyright © 2020 OpenAPI-Generator Contributors (https://openapi-generator.tech). (Both "OpenAPI Tools" (https://OpenAPITools.org) and "OpenAPI Generator" are not affiliated with OpenAPI Initiative (OAI))