Config Options for go
These options may be applied as additional-properties (cli) or configOptions (plugins). Refer to configuration docs for more details.
| Option | Description | Values | Default | 
|---|---|---|---|
| disallowAdditionalPropertiesIfNotPresent | Specify the behavior when the 'additionalProperties' keyword is not present in the OAS document. If false: the 'additionalProperties' implementation is compliant with the OAS and JSON schema specifications. If true: when the 'additionalProperties' keyword is not present in a schema, the value of 'additionalProperties' is set to false, i.e. no additional properties are allowed. Note: this mode is not compliant with the JSON schema specification. This is the original openapi-generator behavior.This setting is currently ignored for OAS 2.0 documents: 1) When the 'additionalProperties' keyword is not present in a 2.0 schema, additional properties are NOT allowed. 2) Boolean values of the 'additionalProperties' keyword are ignored. It's as if additional properties are NOT allowed.Note: the root cause are issues #1369 and #1371, which must be resolved in the swagger-parser project. | 
 | true | 
| enumClassPrefix | Prefix enum with class name | false | |
| generateInterfaces | Generate interfaces for api classes | false | |
| hideGenerationTimestamp | Hides the generation timestamp when files are generated. | true | |
| isGoSubmodule | whether the generated Go module is a submodule | false | |
| packageName | Go package name (convention: lowercase). | openapi | |
| packageVersion | Go package version. | 1.0.0 | |
| prependFormOrBodyParameters | Add form or body parameters to the beginning of the parameter list. | false | |
| structPrefix | whether to prefix struct with the class name. e.g. DeletePetOpts => PetApiDeletePetOpts | false | |
| useOneOfDiscriminatorLookup | Use the discriminator's mapping in oneOf to speed up the model lookup. IMPORTANT: Validation (e.g. one and onlye one match in oneOf's schemas) will be skipped. | false | |
| withAWSV4Signature | whether to include AWS v4 signature support | false | |
| withXml | whether to include support for application/xml content type and include XML annotations in the model (works with libraries that provide support for JSON and XML) | false | 
IMPORT MAPPING
| Type/Alias | Imports | 
|---|
INSTANTIATION TYPES
| Type/Alias | Instantiated By | 
|---|
LANGUAGE PRIMITIVES
- bool
- byte
- complex128
- complex64
- float32
- float64
- int
- int32
- int64
- interface
- map[string]interface
- rune
- string
- uint
- uint32
- uint64
RESERVED WORDS
- bool
- break
- byte
- case
- chan
- complex128
- complex64
- const
- continue
- default
- defer
- else
- error
- fallthrough
- float32
- float64
- for
- func
- go
- goto
- if
- import
- int
- int16
- int32
- int64
- int8
- interface
- map
- nil
- package
- range
- return
- rune
- select
- string
- struct
- switch
- type
- uint
- uint16
- uint32
- uint64
- uint8
- uintptr
- var
FEATURE SET
Client Modification Feature
| Name | Supported | Defined By | 
|---|---|---|
| BasePath | ✓ | ToolingExtension | 
| Authorizations | ✗ | ToolingExtension | 
| UserAgent | ✓ | ToolingExtension | 
| MockServer | ✗ | ToolingExtension | 
Data Type Feature
| Name | Supported | Defined 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
| Name | Supported | Defined By | 
|---|---|---|
| Readme | ✓ | ToolingExtension | 
| Model | ✓ | ToolingExtension | 
| Api | ✓ | ToolingExtension | 
Global Feature
| Name | Supported | Defined 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
| Name | Supported | Defined By | 
|---|---|---|
| Path | ✓ | OAS2,OAS3 | 
| Query | ✓ | OAS2,OAS3 | 
| Header | ✓ | OAS2,OAS3 | 
| Body | ✓ | OAS2 | 
| FormUnencoded | ✓ | OAS2 | 
| FormMultipart | ✓ | OAS2 | 
| Cookie | ✓ | OAS3 | 
Schema Support Feature
| Name | Supported | Defined By | 
|---|---|---|
| Simple | ✓ | OAS2,OAS3 | 
| Composite | ✓ | OAS2,OAS3 | 
| Polymorphism | ✗ | OAS2,OAS3 | 
| Union | ✗ | OAS3 | 
Security Feature
| Name | Supported | Defined 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
| Name | Supported | Defined By | 
|---|---|---|
| JSON | ✓ | OAS2,OAS3 | 
| XML | ✓ | OAS2,OAS3 | 
| PROTOBUF | ✗ | ToolingExtension | 
| Custom | ✗ | OAS2,OAS3 |