Befor generating

This commit is contained in:
marys
2026-06-01 13:17:37 +02:00
parent 3383f4bf4a
commit 1aa1b5f625
6756 changed files with 649946 additions and 1 deletions
@@ -0,0 +1,38 @@
{
"type": "object",
"required": [
"type",
"name",
"in"
],
"properties": {
"type": {
"type": "string",
"enum": [
"httpApiKey"
]
},
"name": {
"type": "string"
},
"in": {
"type": "string",
"enum": [
"header",
"query",
"cookie"
]
},
"description": {
"type": "string"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/APIKeyHTTPSecurityScheme.json"
}
@@ -0,0 +1,35 @@
{
"type": "object",
"required": [
"type",
"scheme"
],
"properties": {
"scheme": {
"type": "string",
"enum": [
"bearer"
]
},
"bearerFormat": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"http"
]
},
"description": {
"type": "string"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/BearerHTTPSecurityScheme.json"
}
@@ -0,0 +1,15 @@
{
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/NonBearerHTTPSecurityScheme.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/BearerHTTPSecurityScheme.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/APIKeyHTTPSecurityScheme.json"
}
],
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/HTTPSecurityScheme.json"
}
@@ -0,0 +1,40 @@
{
"not": {
"type": "object",
"properties": {
"scheme": {
"type": "string",
"enum": [
"bearer"
]
}
}
},
"type": "object",
"required": [
"scheme",
"type"
],
"properties": {
"scheme": {
"type": "string"
},
"description": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"http"
]
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/NonBearerHTTPSecurityScheme.json"
}
@@ -0,0 +1,13 @@
{
"type": "object",
"required": [
"$ref"
],
"properties": {
"$ref": {
"$ref": "http://asyncapi.com/definitions/2.5.0/ReferenceObject.json"
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/Reference.json"
}
@@ -0,0 +1,6 @@
{
"type": "string",
"format": "uri-reference",
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/ReferenceObject.json"
}
@@ -0,0 +1,25 @@
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"gssapi"
]
},
"description": {
"type": "string"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/SaslGssapiSecurityScheme.json"
}
@@ -0,0 +1,25 @@
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"plain"
]
},
"description": {
"type": "string"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/SaslPlainSecurityScheme.json"
}
@@ -0,0 +1,26 @@
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"scramSha256",
"scramSha512"
]
},
"description": {
"type": "string"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/SaslScramSecurityScheme.json"
}
@@ -0,0 +1,15 @@
{
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/SaslPlainSecurityScheme.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/SaslScramSecurityScheme.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/SaslGssapiSecurityScheme.json"
}
],
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/SaslSecurityScheme.json"
}
@@ -0,0 +1,12 @@
{
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/SecurityRequirement.json"
}
@@ -0,0 +1,33 @@
{
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/userPassword.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/apiKey.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/X509.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/symmetricEncryption.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/asymmetricEncryption.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/HTTPSecurityScheme.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/oauth2Flows.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/openIdConnect.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/SaslSecurityScheme.json"
}
],
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/SecurityScheme.json"
}
@@ -0,0 +1,25 @@
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"X509"
]
},
"description": {
"type": "string"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/X509.json"
}
@@ -0,0 +1,33 @@
{
"type": "object",
"required": [
"type",
"in"
],
"properties": {
"type": {
"type": "string",
"enum": [
"apiKey"
]
},
"in": {
"type": "string",
"enum": [
"user",
"password"
]
},
"description": {
"type": "string"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/apiKey.json"
}
@@ -0,0 +1,25 @@
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"asymmetricEncryption"
]
},
"description": {
"type": "string"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/asymmetricEncryption.json"
}
@@ -0,0 +1,56 @@
{
"title": "AsyncAPI 2.5.0 schema.",
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/asyncapi.json",
"type": "object",
"required": [
"asyncapi",
"info",
"channels"
],
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"properties": {
"asyncapi": {
"type": "string",
"enum": [
"2.5.0"
],
"description": "The AsyncAPI specification version of this document."
},
"id": {
"type": "string",
"description": "A unique id representing the application.",
"format": "uri"
},
"info": {
"$ref": "http://asyncapi.com/definitions/2.5.0/info.json"
},
"servers": {
"$ref": "http://asyncapi.com/definitions/2.5.0/servers.json"
},
"defaultContentType": {
"type": "string"
},
"channels": {
"$ref": "http://asyncapi.com/definitions/2.5.0/channels.json"
},
"components": {
"$ref": "http://asyncapi.com/definitions/2.5.0/components.json"
},
"tags": {
"type": "array",
"items": {
"$ref": "http://asyncapi.com/definitions/2.5.0/tag.json"
},
"uniqueItems": true
},
"externalDocs": {
"$ref": "http://asyncapi.com/definitions/2.5.0/externalDocs.json"
}
}
}
@@ -0,0 +1,24 @@
{
"type": "object",
"additionalProperties": true,
"properties": {
"http": {},
"ws": {},
"amqp": {},
"amqp1": {},
"mqtt": {},
"mqtt5": {},
"kafka": {},
"anypointmq": {},
"nats": {},
"jms": {},
"sns": {},
"sqs": {},
"stomp": {},
"redis": {},
"ibmmq": {},
"solace": {}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/bindingsObject.json"
}
@@ -0,0 +1,44 @@
{
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"properties": {
"$ref": {
"$ref": "http://asyncapi.com/definitions/2.5.0/ReferenceObject.json"
},
"parameters": {
"$ref": "http://asyncapi.com/definitions/2.5.0/parameters.json"
},
"description": {
"type": "string",
"description": "A description of the channel."
},
"servers": {
"type": "array",
"description": "The names of the servers on which this channel is available. If absent or empty then this channel must be available on all servers.",
"items": {
"type": "string"
},
"uniqueItems": true
},
"publish": {
"$ref": "http://asyncapi.com/definitions/2.5.0/operation.json"
},
"subscribe": {
"$ref": "http://asyncapi.com/definitions/2.5.0/operation.json"
},
"deprecated": {
"type": "boolean",
"default": false
},
"bindings": {
"$ref": "http://asyncapi.com/definitions/2.5.0/bindingsObject.json"
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/channelItem.json"
}
@@ -0,0 +1,13 @@
{
"type": "object",
"propertyNames": {
"type": "string",
"format": "uri-template",
"minLength": 1
},
"additionalProperties": {
"$ref": "http://asyncapi.com/definitions/2.5.0/channelItem.json"
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/channels.json"
}
@@ -0,0 +1,98 @@
{
"type": "object",
"description": "An object to hold a set of reusable objects for different aspects of the AsyncAPI Specification.",
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"properties": {
"schemas": {
"$ref": "http://asyncapi.com/definitions/2.5.0/schemas.json"
},
"servers": {
"$ref": "http://asyncapi.com/definitions/2.5.0/servers.json"
},
"channels": {
"$ref": "http://asyncapi.com/definitions/2.5.0/channels.json"
},
"serverVariables": {
"$ref": "http://asyncapi.com/definitions/2.5.0/serverVariables.json"
},
"messages": {
"$ref": "http://asyncapi.com/definitions/2.5.0/messages.json"
},
"securitySchemes": {
"type": "object",
"patternProperties": {
"^[\\w\\d\\.\\-_]+$": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/SecurityScheme.json"
}
]
}
}
},
"parameters": {
"$ref": "http://asyncapi.com/definitions/2.5.0/parameters.json"
},
"correlationIds": {
"type": "object",
"patternProperties": {
"^[\\w\\d\\.\\-_]+$": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/correlationId.json"
}
]
}
}
},
"operationTraits": {
"type": "object",
"additionalProperties": {
"$ref": "http://asyncapi.com/definitions/2.5.0/operationTrait.json"
}
},
"messageTraits": {
"type": "object",
"additionalProperties": {
"$ref": "http://asyncapi.com/definitions/2.5.0/messageTrait.json"
}
},
"serverBindings": {
"type": "object",
"additionalProperties": {
"$ref": "http://asyncapi.com/definitions/2.5.0/bindingsObject.json"
}
},
"channelBindings": {
"type": "object",
"additionalProperties": {
"$ref": "http://asyncapi.com/definitions/2.5.0/bindingsObject.json"
}
},
"operationBindings": {
"type": "object",
"additionalProperties": {
"$ref": "http://asyncapi.com/definitions/2.5.0/bindingsObject.json"
}
},
"messageBindings": {
"type": "object",
"additionalProperties": {
"$ref": "http://asyncapi.com/definitions/2.5.0/bindingsObject.json"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/components.json"
}
@@ -0,0 +1,28 @@
{
"type": "object",
"description": "Contact information for the owners of the API.",
"additionalProperties": false,
"properties": {
"name": {
"type": "string",
"description": "The identifying name of the contact person/organization."
},
"url": {
"type": "string",
"description": "The URL pointing to the contact information.",
"format": "uri"
},
"email": {
"type": "string",
"description": "The email address of the contact person/organization.",
"format": "email"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/contact.json"
}
@@ -0,0 +1,25 @@
{
"type": "object",
"required": [
"location"
],
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"properties": {
"description": {
"type": "string",
"description": "A optional description of the correlation ID. GitHub Flavored Markdown is allowed."
},
"location": {
"type": "string",
"description": "A runtime expression that specifies the location of the correlation ID",
"pattern": "^\\$message\\.(header|payload)#(\\/(([^\\/~])|(~[01]))*)*"
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/correlationId.json"
}
@@ -0,0 +1,5 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/http://something.example.com/schemas/external.json",
"type": "string"
}
@@ -0,0 +1,24 @@
{
"type": "object",
"additionalProperties": false,
"description": "information about external documentation",
"required": [
"url"
],
"properties": {
"description": {
"type": "string"
},
"url": {
"type": "string",
"format": "uri"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/externalDocs.json"
}
@@ -0,0 +1,41 @@
{
"type": "object",
"description": "General information about the API.",
"required": [
"version",
"title"
],
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"properties": {
"title": {
"type": "string",
"description": "A unique and precise title of the API."
},
"version": {
"type": "string",
"description": "A semantic version number of the API."
},
"description": {
"type": "string",
"description": "A longer description of the API. Should be different from the title. CommonMark is allowed."
},
"termsOfService": {
"type": "string",
"description": "A URL to the Terms of Service for the API. MUST be in the format of a URL.",
"format": "uri"
},
"contact": {
"$ref": "http://asyncapi.com/definitions/2.5.0/contact.json"
},
"license": {
"$ref": "http://asyncapi.com/definitions/2.5.0/license.json"
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/info.json"
}
@@ -0,0 +1,25 @@
{
"type": "object",
"required": [
"name"
],
"additionalProperties": false,
"properties": {
"name": {
"type": "string",
"description": "The name of the license type. It's encouraged to use an OSI compatible license."
},
"url": {
"type": "string",
"description": "The URL pointing to the license.",
"format": "uri"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/license.json"
}
@@ -0,0 +1,224 @@
{
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/Reference.json"
},
{
"oneOf": [
{
"type": "object",
"required": ["oneOf"],
"additionalProperties": false,
"properties": {
"oneOf": {
"type": "array",
"items": {
"$ref": "http://asyncapi.com/definitions/2.5.0/message.json"
}
}
}
},
{
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"properties": {
"schemaFormat": {
"type": "string"
},
"contentType": {
"type": "string"
},
"headers": {
"allOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/schema.json"
},
{
"properties": {
"type": {
"const": "object"
}
}
}
]
},
"messageId": {
"type": "string"
},
"payload": {},
"correlationId": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/correlationId.json"
}
]
},
"tags": {
"type": "array",
"items": {
"$ref": "http://asyncapi.com/definitions/2.5.0/tag.json"
},
"uniqueItems": true
},
"summary": {
"type": "string",
"description": "A brief summary of the message."
},
"name": {
"type": "string",
"description": "Name of the message."
},
"title": {
"type": "string",
"description": "A human-friendly title for the message."
},
"description": {
"type": "string",
"description": "A longer description of the message. CommonMark is allowed."
},
"externalDocs": {
"$ref": "http://asyncapi.com/definitions/2.5.0/externalDocs.json"
},
"deprecated": {
"type": "boolean",
"default": false
},
"examples": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"anyOf": [
{
"required": ["payload"]
},
{
"required": ["headers"]
}
],
"properties": {
"name": {
"type": "string",
"description": "Machine readable name of the message example."
},
"summary": {
"type": "string",
"description": "A brief summary of the message example."
},
"headers": {
"type": "object"
},
"payload": {}
}
}
},
"bindings": {
"$ref": "http://asyncapi.com/definitions/2.5.0/bindingsObject.json"
},
"traits": {
"type": "array",
"items": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/messageTrait.json"
}
]
}
}
},
"allOf": [
{
"if": {
"not": {
"required": [
"schemaFormat"
]
}
},
"then": {
"properties": {
"payload": {
"$ref": "http://asyncapi.com/definitions/2.5.0/schema.json"
}
}
}
},
{
"if": {
"required": [
"schemaFormat"
],
"properties": {
"schemaFormat": {
"enum": [
"application/vnd.aai.asyncapi;version=2.0.0",
"application/vnd.aai.asyncapi+json;version=2.0.0",
"application/vnd.aai.asyncapi+yaml;version=2.0.0",
"application/vnd.aai.asyncapi;version=2.1.0",
"application/vnd.aai.asyncapi+json;version=2.1.0",
"application/vnd.aai.asyncapi+yaml;version=2.1.0",
"application/vnd.aai.asyncapi;version=2.2.0",
"application/vnd.aai.asyncapi+json;version=2.2.0",
"application/vnd.aai.asyncapi+yaml;version=2.2.0",
"application/vnd.aai.asyncapi;version=2.3.0",
"application/vnd.aai.asyncapi+json;version=2.3.0",
"application/vnd.aai.asyncapi+yaml;version=2.3.0",
"application/vnd.aai.asyncapi;version=2.4.0",
"application/vnd.aai.asyncapi+json;version=2.4.0",
"application/vnd.aai.asyncapi+yaml;version=2.4.0",
"application/vnd.aai.asyncapi;version=2.5.0",
"application/vnd.aai.asyncapi+json;version=2.5.0",
"application/vnd.aai.asyncapi+yaml;version=2.5.0"
]
}
}
},
"then": {
"properties": {
"payload": {
"$ref": "http://asyncapi.com/definitions/2.5.0/schema.json"
}
}
}
},
{
"if": {
"required": [
"schemaFormat"
],
"properties": {
"schemaFormat": {
"enum": [
"application/schema+json;version=draft-07",
"application/schema+yaml;version=draft-07"
]
}
}
},
"then": {
"properties": {
"payload": {
"$ref": "http://json-schema.org/draft-07/schema"
}
}
}
}
]
}
]
}
],
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/message.json"
}
@@ -0,0 +1,85 @@
{
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"properties": {
"schemaFormat": {
"type": "string"
},
"contentType": {
"type": "string"
},
"headers": {
"allOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/schema.json"
},
{
"properties": {
"type": {
"const": "object"
}
}
}
]
},
"messageId": {
"type": "string"
},
"correlationId": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/correlationId.json"
}
]
},
"tags": {
"type": "array",
"items": {
"$ref": "http://asyncapi.com/definitions/2.5.0/tag.json"
},
"uniqueItems": true
},
"summary": {
"type": "string",
"description": "A brief summary of the message."
},
"name": {
"type": "string",
"description": "Name of the message."
},
"title": {
"type": "string",
"description": "A human-friendly title for the message."
},
"description": {
"type": "string",
"description": "A longer description of the message. CommonMark is allowed."
},
"externalDocs": {
"$ref": "http://asyncapi.com/definitions/2.5.0/externalDocs.json"
},
"deprecated": {
"type": "boolean",
"default": false
},
"examples": {
"type": "array",
"items": {
"type": "object"
}
},
"bindings": {
"$ref": "http://asyncapi.com/definitions/2.5.0/bindingsObject.json"
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/messageTrait.json"
}
@@ -0,0 +1,9 @@
{
"type": "object",
"additionalProperties": {
"$ref": "http://asyncapi.com/definitions/2.5.0/message.json"
},
"description": "JSON objects describing the messages being consumed and produced by the API.",
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/messages.json"
}
@@ -0,0 +1,28 @@
{
"type": "object",
"properties": {
"authorizationUrl": {
"type": "string",
"format": "uri"
},
"tokenUrl": {
"type": "string",
"format": "uri"
},
"refreshUrl": {
"type": "string",
"format": "uri"
},
"scopes": {
"$ref": "http://asyncapi.com/definitions/2.5.0/oauth2Scopes.json"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/oauth2Flow.json"
}
@@ -0,0 +1,105 @@
{
"type": "object",
"required": [
"type",
"flows"
],
"properties": {
"type": {
"type": "string",
"enum": [
"oauth2"
]
},
"description": {
"type": "string"
},
"flows": {
"type": "object",
"properties": {
"implicit": {
"allOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/oauth2Flow.json"
},
{
"required": [
"authorizationUrl",
"scopes"
]
},
{
"not": {
"required": [
"tokenUrl"
]
}
}
]
},
"password": {
"allOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/oauth2Flow.json"
},
{
"required": [
"tokenUrl",
"scopes"
]
},
{
"not": {
"required": [
"authorizationUrl"
]
}
}
]
},
"clientCredentials": {
"allOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/oauth2Flow.json"
},
{
"required": [
"tokenUrl",
"scopes"
]
},
{
"not": {
"required": [
"authorizationUrl"
]
}
}
]
},
"authorizationCode": {
"allOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/oauth2Flow.json"
},
{
"required": [
"authorizationUrl",
"tokenUrl",
"scopes"
]
}
]
}
},
"additionalProperties": false
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/oauth2Flows.json"
}
@@ -0,0 +1,8 @@
{
"type": "object",
"additionalProperties": {
"type": "string"
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/oauth2Scopes.json"
}
@@ -0,0 +1,30 @@
{
"type": "object",
"required": [
"type",
"openIdConnectUrl"
],
"properties": {
"type": {
"type": "string",
"enum": [
"openIdConnect"
]
},
"description": {
"type": "string"
},
"openIdConnectUrl": {
"type": "string",
"format": "uri"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/openIdConnect.json"
}
@@ -0,0 +1,57 @@
{
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"properties": {
"traits": {
"type": "array",
"items": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/operationTrait.json"
}
]
}
},
"summary": {
"type": "string"
},
"description": {
"type": "string"
},
"security": {
"type": "array",
"items": {
"$ref": "http://asyncapi.com/definitions/2.5.0/SecurityRequirement.json"
}
},
"tags": {
"type": "array",
"items": {
"$ref": "http://asyncapi.com/definitions/2.5.0/tag.json"
},
"uniqueItems": true
},
"externalDocs": {
"$ref": "http://asyncapi.com/definitions/2.5.0/externalDocs.json"
},
"operationId": {
"type": "string"
},
"bindings": {
"$ref": "http://asyncapi.com/definitions/2.5.0/bindingsObject.json"
},
"message": {
"$ref": "http://asyncapi.com/definitions/2.5.0/message.json"
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/operation.json"
}
@@ -0,0 +1,41 @@
{
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"properties": {
"summary": {
"type": "string"
},
"description": {
"type": "string"
},
"tags": {
"type": "array",
"items": {
"$ref": "http://asyncapi.com/definitions/2.5.0/tag.json"
},
"uniqueItems": true
},
"externalDocs": {
"$ref": "http://asyncapi.com/definitions/2.5.0/externalDocs.json"
},
"operationId": {
"type": "string"
},
"security": {
"type": "array",
"items": {
"$ref": "http://asyncapi.com/definitions/2.5.0/SecurityRequirement.json"
}
},
"bindings": {
"$ref": "http://asyncapi.com/definitions/2.5.0/bindingsObject.json"
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/operationTrait.json"
}
@@ -0,0 +1,24 @@
{
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"properties": {
"description": {
"type": "string",
"description": "A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed."
},
"schema": {
"$ref": "http://asyncapi.com/definitions/2.5.0/schema.json"
},
"location": {
"type": "string",
"description": "A runtime expression that specifies the location of the parameter value",
"pattern": "^\\$message\\.(header|payload)#(\\/(([^\\/~])|(~[01]))*)*"
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/parameter.json"
}
@@ -0,0 +1,16 @@
{
"type": "object",
"additionalProperties": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/parameter.json"
}
]
},
"description": "JSON objects describing re-usable channel parameters.",
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/parameters.json"
}
@@ -0,0 +1,98 @@
{
"allOf": [
{
"$ref": "http://json-schema.org/draft-07/schema#"
},
{
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"properties": {
"additionalProperties": {
"anyOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/schema.json"
},
{
"type": "boolean"
}
],
"default": {}
},
"items": {
"anyOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/schema.json"
},
{
"type": "array",
"minItems": 1,
"items": {
"$ref": "http://asyncapi.com/definitions/2.5.0/schema.json"
}
}
],
"default": {}
},
"allOf": {
"type": "array",
"minItems": 1,
"items": {
"$ref": "http://asyncapi.com/definitions/2.5.0/schema.json"
}
},
"oneOf": {
"type": "array",
"minItems": 1,
"items": {
"$ref": "http://asyncapi.com/definitions/2.5.0/schema.json"
}
},
"anyOf": {
"type": "array",
"minItems": 1,
"items": {
"$ref": "http://asyncapi.com/definitions/2.5.0/schema.json"
}
},
"not": {
"$ref": "http://asyncapi.com/definitions/2.5.0/schema.json"
},
"properties": {
"type": "object",
"additionalProperties": {
"$ref": "http://asyncapi.com/definitions/2.5.0/schema.json"
},
"default": {}
},
"patternProperties": {
"type": "object",
"additionalProperties": {
"$ref": "http://asyncapi.com/definitions/2.5.0/schema.json"
},
"default": {}
},
"propertyNames": {
"$ref": "http://asyncapi.com/definitions/2.5.0/schema.json"
},
"contains": {
"$ref": "http://asyncapi.com/definitions/2.5.0/schema.json"
},
"discriminator": {
"type": "string"
},
"externalDocs": {
"$ref": "http://asyncapi.com/definitions/2.5.0/externalDocs.json"
},
"deprecated": {
"type": "boolean",
"default": false
}
}
}
],
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/schema.json"
}
@@ -0,0 +1,9 @@
{
"type": "object",
"additionalProperties": {
"$ref": "http://asyncapi.com/definitions/2.5.0/schema.json"
},
"description": "JSON objects describing schemas the API uses.",
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/schemas.json"
}
@@ -0,0 +1,50 @@
{
"type": "object",
"description": "An object representing a Server.",
"required": [
"url",
"protocol"
],
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"properties": {
"url": {
"type": "string"
},
"description": {
"type": "string"
},
"protocol": {
"type": "string",
"description": "The transfer protocol."
},
"protocolVersion": {
"type": "string"
},
"variables": {
"$ref": "http://asyncapi.com/definitions/2.5.0/serverVariables.json"
},
"security": {
"type": "array",
"items": {
"$ref": "http://asyncapi.com/definitions/2.5.0/SecurityRequirement.json"
}
},
"bindings": {
"$ref": "http://asyncapi.com/definitions/2.5.0/bindingsObject.json"
},
"tags": {
"type": "array",
"items": {
"$ref": "http://asyncapi.com/definitions/2.5.0/tag.json"
},
"uniqueItems": true
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/server.json"
}
@@ -0,0 +1,33 @@
{
"type": "object",
"description": "An object representing a Server Variable for server URL template substitution.",
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"properties": {
"enum": {
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true
},
"default": {
"type": "string"
},
"description": {
"type": "string"
},
"examples": {
"type": "array",
"items": {
"type": "string"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/serverVariable.json"
}
@@ -0,0 +1,15 @@
{
"type": "object",
"additionalProperties": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/serverVariable.json"
}
]
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/serverVariables.json"
}
@@ -0,0 +1,16 @@
{
"description": "An object representing multiple servers.",
"type": "object",
"additionalProperties": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.5.0/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.5.0/server.json"
}
]
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/servers.json"
}
@@ -0,0 +1,7 @@
{
"description": "Any property starting with x- is valid.",
"additionalProperties": true,
"additionalItems": true,
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
@@ -0,0 +1,25 @@
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"symmetricEncryption"
]
},
"description": {
"type": "string"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/symmetricEncryption.json"
}
@@ -0,0 +1,25 @@
{
"type": "object",
"additionalProperties": false,
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"externalDocs": {
"$ref": "http://asyncapi.com/definitions/2.5.0/externalDocs.json"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/tag.json"
}
@@ -0,0 +1,25 @@
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"userPassword"
]
},
"description": {
"type": "string"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.5.0/specificationExtension.json"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://asyncapi.com/definitions/2.5.0/userPassword.json"
}