{ "type": "object", "properties": { "auth-schemes": { "oneOf": [ { "type": "object", "additionalProperties": { "$ref": "#/definitions/fernDefinition.auth.AuthSchemeDeclarationSchema" } }, { "type": "null" } ] }, "api": { "oneOf": [ { "$ref": "#/definitions/generators.APIConfigurationSchema" }, { "type": "null" } ] }, "whitelabel": { "oneOf": [ { "$ref": "#/definitions/generators.WhitelabelConfigurationSchema" }, { "type": "null" } ] }, "metadata": { "oneOf": [ { "$ref": "#/definitions/generators.OutputMetadataSchema" }, { "type": "null" } ] }, "readme": { "oneOf": [ { "$ref": "#/definitions/generators.ReadmeSchema" }, { "type": "null" } ] }, "default-group": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "groups": { "oneOf": [ { "type": "object", "additionalProperties": { "$ref": "#/definitions/group.GeneratorGroupSchema" } }, { "type": "null" } ] }, "reviewers": { "oneOf": [ { "$ref": "#/definitions/reviewers.ReviewersSchema" }, { "type": "null" } ] }, "openapi": { "oneOf": [ { "$ref": "#/definitions/generators.GeneratorsOpenAPISchema" }, { "type": "null" } ] }, "openapi-overrides": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "spec-origin": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "async-api": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "api-settings": { "oneOf": [ { "$ref": "#/definitions/generators.APIDefinitionSettingsSchema" }, { "type": "null" } ] } }, "additionalProperties": false, "definitions": { "fernDefinition.auth.OAuthAccessTokenRequestPropertiesSchema": { "type": "object", "properties": { "client-id": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "client-secret": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "scopes": { "oneOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, "fernDefinition.auth.OAuthAccessTokenResponsePropertiesSchema": { "type": "object", "properties": { "access-token": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "expires-in": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "refresh-token": { "oneOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, "fernDefinition.auth.OAuthGetTokenEndpointSchema": { "type": "object", "properties": { "endpoint": { "type": "string" }, "request-properties": { "oneOf": [ { "$ref": "#/definitions/fernDefinition.auth.OAuthAccessTokenRequestPropertiesSchema" }, { "type": "null" } ] }, "response-properties": { "oneOf": [ { "$ref": "#/definitions/fernDefinition.auth.OAuthAccessTokenResponsePropertiesSchema" }, { "type": "null" } ] } }, "required": [ "endpoint" ], "additionalProperties": false }, "fernDefinition.auth.OAuthRefreshTokenRequestPropertiesSchema": { "type": "object", "properties": { "refresh-token": { "type": "string" } }, "required": [ "refresh-token" ], "additionalProperties": false }, "fernDefinition.auth.OAuthRefreshTokenResponsePropertiesSchema": { "type": "object", "properties": { "access-token": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "expires-in": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "refresh-token": { "oneOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, "fernDefinition.auth.OAuthRefreshTokenEndpointSchema": { "type": "object", "properties": { "endpoint": { "type": "string" }, "request-properties": { "oneOf": [ { "$ref": "#/definitions/fernDefinition.auth.OAuthRefreshTokenRequestPropertiesSchema" }, { "type": "null" } ] }, "response-properties": { "oneOf": [ { "$ref": "#/definitions/fernDefinition.auth.OAuthRefreshTokenResponsePropertiesSchema" }, { "type": "null" } ] } }, "required": [ "endpoint" ], "additionalProperties": false }, "fernDefinition.auth.OAuthSchemeSchema": { "type": "object", "properties": { "docs": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "scheme": { "const": "oauth" }, "type": { "const": "client-credentials" }, "scopes": { "oneOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] }, "client-id-env": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "client-secret-env": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "token-prefix": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "token-header": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "get-token": { "$ref": "#/definitions/fernDefinition.auth.OAuthGetTokenEndpointSchema" }, "refresh-token": { "oneOf": [ { "$ref": "#/definitions/fernDefinition.auth.OAuthRefreshTokenEndpointSchema" }, { "type": "null" } ] } }, "required": [ "scheme", "type", "get-token" ], "additionalProperties": false }, "fernDefinition.auth.HeaderAuthSchemeSchema": { "type": "object", "properties": { "env": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "name": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "docs": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "header": { "type": "string" }, "type": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "prefix": { "oneOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": [ "header" ], "additionalProperties": false }, "fernDefinition.auth.AuthVariable": { "type": "object", "properties": { "env": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "name": { "oneOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, "fernDefinition.auth.BasicAuthSchemeSchema": { "type": "object", "properties": { "docs": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "scheme": { "const": "basic" }, "username": { "oneOf": [ { "$ref": "#/definitions/fernDefinition.auth.AuthVariable" }, { "type": "null" } ] }, "password": { "oneOf": [ { "$ref": "#/definitions/fernDefinition.auth.AuthVariable" }, { "type": "null" } ] } }, "required": [ "scheme" ], "additionalProperties": false }, "fernDefinition.auth.BearerAuthSchemeSchema": { "type": "object", "properties": { "docs": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "scheme": { "const": "bearer" }, "token": { "oneOf": [ { "$ref": "#/definitions/fernDefinition.auth.AuthVariable" }, { "type": "null" } ] } }, "required": [ "scheme" ], "additionalProperties": false }, "fernDefinition.auth.AuthSchemeDeclarationSchema": { "anyOf": [ { "$ref": "#/definitions/fernDefinition.auth.OAuthSchemeSchema" }, { "$ref": "#/definitions/fernDefinition.auth.HeaderAuthSchemeSchema" }, { "$ref": "#/definitions/fernDefinition.auth.BasicAuthSchemeSchema" }, { "$ref": "#/definitions/fernDefinition.auth.BearerAuthSchemeSchema" } ] }, "generators.APIDefinitionPathSchema": { "type": "string" }, "generators.UnionSettingsSchema": { "type": "string", "enum": [ "v1" ] }, "generators.MessageNamingSettingsSchema": { "type": "string", "enum": [ "v1", "v2" ] }, "generators.APIDefinitionSettingsSchema": { "type": "object", "properties": { "use-title": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] }, "unions": { "oneOf": [ { "$ref": "#/definitions/generators.UnionSettingsSchema" }, { "type": "null" } ] }, "message-naming": { "oneOf": [ { "$ref": "#/definitions/generators.MessageNamingSettingsSchema" }, { "type": "null" } ] }, "only-include-referenced-schemas": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] }, "inline-path-parameters": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] } }, "additionalProperties": false }, "generators.APIDefinitionWithOverridesSchema": { "type": "object", "properties": { "path": { "$ref": "#/definitions/generators.APIDefinitionPathSchema" }, "origin": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "overrides": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "audiences": { "oneOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] }, "settings": { "oneOf": [ { "$ref": "#/definitions/generators.APIDefinitionSettingsSchema" }, { "type": "null" } ] } }, "required": [ "path" ], "additionalProperties": false }, "generators.ProtobufDefinitionSchema": { "type": "object", "properties": { "root": { "type": "string" }, "target": { "type": "string" }, "overrides": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "local-generation": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] } }, "required": [ "root", "target" ], "additionalProperties": false }, "generators.ProtobufAPIDefinitionSchema": { "type": "object", "properties": { "proto": { "$ref": "#/definitions/generators.ProtobufDefinitionSchema" } }, "required": [ "proto" ], "additionalProperties": false }, "generators.APIDefinitionSchema": { "anyOf": [ { "$ref": "#/definitions/generators.APIDefinitionPathSchema" }, { "$ref": "#/definitions/generators.APIDefinitionWithOverridesSchema" }, { "$ref": "#/definitions/generators.ProtobufAPIDefinitionSchema" } ] }, "generators.APIDefinitionList": { "type": "array", "items": { "$ref": "#/definitions/generators.APIDefinitionSchema" } }, "generators.APIConfigurationSchemaInternal": { "anyOf": [ { "$ref": "#/definitions/generators.APIDefinitionPathSchema" }, { "$ref": "#/definitions/generators.APIDefinitionWithOverridesSchema" }, { "$ref": "#/definitions/generators.APIDefinitionList" }, { "$ref": "#/definitions/generators.ProtobufAPIDefinitionSchema" } ] }, "generators.NamespacedAPIConfigurationSchema": { "type": "object", "properties": { "namespaces": { "type": "object", "additionalProperties": { "$ref": "#/definitions/generators.APIConfigurationSchemaInternal" } } }, "required": [ "namespaces" ], "additionalProperties": false }, "fernDefinition.encoding.ProtobufTypeSchema": { "type": "object", "properties": { "type": { "type": "string" } }, "required": [ "type" ], "additionalProperties": false }, "fernDefinition.encoding.EncodingSchema": { "type": "object", "properties": { "proto": { "oneOf": [ { "$ref": "#/definitions/fernDefinition.encoding.ProtobufTypeSchema" }, { "type": "null" } ] } }, "additionalProperties": false }, "fernDefinition.validation.StringValidationSchema": { "type": "object", "properties": { "minLength": { "oneOf": [ { "type": "integer" }, { "type": "null" } ] }, "maxLength": { "oneOf": [ { "type": "integer" }, { "type": "null" } ] }, "pattern": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "format": { "oneOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, "fernDefinition.validation.NumberValidationSchema": { "type": "object", "properties": { "min": { "oneOf": [ { "type": "number" }, { "type": "null" } ] }, "max": { "oneOf": [ { "type": "number" }, { "type": "null" } ] }, "exclusiveMin": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] }, "exclusiveMax": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] }, "multipleOf": { "oneOf": [ { "type": "number" }, { "type": "null" } ] } }, "additionalProperties": false }, "fernDefinition.validation.ValidationSchema": { "anyOf": [ { "$ref": "#/definitions/fernDefinition.validation.StringValidationSchema" }, { "$ref": "#/definitions/fernDefinition.validation.NumberValidationSchema" } ] }, "fernDefinition.availability.AvailabilityStatusSchema": { "type": "string", "enum": [ "in-development", "pre-release", "deprecated", "generally-available" ] }, "fernDefinition.availability.AvailabilitySchema": { "type": "object", "properties": { "status": { "$ref": "#/definitions/fernDefinition.availability.AvailabilityStatusSchema" }, "message": { "oneOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": [ "status" ], "additionalProperties": false }, "fernDefinition.availability.AvailabilityUnionSchema": { "anyOf": [ { "$ref": "#/definitions/fernDefinition.availability.AvailabilityStatusSchema" }, { "$ref": "#/definitions/fernDefinition.availability.AvailabilitySchema" } ] }, "fernDefinition.service.TypeReferenceDeclarationWithEnvOverrideSchema": { "type": "object", "properties": { "type": { "type": "string" }, "default": { "oneOf": [ { "type": [ "string", "number", "boolean", "object", "array", "null" ] }, { "type": "null" } ] }, "encoding": { "oneOf": [ { "$ref": "#/definitions/fernDefinition.encoding.EncodingSchema" }, { "type": "null" } ] }, "validation": { "oneOf": [ { "$ref": "#/definitions/fernDefinition.validation.ValidationSchema" }, { "type": "null" } ] }, "docs": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "availability": { "oneOf": [ { "$ref": "#/definitions/fernDefinition.availability.AvailabilityUnionSchema" }, { "type": "null" } ] }, "name": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "audiences": { "oneOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] }, "env": { "oneOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": [ "type" ], "additionalProperties": false }, "fernDefinition.service.TypeReferenceDeclarationWithEnvOverride": { "anyOf": [ { "type": "string" }, { "$ref": "#/definitions/fernDefinition.service.TypeReferenceDeclarationWithEnvOverrideSchema" } ] }, "fernDefinition.service.HttpHeaderSchema": { "$ref": "#/definitions/fernDefinition.service.TypeReferenceDeclarationWithEnvOverride" }, "fernDefinition.environments.SingleBaseUrlEnvironmentSchema": { "type": "object", "properties": { "audiences": { "oneOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] }, "docs": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "url": { "type": "string" } }, "required": [ "url" ], "additionalProperties": false }, "fernDefinition.environments.MultipleBaseUrlsEnvironmentSchema": { "type": "object", "properties": { "audiences": { "oneOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] }, "docs": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "urls": { "type": "object", "additionalProperties": { "type": "string" } } }, "required": [ "urls" ], "additionalProperties": false }, "fernDefinition.environments.EnvironmentSchema": { "anyOf": [ { "type": "string" }, { "$ref": "#/definitions/fernDefinition.environments.SingleBaseUrlEnvironmentSchema" }, { "$ref": "#/definitions/fernDefinition.environments.MultipleBaseUrlsEnvironmentSchema" } ] }, "fernDefinition.auth.AuthSchemeReferenceSchema": { "type": "object", "properties": { "docs": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "scheme": { "type": "string" } }, "required": [ "scheme" ], "additionalProperties": false }, "fernDefinition.auth.AnyAuthItem": { "anyOf": [ { "type": "string" }, { "$ref": "#/definitions/fernDefinition.auth.AuthSchemeReferenceSchema" } ] }, "fernDefinition.auth.AnyAuthSchemesSchema": { "type": "object", "properties": { "docs": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "any": { "type": "array", "items": { "$ref": "#/definitions/fernDefinition.auth.AnyAuthItem" } } }, "required": [ "any" ], "additionalProperties": false }, "fernDefinition.auth.ApiAuthSchema": { "anyOf": [ { "type": "string" }, { "$ref": "#/definitions/fernDefinition.auth.AuthSchemeReferenceSchema" }, { "$ref": "#/definitions/fernDefinition.auth.AnyAuthSchemesSchema" } ] }, "generators.OpenAPISettingsSchema": { "type": "object", "properties": { "title-as-schema-name": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] }, "optional-additional-properties": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] }, "coerce-enums-to-literals": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] }, "object-query-parameters": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] }, "respect-readonly-schemas": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] }, "only-include-referenced-schemas": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] }, "inline-path-parameters": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] } }, "additionalProperties": false }, "generators.OpenAPISpecSchema": { "type": "object", "properties": { "openapi": { "type": "string" }, "origin": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "overrides": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "namespace": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "settings": { "oneOf": [ { "$ref": "#/definitions/generators.OpenAPISettingsSchema" }, { "type": "null" } ] } }, "required": [ "openapi" ], "additionalProperties": false }, "generators.AsyncAPISettingsSchema": { "type": "object", "properties": { "title-as-schema-name": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] }, "optional-additional-properties": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] }, "coerce-enums-to-literals": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] } }, "additionalProperties": false }, "generators.AsyncAPISchema": { "type": "object", "properties": { "asyncapi": { "type": "string" }, "origin": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "overrides": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "namespace": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "settings": { "oneOf": [ { "$ref": "#/definitions/generators.AsyncAPISettingsSchema" }, { "type": "null" } ] } }, "required": [ "asyncapi" ], "additionalProperties": false }, "generators.AsyncAPIOrOpenAPISpecSchema": { "anyOf": [ { "$ref": "#/definitions/generators.OpenAPISpecSchema" }, { "$ref": "#/definitions/generators.AsyncAPISchema" } ] }, "generators.ConjureSchema": { "type": "object", "properties": { "conjure": { "type": "string" } }, "required": [ "conjure" ], "additionalProperties": false }, "generators.APIConfigurationV2SpecsSchema": { "anyOf": [ { "type": "array", "items": { "$ref": "#/definitions/generators.AsyncAPIOrOpenAPISpecSchema" } }, { "$ref": "#/definitions/generators.ConjureSchema" } ] }, "generators.APIConfigurationV2Schema": { "type": "object", "properties": { "headers": { "oneOf": [ { "type": "object", "additionalProperties": { "$ref": "#/definitions/fernDefinition.service.HttpHeaderSchema" } }, { "type": "null" } ] }, "default-url": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "default-environment": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "environments": { "oneOf": [ { "type": "object", "additionalProperties": { "$ref": "#/definitions/fernDefinition.environments.EnvironmentSchema" } }, { "type": "null" } ] }, "auth": { "oneOf": [ { "$ref": "#/definitions/fernDefinition.auth.ApiAuthSchema" }, { "type": "null" } ] }, "specs": { "$ref": "#/definitions/generators.APIConfigurationV2SpecsSchema" } }, "required": [ "specs" ], "additionalProperties": false }, "generators.APIConfigurationSchema": { "anyOf": [ { "$ref": "#/definitions/generators.APIConfigurationSchemaInternal" }, { "$ref": "#/definitions/generators.NamespacedAPIConfigurationSchema" }, { "$ref": "#/definitions/generators.APIConfigurationV2Schema" } ] }, "generators.WhitelabelGithubConfigurationSchema": { "type": "object", "properties": { "username": { "type": "string" }, "email": { "type": "string" }, "token": { "type": "string" } }, "required": [ "username", "email", "token" ], "additionalProperties": false }, "generators.WhitelabelConfigurationSchema": { "type": "object", "properties": { "github": { "oneOf": [ { "$ref": "#/definitions/generators.WhitelabelGithubConfigurationSchema" }, { "type": "null" } ] } }, "additionalProperties": false }, "generators.OutputMetadataAuthor": { "type": "object", "properties": { "name": { "type": "string" }, "email": { "type": "string" } }, "required": [ "name", "email" ], "additionalProperties": false }, "generators.OutputMetadataSchema": { "type": "object", "properties": { "description": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "authors": { "oneOf": [ { "type": "array", "items": { "$ref": "#/definitions/generators.OutputMetadataAuthor" } }, { "type": "null" } ] } }, "additionalProperties": false }, "generators.ReadmeEndpointObjectSchema": { "type": "object", "properties": { "method": { "type": "string" }, "path": { "type": "string" }, "stream": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] } }, "required": [ "method", "path" ], "additionalProperties": false }, "generators.ReadmeEndpointSchema": { "anyOf": [ { "type": "string", "description": "Endpoint name in 'POST /users' format" }, { "$ref": "#/definitions/generators.ReadmeEndpointObjectSchema" } ] }, "generators.ReadmeSchema": { "type": "object", "properties": { "bannerLink": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "introduction": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "apiReferenceLink": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "defaultEndpoint": { "oneOf": [ { "$ref": "#/definitions/generators.ReadmeEndpointSchema" }, { "type": "null" } ] }, "features": { "oneOf": [ { "type": "object", "additionalProperties": { "type": "array", "items": { "$ref": "#/definitions/generators.ReadmeEndpointSchema" } } }, { "type": "null" } ] } }, "additionalProperties": false }, "group.MavenOutputSignatureSchema": { "type": "object", "properties": { "keyId": { "type": "string" }, "password": { "type": "string" }, "secretKey": { "type": "string" } }, "required": [ "keyId", "password", "secretKey" ], "additionalProperties": false }, "group.PypiOutputMetadataSchema": { "type": "object", "properties": { "description": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "authors": { "oneOf": [ { "type": "array", "items": { "$ref": "#/definitions/generators.OutputMetadataAuthor" } }, { "type": "null" } ] }, "keywords": { "oneOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] }, "documentation-link": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "homepage-link": { "oneOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, "group.GeneratorOutputSchema": { "type": "object", "properties": { "location": { "type": "string", "enum": [ "npm", "maven", "pypi", "postman", "local-file-system", "nuget", "rubygems" ] } }, "required": [ "location" ], "oneOf": [ { "properties": { "location": { "const": "npm" }, "url": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "package-name": { "type": "string" }, "token": { "oneOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": [ "location", "package-name" ] }, { "properties": { "location": { "const": "maven" }, "url": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "coordinate": { "type": "string" }, "username": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "password": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "signature": { "oneOf": [ { "$ref": "#/definitions/group.MavenOutputSignatureSchema" }, { "type": "null" } ] } }, "required": [ "location", "coordinate" ] }, { "properties": { "location": { "const": "pypi" }, "url": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "package-name": { "type": "string" }, "token": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "username": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "password": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "metadata": { "oneOf": [ { "$ref": "#/definitions/group.PypiOutputMetadataSchema" }, { "type": "null" } ] } }, "required": [ "location", "package-name" ] }, { "properties": { "location": { "const": "postman" }, "api-key": { "type": "string" }, "workspace-id": { "type": "string" }, "collection-id": { "oneOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": [ "location", "api-key", "workspace-id" ] }, { "properties": { "location": { "const": "local-file-system" }, "path": { "type": "string" } }, "required": [ "location", "path" ] }, { "properties": { "location": { "const": "nuget" }, "url": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "package-name": { "type": "string" }, "api-key": { "oneOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": [ "location", "package-name" ] }, { "properties": { "location": { "const": "rubygems" }, "url": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "package-name": { "type": "string" }, "api-key": { "oneOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": [ "location", "package-name" ] } ] }, "license.GithubLicenseType": { "type": "string", "enum": [ "MIT", "Apache-2.0" ] }, "license.GithubLicenseCustomSchema": { "type": "object", "properties": { "custom": { "type": "string" } }, "required": [ "custom" ], "additionalProperties": false }, "license.GithubLicenseSchema": { "anyOf": [ { "$ref": "#/definitions/license.GithubLicenseType" }, { "$ref": "#/definitions/license.GithubLicenseCustomSchema" } ] }, "group.GithubCommitAndReleaseMode": { "type": "string", "enum": [ "commit", "release" ] }, "group.GithubCommitAndReleaseSchema": { "type": "object", "properties": { "repository": { "type": "string" }, "license": { "oneOf": [ { "$ref": "#/definitions/license.GithubLicenseSchema" }, { "type": "null" } ] }, "mode": { "oneOf": [ { "$ref": "#/definitions/group.GithubCommitAndReleaseMode" }, { "type": "null" } ] } }, "required": [ "repository" ], "additionalProperties": false }, "reviewers.ReviewerSchema": { "type": "object", "properties": { "name": { "type": "string" } }, "required": [ "name" ], "additionalProperties": false }, "reviewers.ReviewersSchema": { "type": "object", "properties": { "teams": { "oneOf": [ { "type": "array", "items": { "$ref": "#/definitions/reviewers.ReviewerSchema" } }, { "type": "null" } ] }, "users": { "oneOf": [ { "type": "array", "items": { "$ref": "#/definitions/reviewers.ReviewerSchema" } }, { "type": "null" } ] } }, "additionalProperties": false }, "group.GithubPullRequestSchema": { "type": "object", "properties": { "repository": { "type": "string" }, "branch": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "license": { "oneOf": [ { "$ref": "#/definitions/license.GithubLicenseSchema" }, { "type": "null" } ] }, "mode": { "const": "pull-request" }, "reviewers": { "oneOf": [ { "$ref": "#/definitions/reviewers.ReviewersSchema" }, { "type": "null" } ] } }, "required": [ "repository", "mode" ], "additionalProperties": false }, "group.GithubPushSchema": { "type": "object", "properties": { "repository": { "type": "string" }, "license": { "oneOf": [ { "$ref": "#/definitions/license.GithubLicenseSchema" }, { "type": "null" } ] }, "mode": { "const": "push" }, "branch": { "oneOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": [ "repository", "mode" ], "additionalProperties": false }, "group.GithubConfigurationSchema": { "anyOf": [ { "$ref": "#/definitions/group.GithubCommitAndReleaseSchema" }, { "$ref": "#/definitions/group.GithubPullRequestSchema" }, { "$ref": "#/definitions/group.GithubPushSchema" } ] }, "group.GeneratorPublishMetadataSchema": { "type": "object", "properties": { "package-description": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "email": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "reference-url": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "author": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "license": { "oneOf": [ { "$ref": "#/definitions/license.GithubLicenseSchema" }, { "type": "null" } ] } }, "additionalProperties": false }, "group.GeneratorSnippetsSchema": { "type": "object", "properties": { "path": { "type": "string" } }, "required": [ "path" ], "additionalProperties": false }, "group.GeneratorAPISettingsSchema": { "type": "object", "properties": { "settings": { "oneOf": [ { "$ref": "#/definitions/generators.APIDefinitionSettingsSchema" }, { "type": "null" } ] } }, "additionalProperties": false }, "group.GeneratorInvocationSchema": { "type": "object", "properties": { "name": { "type": "string" }, "version": { "type": "string" }, "output": { "oneOf": [ { "$ref": "#/definitions/group.GeneratorOutputSchema" }, { "type": "null" } ] }, "github": { "oneOf": [ { "$ref": "#/definitions/group.GithubConfigurationSchema" }, { "type": "null" } ] }, "config": { "type": [ "string", "number", "boolean", "object", "array", "null" ] }, "metadata": { "oneOf": [ { "$ref": "#/definitions/group.GeneratorPublishMetadataSchema" }, { "type": "null" } ] }, "keywords": { "oneOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] }, "snippets": { "oneOf": [ { "$ref": "#/definitions/group.GeneratorSnippetsSchema" }, { "type": "null" } ] }, "ir-version": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "smart-casing": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] }, "api": { "oneOf": [ { "$ref": "#/definitions/group.GeneratorAPISettingsSchema" }, { "type": "null" } ] }, "disable-examples": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] }, "publish-metadata": { "oneOf": [ { "$ref": "#/definitions/group.GeneratorPublishMetadataSchema" }, { "type": "null" } ] } }, "required": [ "name", "version", "config" ], "additionalProperties": false }, "group.GeneratorGroupSchema": { "type": "object", "properties": { "audiences": { "oneOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ] }, "generators": { "type": "array", "items": { "$ref": "#/definitions/group.GeneratorInvocationSchema" } }, "metadata": { "oneOf": [ { "$ref": "#/definitions/generators.OutputMetadataSchema" }, { "type": "null" } ] }, "reviewers": { "oneOf": [ { "$ref": "#/definitions/reviewers.ReviewersSchema" }, { "type": "null" } ] } }, "required": [ "generators" ], "additionalProperties": false }, "generators.GeneratorsOpenAPIObjectSchema": { "type": "object", "properties": { "path": { "type": "string" }, "origin": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "overrides": { "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "disable-examples": { "oneOf": [ { "type": "boolean" }, { "type": "null" } ] }, "settings": { "$ref": "#/definitions/generators.APIDefinitionSettingsSchema" } }, "required": [ "path", "settings" ], "additionalProperties": false }, "generators.GeneratorsOpenAPISchema": { "anyOf": [ { "$ref": "#/definitions/generators.GeneratorsOpenAPIObjectSchema" }, { "type": "string" } ] } } }