Skip to main content

# Documentation for the graphql-schema Generator

## METADATA​

Property | Value | Notes
--- | --- | ---
generator name | graphql-schema | pass this to the generate command after -g
generator stability | STABLE |
generator type | SCHEMA |
generator language | GraphQL |
generator default templating engine | mustache |
helpTxt | Generates GraphQL schema files (beta) |

## CONFIG OPTIONS​

These options may be applied as additional-properties (cli) or configOptions (plugins). Refer to configuration docs for more details.

Option | Description | Values | Default
--- | --- | --- | ---
hideGenerationTimestamp | Hides the generation timestamp when files are generated. |  | true
packageName | GraphQL package name (convention: lowercase). |  | openapi2graphql
packageVersion | GraphQL package version. |  | 1.0.0

## IMPORT MAPPING​

Type/Alias | Imports
--- | ---

## INSTANTIATION TYPES​

Type/Alias | Instantiated By
--- | ---

## LANGUAGE PRIMITIVES​

- Boolean
- Float
- ID
- Int
- String
- null

## RESERVED WORDS​

- boolean
- float
- id
- implements
- int
- interface
- null
- query
- string
- type
- union

## 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
Uuid | ✗ |
Array | ✓ | OAS2,OAS3
Null | ✗ | OAS3
AnyType | ✗ | OAS2,OAS3
Object | ✓ | 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
allOf | ✗ | OAS2,OAS3
anyOf | ✗ | OAS3
oneOf | ✗ | OAS3
not | ✗ | 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
SignatureAuth | ✗ | OAS3
AWSV4Signature | ✗ | ToolingExtension

### Wire Format Feature​

Name | Supported | Defined By
--- | --- | ---
JSON | ✓ | OAS2,OAS3
XML | ✗ | OAS2,OAS3
PROTOBUF | ✗ | ToolingExtension
Custom | ✗ | OAS2,OAS3