# description
Map describing protocol-specific definitions for a channel.

# properties.amqp.allOf[].description
If no bindingVersion specified, use the latest binding

# properties.anypointmq.allOf[].description
If no bindingVersion specified, use the latest binding

# properties.googlepubsub.allOf[].description
If no bindingVersion specified, use the latest binding

# properties.ibmmq.allOf[].description
If no bindingVersion specified, use the latest binding

# properties.jms.allOf[].description
If no bindingVersion specified, use the latest binding

# properties.kafka.allOf[].description
If no bindingVersion specified, use the latest binding

# properties.pulsar.allOf[].description
If no bindingVersion specified, use the latest binding

# properties.sns.allOf[].description
If no bindingVersion specified, use the latest binding

# properties.sqs.allOf[].description
If no bindingVersion specified, use the latest binding

# properties.ws.allOf[].description
If no bindingVersion specified, use the latest binding

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/amqp/0.3.0/chan.description
This object contains information about the channel representation in AMQP.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/amqp/0.3.0/chan.properties.bindingVersion.description
The version of this binding. If omitted, 'latest' MUST be assumed.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/amqp/0.3.0/chan.properties.exchange.description
When is=routingKey, this object defines the exchange properties.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/amqp/0.3.0/chan.properties.exchange.properties.type.description
The type of the exchange. Can be either 'topic', 'direct', 'fanout', 'default' or 'headers'.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/amqp/0.3.0/chan.properties.exchange.properties.autoDelete.description
Whether the exchange should be deleted when the last queue is unbound from it.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/amqp/0.3.0/chan.properties.exchange.properties.durable.description
Whether the exchange should survive broker restarts or not.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/amqp/0.3.0/chan.properties.exchange.properties.name.description
The name of the exchange. It MUST NOT exceed 255 characters long.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/amqp/0.3.0/chan.properties.exchange.properties.vhost.description
The virtual host of the exchange. Defaults to '/'.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/amqp/0.3.0/chan.properties.is.description
Defines what type of channel is it. Can be either 'queue' or 'routingKey' (default).

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/amqp/0.3.0/chan.properties.queue.description
When is=queue, this object defines the queue properties.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/amqp/0.3.0/chan.properties.queue.properties.autoDelete.description
Whether the queue should be deleted when the last consumer unsubscribes.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/amqp/0.3.0/chan.properties.queue.properties.durable.description
Whether the queue should survive broker restarts or not.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/amqp/0.3.0/chan.properties.queue.properties.exclusive.description
Whether the queue should be used only by one connection or not.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/amqp/0.3.0/chan.properties.queue.properties.name.description
The name of the queue. It MUST NOT exceed 255 characters long.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/amqp/0.3.0/chan.properties.queue.properties.vhost.description
The virtual host of the queue. Defaults to '/'.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/anypointmq/0.0..description
This object contains configuration for describing an Anypoint MQ exchange, queue, or FIFO queue as an AsyncAPI channel. This objects only contains configuration that can not be provided in the AsyncAPI standard channel object.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/anypointmq/0.0..properties.bindingVersion.description
The version of this binding. If omitted, 'latest' MUST be assumed.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/anypointmq/0.0..properties.destination.description
The destination (queue or exchange) name for this channel. SHOULD only be specified if the channel name differs from the actual destination name, such as when the channel name is not a valid destination name in Anypoint MQ. Defaults to the channel name.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/anypointmq/0.0..properties.destinationType.description
The type of destination. SHOULD be specified to document the messaging model (publish/subscribe, point-to-point, strict message ordering) supported by this channel.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/googlepubsub/0..description
This object contains information about the channel representation for Google Cloud Pub/Sub.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/ibmmq/0.1.0/cha.description
This object contains information about the channel representation in IBM MQ. Each channel corresponds to a Queue or Topic within IBM MQ.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/ibmmq/0.1.0/cha.properties.maxMsgLength.description
The maximum length of the physical message (in bytes) accepted by the Topic or Queue. Messages produced that are greater in size than this value may fail to be delivered. More information on the maximum message length can be found on this [page](https://www.ibm.com/support/knowledgecenter/SSFKSJ_latest/com.ibm.mq.ref.dev.doc/q097520_.html) in the IBM MQ Knowledge Center.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/ibmmq/0.1.0/cha.properties.queue.properties.exclusive.description
Specifies if it is recommended to open the queue exclusively.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/ibmmq/0.1.0/cha.properties.queue.properties.isPartitioned.description
Defines if the queue is a cluster queue and therefore partitioned. If 'true', a binding option MAY be specified when accessing the queue. More information on binding options can be found on this page in the IBM MQ Knowledge Center.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/ibmmq/0.1.0/cha.properties.queue.properties.objectName.description
Defines the name of the IBM MQ queue associated with the channel.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/ibmmq/0.1.0/cha.properties.topic.properties.durablePermitted.description
Defines if the subscription may be durable.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/ibmmq/0.1.0/cha.properties.topic.properties.lastMsgRetained.description
Defines if the last message published will be made available to new subscriptions.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/ibmmq/0.1.0/cha.properties.topic.properties.string.description
The value of the IBM MQ topic string to be used.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/jms/0.0.1/chann.description
This object contains configuration for describing a JMS queue, or FIFO queue as an AsyncAPI channel. This objects only contains configuration that can not be provided in the AsyncAPI standard channel object.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/jms/0.0.1/chann.properties.bindingVersion.description
The version of this binding. If omitted, 'latest' MUST be assumed.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/jms/0.0.1/chann.properties.destination.description
The destination (queue) name for this channel. SHOULD only be specified if the channel name differs from the actual destination name, such as when the channel name is not a valid destination name according to the JMS Provider. Defaults to the channel name.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/jms/0.0.1/chann.properties.destinationType.description
The type of destination. SHOULD be specified to document the messaging model (point-to-point, or strict message ordering) supported by this channel.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/kafka/0.3.0/cha.description
This object contains information about the channel representation in Kafka.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/kafka/0.3.0/cha.properties.bindingVersion.description
The version of this binding. If omitted, 'latest' MUST be assumed.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/kafka/0.3.0/cha.properties.partitions.description
Number of partitions configured on this topic.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/kafka/0.3.0/cha.properties.replicas.description
Number of replicas configured on this topic.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/kafka/0.3.0/cha.properties.topic.description
Kafka topic name if different from channel name.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/kafka/0.4.0/cha.description
This object contains information about the channel representation in Kafka.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/kafka/0.4.0/cha.properties.bindingVersion.description
The version of this binding. If omitted, 'latest' MUST be assumed.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/kafka/0.4.0/cha.properties.partitions.description
Number of partitions configured on this topic.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/kafka/0.4.0/cha.properties.replicas.description
Number of replicas configured on this topic.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/kafka/0.4.0/cha.properties.topic.description
Kafka topic name if different from channel name.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/kafka/0.4.0/cha.properties.topicConfiguration.description
Topic configuration properties that are relevant for the API.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/kafka/0.5.0/cha.description
This object contains information about the channel representation in Kafka.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/kafka/0.5.0/cha.properties.bindingVersion.description
The version of this binding. If omitted, 'latest' MUST be assumed.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/kafka/0.5.0/cha.properties.partitions.description
Number of partitions configured on this topic.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/kafka/0.5.0/cha.properties.replicas.description
Number of replicas configured on this topic.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/kafka/0.5.0/cha.properties.topic.description
Kafka topic name if different from channel name.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/kafka/0.5.0/cha.properties.topicConfiguration.description
Topic configuration properties that are relevant for the API.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/pulsar/0.1.0/ch.description
This object contains information about the channel representation in Pulsar, which covers namespace and topic level admin configuration. This object contains additional information not possible to represent within the core AsyncAPI specification.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/pulsar/0.1.0/ch.properties.bindingVersion.description
The version of this binding. If omitted, 'latest' MUST be assumed.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/pulsar/0.1.0/ch.properties.deduplication.description
Whether deduplication of events is enabled or not.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/pulsar/0.1.0/ch.properties.geo-replication.description
A list of clusters the topic is replicated to.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/pulsar/0.1.0/ch.properties.namespace.description
The namespace, the channel is associated with.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/pulsar/0.1.0/ch.properties.retention.properties.size.description
Size given in MegaBytes. `0` = Disable message retention.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/pulsar/0.1.0/ch.properties.retention.properties.time.description
Time given in Minutes. `0` = Disable message retention.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sns/0.1.0/chann.description
This object contains information about the channel representation in SNS.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sns/0.1.0/chann.properties.name.description
The name of the topic. Can be different from the channel name to allow flexibility around AWS resource naming limitations.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sns/0.1.0/chann.properties.tags.description
Key-value pairs that represent AWS tags on the topic.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sns/0.1.0/chann.definitions.ordering.description
By default, we assume an unordered SNS topic. This field allows configuration of a FIFO SNS Topic.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sns/0.1.0/chann.definitions.ordering.properties.contentBasedDeduplication.description
True to turn on de-duplication of messages for a channel.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sns/0.1.0/chann.definitions.policy.properties.statements.description
An array of statement objects, each of which controls a permission for this topic

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sns/0.1.0/chann.definitions.statement.properties.action.description
The SNS permission being allowed or denied e.g. sns:Publish

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sns/0.1.0/chann.definitions.statement.properties.principal.description
The AWS account or resource ARN that this statement applies to.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.description
This object contains information about the channel representation in SQS.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.properties.bindingVersion.description
The version of this binding. If omitted, 'latest' MUST be assumed.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.properties.deadLetterQueue.description
A definition of the queue that will be used for un-processable messages.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.properties.queue.description
A definition of the queue that will be used as the channel.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.definitions.identifier.description
The SQS queue to use as a dead letter queue (DLQ).

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.definitions.identifier.properties.arn.description
The target is an ARN. For example, for SQS, the identifier may be an ARN, which will be of the form: arn:aws:sqs:{region}:{account-id}:{queueName}

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.definitions.identifier.properties.name.description
The endpoint is identified by a name, which corresponds to an identifying field called 'name' of a binding for that protocol on this publish Operation Object. For example, if the protocol is 'sqs' then the name refers to the name field sqs binding.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.definitions.policy.properties.statements.description
An array of statement objects, each of which controls a permission for this queue.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.definitions.queue.properties.deduplicationScope.description
Specifies whether message deduplication occurs at the message group or queue level. Valid values are messageGroup and queue (default).

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.definitions.queue.properties.deliveryDelay.description
The number of seconds to delay before a message sent to the queue can be received. used to create a delay queue.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.definitions.queue.properties.fifoThroughputLimit.description
Specifies whether the FIFO queue throughput quota applies to the entire queue or per message group. Valid values are perQueue (default) and perMessageGroupId.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.definitions.queue.properties.messageRetentionPeriod.description
How long to retain a message on the queue in seconds, unless deleted.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.definitions.queue.properties.name.description
The name of the queue. When an SNS Operation Binding Object references an SQS queue by name, the identifier should be the one in this field.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.definitions.queue.properties.receiveMessageWaitTime.description
Determines if the queue uses short polling or long polling. Set to zero the queue reads available messages and returns immediately. Set to a non-zero integer, long polling waits the specified number of seconds for messages to arrive before returning.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.definitions.queue.properties.tags.description
Key-value pairs that represent AWS tags on the queue.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.definitions.queue.properties.visibilityTimeout.description
The length of time, in seconds, that a consumer locks a message - hiding it from reads - before it is unlocked and can be read again.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.definitions.redrivePolicy.description
Prevent poison pill messages by moving un-processable messages to an SQS dead letter queue.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.definitions.redrivePolicy.properties.maxReceiveCount.description
The number of times a message is delivered to the source queue before being moved to the dead-letter queue.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.definitions.statement.properties.action.description
The SQS permission being allowed or denied e.g. sqs:ReceiveMessage

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/sqs/0.2.0/chann.definitions.statement.properties.principal.description
The AWS account or resource ARN that this statement applies to.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/websockets/0.1..description
When using WebSockets, the channel represents the connection. Unlike other protocols that support multiple virtual channels (topics, routing keys, etc.) per connection, WebSockets doesn't support virtual channels or, put it another way, there's only one channel and its characteristics are strongly related to the protocol used for the handshake, i.e., HTTP.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/websockets/0.1..properties.bindingVersion.description
The version of this binding. If omitted, 'latest' MUST be assumed.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/websockets/0.1..properties.headers.description
A Schema object containing the definitions of the HTTP headers to use when establishing the connection. This schema MUST be of type 'object' and have a 'properties' key.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/websockets/0.1..properties.method.description
The HTTP method to use when establishing the connection. Its value MUST be either 'GET' or 'POST'.

# definitions.https://schemas.sourcemeta.com/asyncapi/bindings/websockets/0.1..properties.query.description
A Schema object containing the definitions for each query parameter. This schema MUST be of type 'object' and have a 'properties' key.

# definitions.https://schemas.sourcemeta.com/asyncapi/definitions/3.0.0/extern.description
Allows referencing an external resource for extended documentation.

# definitions.https://schemas.sourcemeta.com/asyncapi/definitions/3.0.0/extern.properties.description.description
A short description of the target documentation. CommonMark syntax can be used for rich text representation.

# definitions.https://schemas.sourcemeta.com/asyncapi/definitions/3.0.0/extern.properties.url.description
The URL for the target documentation. This MUST be in the form of an absolute URL.

# definitions.https://schemas.sourcemeta.com/asyncapi/definitions/3.0.0/refere.description
A simple object to allow referencing other components in the specification, internally and externally.

# definitions.https://schemas.sourcemeta.com/asyncapi/definitions/3.0.0/schema.description
The Schema Object allows the definition of input and output data types. These types can be objects, but also primitives and arrays. This object is a superset of the JSON Schema Specification Draft 07. The empty schema (which allows any instance to validate) MAY be represented by the boolean value true and a schema which allows no instance to validate MAY be represented by the boolean value false.

# definitions.https://schemas.sourcemeta.com/asyncapi/definitions/3.0.0/schema.allOf[].properties.deprecated.description
Specifies that a schema is deprecated and SHOULD be transitioned out of usage. Default value is false.

# definitions.https://schemas.sourcemeta.com/asyncapi/definitions/3.0.0/schema.allOf[].properties.discriminator.description
Adds support for polymorphism. The discriminator is the schema property name that is used to differentiate between other schema that inherit this schema. The property name used MUST be defined at this schema and it MUST be in the required property list. When used, the value MUST be the name of this schema or any schema that inherits it. See Composition and Inheritance for more details.