latest--2.6.0-without-$id
shared| Type | object |
|---|---|
| Schema URL | https://catalog.lintel.tools/schemas/schemastore/asyncapi/_shared/latest--2.6.0-without-$id.json |
| Parent schema | asyncapi |
!!Auto generated!! Do not manually edit.
Properties
The AsyncAPI specification version of this document.
The object provides metadata about the API. The metadata can be used by the clients if needed.
6 nested properties
A unique and precise title of the API.
A semantic version number of the API.
A longer description of the API. Should be different from the title. CommonMark is allowed.
A URL to the Terms of Service for the API. MUST be in the format of a URL.
Contact information for the exposed API.
3 nested properties
The identifying name of the contact person/organization.
The URL pointing to the contact information.
The email address of the contact person/organization.
License information for the exposed API.
2 nested properties
The name of the license type. It's encouraged to use an OSI compatible license.
The URL pointing to the license.
Holds the relative paths to the individual channel and their operations. Channel paths are relative to servers.
A unique id representing the application.
The Servers Object is a map of Server Objects.
Holds a set of reusable objects for different aspects of the AsyncAPI specification. All objects defined within the components object will have no effect on the API unless they are explicitly referenced from properties outside the components object.
14 nested properties
JSON objects describing schemas the API uses.
The Servers Object is a map of Server Objects.
Holds the relative paths to the individual channel and their operations. Channel paths are relative to servers.
A map between a variable name and its value. The value is used for substitution in the server's URL template.
JSON objects describing the messages being consumed and produced by the API.
JSON objects describing reusable channel parameters.
Allows referencing an external resource for extended documentation.
2 nested properties
The URL for the target documentation. This MUST be in the form of an absolute URL.
A short description of the target documentation.
Definitions
Any property starting with x- is valid.
The object provides metadata about the API. The metadata can be used by the clients if needed.
{ "title": "AsyncAPI Sample App", "description": "This is a sample server.", "termsOfService": "https://asyncapi.org/terms/", "contact": { "name": "API Support", "url": "https://www.example.com/support", "email": "[email protected]" }, "license": { "name": "Apache 2.0", "url": "https://www.apache.org/licenses/LICENSE-2.0.html" } }
A unique and precise title of the API.
A semantic version number of the API.
A longer description of the API. Should be different from the title. CommonMark is allowed.
A URL to the Terms of Service for the API. MUST be in the format of a URL.
Contact information for the exposed API.
3 nested properties
The identifying name of the contact person/organization.
The URL pointing to the contact information.
The email address of the contact person/organization.
License information for the exposed API.
2 nested properties
The name of the license type. It's encouraged to use an OSI compatible license.
The URL pointing to the license.
Contact information for the exposed API.
{ "name": "API Support", "url": "https://www.example.com/support", "email": "[email protected]" }
The identifying name of the contact person/organization.
The URL pointing to the contact information.
The email address of the contact person/organization.
License information for the exposed API.
{ "name": "Apache 2.0", "url": "https://www.apache.org/licenses/LICENSE-2.0.html" }
The name of the license type. It's encouraged to use an OSI compatible license.
The URL pointing to the license.
The Servers Object is a map of Server Objects.
{ "development": { "url": "development.gigantic-server.com", "description": "Development server", "protocol": "amqp", "protocolVersion": "0.9.1", "tags": [ { "name": "env:development", "description": "This environment is meant for developers to run their own tests" } ] }, "staging": { "url": "staging.gigantic-server.com", "description": "Staging server", "protocol": "amqp", "protocolVersion": "0.9.1", "tags": [ { "name": "env:staging", "description": "This environment is a replica of the production environment" } ] }, "production": { "url": "api.gigantic-server.com", "description": "Production server", "protocol": "amqp", "protocolVersion": "0.9.1", "tags": [ { "name": "env:production", "description": "This environment is the live environment available for final users" } ] } }
A simple object to allow referencing other components in the specification, internally and externally.
A simple object to allow referencing other components in the specification, internally and externally.
{ "$ref": "#/components/schemas/Pet" }
An object representing a message broker, a server or any other kind of computer program capable of sending and/or receiving data
{ "url": "development.gigantic-server.com", "description": "Development server", "protocol": "kafka", "protocolVersion": "1.0.0" }
A URL to the target host. This URL supports Server Variables and MAY be relative, to indicate that the host location is relative to the location where the AsyncAPI document is being served.
The protocol this URL supports for connection. Supported protocol include, but are not limited to: amqp, amqps, http, https, ibmmq, jms, kafka, kafka-secure, anypointmq, mqtt, secure-mqtt, solace, stomp, stomps, ws, wss, mercure, googlepubsub.
An optional string describing the host designated by the URL. CommonMark syntax MAY be used for rich text representation.
The version of the protocol used for connection. For instance: AMQP 0.9.1, HTTP 2.0, Kafka 1.0.0, etc.
A map between a variable name and its value. The value is used for substitution in the server's URL template.
A declaration of which security mechanisms can be used with this server. The list of values includes alternative security requirement objects that can be used.
Map describing protocol-specific definitions for a server.
18 nested properties
A map between a variable name and its value. The value is used for substitution in the server's URL template.
An object representing a Server Variable for server URL template substitution.
An enumeration of string values to be used if the substitution options are from a limited set.
The default value to use for substitution, and to send, if an alternate value is not supplied.
An optional description for the server variable.
An array of examples of the server variable.
Lists of the required security schemes that can be used to execute an operation
{ "petstore_auth": [ "write:pets", "read:pets" ] }
Map describing protocol-specific definitions for a server.
Allows adding meta data to a single tag.
{ "name": "user", "description": "User-related messages" }
The name of the tag.
A short description for the tag.
Allows referencing an external resource for extended documentation.
2 nested properties
The URL for the target documentation. This MUST be in the form of an absolute URL.
A short description of the target documentation.
Allows referencing an external resource for extended documentation.
{ "description": "Find more info here", "url": "https://example.com" }
The URL for the target documentation. This MUST be in the form of an absolute URL.
A short description of the target documentation.
Holds the relative paths to the individual channel and their operations. Channel paths are relative to servers.
{ "user/signedup": { "subscribe": { "message": { "$ref": "#/components/messages/userSignedUp" } } } }
Describes the operations available on a single channel.
{ "description": "This channel is used to exchange messages about users signing up", "subscribe": { "summary": "A user signed up.", "message": { "description": "A longer description of the message", "payload": { "type": "object", "properties": { "user": { "$ref": "#/components/schemas/user" }, "signup": { "$ref": "#/components/schemas/signup" } } } } }, "bindings": { "amqp": { "is": "queue", "queue": { "exclusive": true } } } }{ "subscribe": { "message": { "oneOf": [ { "$ref": "#/components/messages/signup" }, { "$ref": "#/components/messages/login" } ] } } }{ "description": "This application publishes WebUICommand messages to an AMQP queue on RabbitMQ brokers in the Staging and Production environments.", "servers": [ "rabbitmqBrokerInProd", "rabbitmqBrokerInStaging" ], "subscribe": { "message": { "$ref": "#/components/messages/WebUICommand" } }, "bindings": { "amqp": { "is": "queue" } } }
A simple object to allow referencing other components in the specification, internally and externally.
JSON objects describing reusable channel parameters.
A description of the channel.
The names of the servers on which this channel is available. If absent or empty then this channel must be available on all servers.
Describes a publish or a subscribe operation. This provides a place to document how and why messages are sent and received.
9 nested properties
A list of traits to apply to the operation object.
A short summary of what the operation is about.
A verbose explanation of the operation.
A declaration of which security mechanisms are associated with this operation.
Allows referencing an external resource for extended documentation.
2 nested properties
The URL for the target documentation. This MUST be in the form of an absolute URL.
A short description of the target documentation.
Map describing protocol-specific definitions for a server.
18 nested properties
Describes a message received on a given channel and operation.
Describes a publish or a subscribe operation. This provides a place to document how and why messages are sent and received.
9 nested properties
A list of traits to apply to the operation object.
A short summary of what the operation is about.
A verbose explanation of the operation.
A declaration of which security mechanisms are associated with this operation.
Allows referencing an external resource for extended documentation.
2 nested properties
The URL for the target documentation. This MUST be in the form of an absolute URL.
A short description of the target documentation.
Map describing protocol-specific definitions for a server.
18 nested properties
Describes a message received on a given channel and operation.
Map describing protocol-specific definitions for a server.
18 nested properties
JSON objects describing reusable channel parameters.
{ "user/{userId}/signup": { "parameters": { "userId": { "description": "Id of the user.", "schema": { "type": "string" } } }, "subscribe": { "message": { "$ref": "#/components/messages/userSignedUp" } } } }
Describes a parameter included in a channel name.
{ "user/{userId}/signup": { "parameters": { "userId": { "description": "Id of the user.", "schema": { "type": "string" }, "location": "$message.payload#/user/id" } }, "subscribe": { "message": { "$ref": "#/components/messages/userSignedUp" } } } }
A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed.
The Schema Object allows the definition of input and output data types. These types can be objects, but also primitives and arrays.
A runtime expression that specifies the location of the parameter value
The Schema Object allows the definition of input and output data types. These types can be objects, but also primitives and arrays.
{ "type": "string", "format": "email" }{ "type": "object", "required": [ "name" ], "properties": { "name": { "type": "string" }, "address": { "$ref": "#/components/schemas/Address" }, "age": { "type": "integer", "format": "int32", "minimum": 0 } } }
46 nested properties
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
{}
{}
{}
46 nested properties
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
46 nested properties
{}
{}
{}
Describes a publish or a subscribe operation. This provides a place to document how and why messages are sent and received.
{ "user/signedup": { "subscribe": { "message": { "$ref": "#/components/messages/userSignedUp" } } } }
A list of traits to apply to the operation object.
A short summary of what the operation is about.
A verbose explanation of the operation.
A declaration of which security mechanisms are associated with this operation.
Allows referencing an external resource for extended documentation.
2 nested properties
The URL for the target documentation. This MUST be in the form of an absolute URL.
A short description of the target documentation.
Map describing protocol-specific definitions for a server.
18 nested properties
Describes a message received on a given channel and operation.
Describes a trait that MAY be applied to an Operation Object.
{ "bindings": { "amqp": { "ack": false } } }
A short summary of what the operation is about.
A verbose explanation of the operation.
Allows referencing an external resource for extended documentation.
2 nested properties
The URL for the target documentation. This MUST be in the form of an absolute URL.
A short description of the target documentation.
Unique string used to identify the operation. The id MUST be unique among all operations described in the API.
A declaration of which security mechanisms are associated with this operation.
Map describing protocol-specific definitions for a server.
18 nested properties
Describes a message received on a given channel and operation.
{ "messageId": "userSignup", "name": "UserSignup", "title": "User signup", "summary": "Action to sign a user up.", "description": "A longer description", "contentType": "application/json", "tags": [ { "name": "user" }, { "name": "signup" }, { "name": "register" } ], "headers": { "type": "object", "properties": { "correlationId": { "description": "Correlation ID set by application", "type": "string" }, "applicationInstanceId": { "description": "Unique identifier for a given instance of the publishing application", "type": "string" } } }, "payload": { "type": "object", "properties": { "user": { "$ref": "#/components/schemas/userCreate" }, "signup": { "$ref": "#/components/schemas/signup" } } }, "correlationId": { "description": "Default Correlation ID", "location": "$message.header#/correlationId" }, "traits": [ { "$ref": "#/components/messageTraits/commonHeaders" } ], "examples": [ { "name": "SimpleSignup", "summary": "A simple UserSignup example message", "headers": { "correlationId": "my-correlation-id", "applicationInstanceId": "myInstanceId" }, "payload": { "user": { "someUserKey": "someUserValue" }, "signup": { "someSignupKey": "someSignupValue" } } } ] }{ "messageId": "userSignup", "name": "UserSignup", "title": "User signup", "summary": "Action to sign a user up.", "description": "A longer description", "tags": [ { "name": "user" }, { "name": "signup" }, { "name": "register" } ], "schemaFormat": "application/vnd.apache.avro+json;version=1.9.0", "payload": { "$ref": "path/to/user-create.avsc#/UserCreate" } }
An object that specifies an identifier at design time that can used for message tracing and correlation.
{ "description": "Default Correlation ID", "location": "$message.header#/correlationId" }
A runtime expression that specifies the location of the correlation ID
A optional description of the correlation ID. GitHub Flavored Markdown is allowed.
Describes a trait that MAY be applied to a Message Object.
{ "schemaFormat": "application/vnd.apache.avro+json;version=1.9.0", "contentType": "application/json" }
A string containing the name of the schema format/language used to define the message payload.
The content type to use when encoding/decoding a message's payload.
Unique string used to identify the message. The id MUST be unique among all messages described in the API.
Definition of the correlation ID used for message tracing or matching.
A brief summary of the message.
Name of the message.
A human-friendly title for the message.
A longer description of the message. CommonMark is allowed.
Allows referencing an external resource for extended documentation.
2 nested properties
The URL for the target documentation. This MUST be in the form of an absolute URL.
A short description of the target documentation.
List of examples.
Map describing protocol-specific definitions for a server.
18 nested properties
2 nested properties
2 nested properties
5 nested properties
Json-Schema definition for Avro AVSC files.
Holds a set of reusable objects for different aspects of the AsyncAPI specification. All objects defined within the components object will have no effect on the API unless they are explicitly referenced from properties outside the components object.
{ "components": { "schemas": { "Category": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "name": { "type": "string" } } }, "Tag": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "name": { "type": "string" } } } }, "servers": { "development": { "url": "{stage}.gigantic-server.com:{port}", "description": "Development server", "protocol": "amqp", "protocolVersion": "0.9.1", "variables": { "stage": { "$ref": "#/components/serverVariables/stage" }, "port": { "$ref": "#/components/serverVariables/port" } } } }, "serverVariables": { "stage": { "default": "demo", "description": "This value is assigned by the service provider, in this example `gigantic-server.com`" }, "port": { "enum": [ "8883", "8884" ], "default": "8883" } }, "channels": { "user/signedup": { "subscribe": { "message": { "$ref": "#/components/messages/userSignUp" } } } }, "messages": { "userSignUp": { "summary": "Action to sign a user up.", "description": "Multiline description of what this action does.\nHere you have another line.\n", "tags": [ { "name": "user" }, { "name": "signup" } ], "headers": { "type": "object", "properties": { "applicationInstanceId": { "description": "Unique identifier for a given instance of the publishing application", "type": "string" } } }, "payload": { "type": "object", "properties": { "user": { "$ref": "#/components/schemas/userCreate" }, "signup": { "$ref": "#/components/schemas/signup" } } } } }, "parameters": { "userId": { "description": "Id of the user.", "schema": { "type": "string" } } }, "correlationIds": { "default": { "description": "Default Correlation ID", "location": "$message.header#/correlationId" } }, "messageTraits": { "commonHeaders": { "headers": { "type": "object", "properties": { "my-app-header": { "type": "integer", "minimum": 0, "maximum": 100 } } } } } } }
JSON objects describing schemas the API uses.
The Servers Object is a map of Server Objects.
Holds the relative paths to the individual channel and their operations. Channel paths are relative to servers.
A map between a variable name and its value. The value is used for substitution in the server's URL template.
JSON objects describing the messages being consumed and produced by the API.
JSON objects describing reusable channel parameters.
JSON objects describing schemas the API uses.
JSON objects describing the messages being consumed and produced by the API.
Defines a security scheme that can be used by the operations.
{ "type": "userPassword" }
{ "type": "userPassword" }
The type of the security scheme.
A short description for security scheme.
{ "type": "apiKey", "in": "user" }
The type of the security scheme.
The location of the API key.
A short description for security scheme.
{ "type": "X509" }
The type of the security scheme.
A short description for security scheme.
{ "type": "symmetricEncryption" }
The type of the security scheme.
A short description for security scheme.
The type of the security scheme.
A short description for security scheme.
The name of the HTTP Authorization scheme to be used in the Authorization header as defined in RFC7235.
The type of the security scheme.
A short description for security scheme.
The name of the HTTP Authorization scheme to be used in the Authorization header as defined in RFC7235.
The type of the security scheme.
A hint to the client to identify how the bearer token is formatted.
A short description for security scheme.
{ "type": "httpApiKey", "name": "api_key", "in": "header" }
The type of the security scheme.
The name of the header, query or cookie parameter to be used.
The location of the API key.
A short description for security scheme.
Allows configuration of the supported OAuth Flows.
A short description for security scheme.
4 nested properties
Configuration for the OAuth Resource Owner Protected Credentials flow.
Configuration for the OAuth Client Credentials flow.
A short description for security scheme.
Configuration details for a supported OAuth Flow
{ "type": "oauth2", "flows": { "implicit": { "authorizationUrl": "https://example.com/api/oauth/dialog", "scopes": { "write:pets": "modify pets in your account", "read:pets": "read your pets" } }, "authorizationCode": { "authorizationUrl": "https://example.com/api/oauth/dialog", "tokenUrl": "https://example.com/api/oauth/token", "scopes": { "write:pets": "modify pets in your account", "read:pets": "read your pets" } } } }
The authorization URL to be used for this flow. This MUST be in the form of an absolute URL.
The token URL to be used for this flow. This MUST be in the form of an absolute URL.
The URL to be used for obtaining refresh tokens. This MUST be in the form of an absolute URL.
{ "type": "scramSha512" }
The type of the security scheme. Valid values
A short description for security scheme.
{ "type": "scramSha512" }
The type of the security scheme.
A short description for security scheme.
{ "type": "scramSha512" }
The type of the security scheme.
A short description for security scheme.