@asyncapi/specs
Version:
AsyncAPI schema versions
1,320 lines (1,319 loc) • 62.3 kB
JSON
{
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/asyncapi.json",
"$schema": "http://json-schema.org/draft-07/schema",
"title": "AsyncAPI 2.0.0-rc1 schema.",
"type": "object",
"required": [
"asyncapi",
"id",
"info",
"channels"
],
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/specificationExtension.json"
}
},
"properties": {
"asyncapi": {
"type": "string",
"enum": [
"2.0.0-rc1"
],
"description": "The AsyncAPI specification version of this document."
},
"id": {
"type": "string",
"description": "A unique id representing the application.",
"format": "uri-reference"
},
"info": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/info.json"
},
"servers": {
"type": "array",
"items": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/server.json"
},
"uniqueItems": true
},
"defaultContentType": {
"type": "string"
},
"channels": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/channels.json"
},
"components": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/components.json"
},
"tags": {
"type": "array",
"items": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/tag.json"
},
"uniqueItems": true
},
"externalDocs": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/externalDocs.json"
}
},
"definitions": {
"http://asyncapi.com/definitions/2.0.0-rc1/specificationExtension.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/specificationExtension.json",
"description": "Any property starting with x- is valid.",
"additionalProperties": true,
"additionalItems": true
},
"http://asyncapi.com/definitions/2.0.0-rc1/info.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/info.json",
"type": "object",
"description": "General information about the API.",
"required": [
"version",
"title"
],
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/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.0.0-rc1/contact.json"
},
"license": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/license.json"
}
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/contact.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/contact.json",
"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.0.0-rc1/specificationExtension.json"
}
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/license.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/license.json",
"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.0.0-rc1/specificationExtension.json"
}
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/server.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/server.json",
"type": "object",
"description": "An object representing a Server.",
"required": [
"url",
"protocol"
],
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/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.0.0-rc1/serverVariables.json"
},
"baseChannel": {
"type": "string",
"x-format": "uri-path"
},
"security": {
"type": "array",
"items": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/SecurityRequirement.json"
}
}
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/serverVariables.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/serverVariables.json",
"type": "object",
"additionalProperties": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/serverVariable.json"
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/serverVariable.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/serverVariable.json",
"type": "object",
"description": "An object representing a Server Variable for server URL template substitution.",
"minProperties": 1,
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/specificationExtension.json"
}
},
"properties": {
"enum": {
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true
},
"default": {
"type": "string"
},
"description": {
"type": "string"
},
"examples": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/SecurityRequirement.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/SecurityRequirement.json",
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/channels.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/channels.json",
"type": "object",
"propertyNames": {
"type": "string",
"format": "uri-template",
"minLength": 1
},
"additionalProperties": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/channelItem.json"
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/channelItem.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/channelItem.json",
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/specificationExtension.json"
}
},
"minProperties": 1,
"properties": {
"$ref": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/ReferenceObject.json"
},
"parameters": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/parameters.json"
},
"publish": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/operation.json"
},
"subscribe": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/operation.json"
},
"deprecated": {
"type": "boolean",
"default": false
},
"protocolInfo": {
"type": "object",
"additionalProperties": {
"type": "object"
}
}
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/ReferenceObject.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/ReferenceObject.json",
"type": "string",
"format": "uri"
},
"http://asyncapi.com/definitions/2.0.0-rc1/parameters.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/parameters.json",
"type": "object",
"additionalProperties": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/parameter.json"
}
]
},
"description": "JSON objects describing re-usable channel parameters."
},
"http://asyncapi.com/definitions/2.0.0-rc1/Reference.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/Reference.json",
"type": "object",
"required": [
"$ref"
],
"properties": {
"$ref": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/ReferenceObject.json"
}
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/parameter.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/parameter.json",
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/specificationExtension.json"
}
},
"properties": {
"description": {
"type": "string",
"description": "A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed."
},
"name": {
"type": "string",
"description": "The name of the parameter."
},
"schema": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/schema.json"
},
"$ref": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/ReferenceObject.json"
}
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/schema.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/schema.json",
"type": "object",
"description": "A deterministic version of a JSON Schema object.",
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/specificationExtension.json"
}
},
"properties": {
"$ref": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/ReferenceObject.json"
},
"format": {
"type": "string"
},
"title": {
"$ref": "http://json-schema.org/draft-04/schema#/properties/title"
},
"description": {
"$ref": "http://json-schema.org/draft-04/schema#/properties/description"
},
"default": {
"$ref": "http://json-schema.org/draft-04/schema#/properties/default"
},
"multipleOf": {
"$ref": "http://json-schema.org/draft-04/schema#/properties/multipleOf"
},
"maximum": {
"$ref": "http://json-schema.org/draft-04/schema#/properties/maximum"
},
"exclusiveMaximum": {
"$ref": "http://json-schema.org/draft-04/schema#/properties/exclusiveMaximum"
},
"minimum": {
"$ref": "http://json-schema.org/draft-04/schema#/properties/minimum"
},
"exclusiveMinimum": {
"$ref": "http://json-schema.org/draft-04/schema#/properties/exclusiveMinimum"
},
"maxLength": {
"$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveInteger"
},
"minLength": {
"$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0"
},
"pattern": {
"$ref": "http://json-schema.org/draft-04/schema#/properties/pattern"
},
"maxItems": {
"$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveInteger"
},
"minItems": {
"$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0"
},
"uniqueItems": {
"$ref": "http://json-schema.org/draft-04/schema#/properties/uniqueItems"
},
"maxProperties": {
"$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveInteger"
},
"minProperties": {
"$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0"
},
"required": {
"$ref": "http://json-schema.org/draft-04/schema#/definitions/stringArray"
},
"enum": {
"$ref": "http://json-schema.org/draft-04/schema#/properties/enum"
},
"deprecated": {
"type": "boolean",
"default": false
},
"additionalProperties": {
"anyOf": [
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/schema.json"
},
{
"type": "boolean"
}
],
"default": {}
},
"type": {
"$ref": "http://json-schema.org/draft-04/schema#/properties/type"
},
"items": {
"anyOf": [
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/schema.json"
},
{
"type": "array",
"minItems": 1,
"items": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/schema.json"
}
}
],
"default": {}
},
"allOf": {
"type": "array",
"minItems": 1,
"items": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/schema.json"
}
},
"oneOf": {
"type": "array",
"minItems": 2,
"items": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/schema.json"
}
},
"anyOf": {
"type": "array",
"minItems": 2,
"items": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/schema.json"
}
},
"not": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/schema.json"
},
"properties": {
"type": "object",
"additionalProperties": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/schema.json"
},
"default": {}
},
"discriminator": {
"type": "string"
},
"readOnly": {
"type": "boolean",
"default": false
},
"xml": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/xml.json"
},
"externalDocs": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/externalDocs.json"
},
"example": {},
"examples": {
"type": "array",
"items": {}
}
},
"additionalProperties": false
},
"http://json-schema.org/draft-04/schema": {
"id": "http://json-schema.org/draft-04/schema",
"$schema": "http://json-schema.org/draft-04/schema",
"description": "Core schema meta-schema",
"definitions": {
"schemaArray": {
"type": "array",
"minItems": 1,
"items": {
"$ref": "#"
}
},
"positiveInteger": {
"type": "integer",
"minimum": 0
},
"positiveIntegerDefault0": {
"allOf": [
{
"$ref": "#/definitions/positiveInteger"
},
{
"default": 0
}
]
},
"simpleTypes": {
"enum": [
"array",
"boolean",
"integer",
"null",
"number",
"object",
"string"
]
},
"stringArray": {
"type": "array",
"items": {
"type": "string"
},
"minItems": 1,
"uniqueItems": true
}
},
"type": "object",
"properties": {
"id": {
"type": "string"
},
"$schema": {
"type": "string"
},
"title": {
"type": "string"
},
"description": {
"type": "string"
},
"default": {},
"multipleOf": {
"type": "number",
"minimum": 0,
"exclusiveMinimum": true
},
"maximum": {
"type": "number"
},
"exclusiveMaximum": {
"type": "boolean",
"default": false
},
"minimum": {
"type": "number"
},
"exclusiveMinimum": {
"type": "boolean",
"default": false
},
"maxLength": {
"$ref": "#/definitions/positiveInteger"
},
"minLength": {
"$ref": "#/definitions/positiveIntegerDefault0"
},
"pattern": {
"type": "string",
"format": "regex"
},
"additionalItems": {
"anyOf": [
{
"type": "boolean"
},
{
"$ref": "#"
}
],
"default": {}
},
"items": {
"anyOf": [
{
"$ref": "#"
},
{
"$ref": "#/definitions/schemaArray"
}
],
"default": {}
},
"maxItems": {
"$ref": "#/definitions/positiveInteger"
},
"minItems": {
"$ref": "#/definitions/positiveIntegerDefault0"
},
"uniqueItems": {
"type": "boolean",
"default": false
},
"maxProperties": {
"$ref": "#/definitions/positiveInteger"
},
"minProperties": {
"$ref": "#/definitions/positiveIntegerDefault0"
},
"required": {
"$ref": "#/definitions/stringArray"
},
"additionalProperties": {
"anyOf": [
{
"type": "boolean"
},
{
"$ref": "#"
}
],
"default": {}
},
"definitions": {
"type": "object",
"additionalProperties": {
"$ref": "#"
},
"default": {}
},
"properties": {
"type": "object",
"additionalProperties": {
"$ref": "#"
},
"default": {}
},
"patternProperties": {
"type": "object",
"additionalProperties": {
"$ref": "#"
},
"default": {}
},
"dependencies": {
"type": "object",
"additionalProperties": {
"anyOf": [
{
"$ref": "#"
},
{
"$ref": "#/definitions/stringArray"
}
]
}
},
"enum": {
"type": "array",
"minItems": 1,
"uniqueItems": true
},
"type": {
"anyOf": [
{
"$ref": "#/definitions/simpleTypes"
},
{
"type": "array",
"items": {
"$ref": "#/definitions/simpleTypes"
},
"minItems": 1,
"uniqueItems": true
}
]
},
"format": {
"type": "string"
},
"allOf": {
"$ref": "#/definitions/schemaArray"
},
"anyOf": {
"$ref": "#/definitions/schemaArray"
},
"oneOf": {
"$ref": "#/definitions/schemaArray"
},
"not": {
"$ref": "#"
}
},
"dependencies": {
"exclusiveMaximum": [
"maximum"
],
"exclusiveMinimum": [
"minimum"
]
},
"default": {}
},
"http://asyncapi.com/definitions/2.0.0-rc1/xml.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/xml.json",
"type": "object",
"additionalProperties": false,
"properties": {
"name": {
"type": "string"
},
"namespace": {
"type": "string"
},
"prefix": {
"type": "string"
},
"attribute": {
"type": "boolean",
"default": false
},
"wrapped": {
"type": "boolean",
"default": false
}
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/externalDocs.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/externalDocs.json",
"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.0.0-rc1/specificationExtension.json"
}
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/operation.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/operation.json",
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/specificationExtension.json"
}
},
"properties": {
"traits": {
"type": "array",
"items": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/operationTrait.json"
}
]
}
},
"summary": {
"type": "string"
},
"description": {
"type": "string"
},
"tags": {
"type": "array",
"items": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/tag.json"
},
"uniqueItems": true
},
"externalDocs": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/externalDocs.json"
},
"operationId": {
"type": "string"
},
"protocolInfo": {
"type": "object",
"additionalProperties": {
"type": "object"
}
},
"message": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/message.json"
},
{
"type": "object",
"required": [
"oneOf"
],
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/specificationExtension.json"
}
},
"properties": {
"oneOf": {
"type": "array",
"minItems": 2,
"items": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/message.json"
}
}
}
}
]
}
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/operationTrait.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/operationTrait.json",
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/specificationExtension.json"
}
},
"properties": {
"summary": {
"type": "string"
},
"description": {
"type": "string"
},
"tags": {
"type": "array",
"items": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/tag.json"
},
"uniqueItems": true
},
"externalDocs": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/externalDocs.json"
},
"operationId": {
"type": "string"
},
"protocolInfo": {
"type": "object",
"additionalProperties": {
"type": "object"
}
}
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/tag.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/tag.json",
"type": "object",
"additionalProperties": false,
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"externalDocs": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/externalDocs.json"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/specificationExtension.json"
}
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/message.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/message.json",
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/specificationExtension.json"
}
},
"properties": {
"schemaFormat": {
"type": "string"
},
"contentType": {
"type": "string"
},
"headers": {
"type": "object",
"additionalProperties": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/schema.json"
}
]
}
},
"payload": {},
"correlationId": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/correlationId.json"
}
]
},
"tags": {
"type": "array",
"items": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/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.0.0-rc1/externalDocs.json"
},
"deprecated": {
"type": "boolean",
"default": false
},
"examples": {
"type": "array",
"items": {
"type": "object"
}
},
"protocolInfo": {
"type": "object",
"additionalProperties": {
"type": "object"
}
},
"traits": {
"type": "array",
"items": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/messageTrait.json"
}
]
}
}
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/correlationId.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/correlationId.json",
"type": "object",
"required": [
"location"
],
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/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)#(/\\w+)+"
}
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/messageTrait.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/messageTrait.json",
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/specificationExtension.json"
}
},
"properties": {
"schemaFormat": {
"type": "string"
},
"contentType": {
"type": "string"
},
"headers": {
"type": "object",
"additionalProperties": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/schema.json"
}
]
}
},
"correlationId": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/correlationId.json"
}
]
},
"tags": {
"type": "array",
"items": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/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.0.0-rc1/externalDocs.json"
},
"deprecated": {
"type": "boolean",
"default": false
},
"examples": {
"type": "array",
"items": {
"type": "object"
}
},
"protocolInfo": {
"type": "object",
"additionalProperties": {
"type": "object"
}
}
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/components.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/components.json",
"type": "object",
"description": "An object to hold a set of reusable objects for different aspects of the AsyncAPI Specification.",
"additionalProperties": false,
"properties": {
"schemas": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/schemas.json"
},
"messages": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/messages.json"
},
"securitySchemes": {
"type": "object",
"patternProperties": {
"^[\\w\\d\\.\\-_]+$": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/SecurityScheme.json"
}
]
}
}
},
"parameters": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/parameters.json"
},
"correlationIds": {
"type": "object",
"patternProperties": {
"^[\\w\\d\\.\\-_]+$": {
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/Reference.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/correlationId.json"
}
]
}
}
},
"traits": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/traits.json"
}
}
},
"http://asyncapi.com/definitions/2.0.0-rc1/schemas.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/schemas.json",
"type": "object",
"additionalProperties": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/schema.json"
},
"description": "JSON objects describing schemas the API uses."
},
"http://asyncapi.com/definitions/2.0.0-rc1/messages.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/messages.json",
"type": "object",
"additionalProperties": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/message.json"
},
"description": "JSON objects describing the messages being consumed and produced by the API."
},
"http://asyncapi.com/definitions/2.0.0-rc1/SecurityScheme.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/SecurityScheme.json",
"oneOf": [
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/userPassword.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/apiKey.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/X509.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/symmetricEncryption.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/asymmetricEncryption.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/HTTPSecurityScheme.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/oauth2Flows.json"
},
{
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/openIdConnect.json"
}
]
},
"http://asyncapi.com/definitions/2.0.0-rc1/userPassword.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/userPassword.json",
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"userPassword"
]
},
"description": {
"type": "string"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/specificationExtension.json"
}
},
"additionalProperties": false
},
"http://asyncapi.com/definitions/2.0.0-rc1/apiKey.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/apiKey.json",
"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.0.0-rc1/specificationExtension.json"
}
},
"additionalProperties": false
},
"http://asyncapi.com/definitions/2.0.0-rc1/X509.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/X509.json",
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"X509"
]
},
"description": {
"type": "string"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/specificationExtension.json"
}
},
"additionalProperties": false
},
"http://asyncapi.com/definitions/2.0.0-rc1/symmetricEncryption.json": {
"$id": "http://asyncapi.com/definitions/2.0.0-rc1/symmetricEncryption.json",
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"symmetricEncryption"
]
},
"description": {
"type": "string"
}
},
"patternProperties": {
"^x-[\\w\\d\\.\\x2d_]+$": {
"$ref": "http://asyncapi.com/definitions/2.0.0-rc1/specificationExtension.json"
}