Skip to content

AsyncAPI 3.0 - DocView

Complete Table: All Root Elements and Their Fields in DocView

Section titled “Complete Table: All Root Elements and Their Fields in DocView”
Root Element Location in DocView Fields to Render Required Notes
Info Document Tab (not Operation DocView) title
version
description (if present)
title: Yes
version: Yes
description: If present
Shown in Document Tab, same as OpenAPI.
Operation Operation DocView - Header Section title
badge (send/receive)
description (if present)
title: Yes
action: Yes
description: If present
Action displayed as badge (SEND/RECEIVE).
Channel Operation DocView - Channel Section address (machine-readable)
description
address: Yes
description: Yes (if present)
Critical: Use address (NOT channel ID, NOT channel title) - located in the “path” right from the method(send/receive). Description is mandatory for understanding channel purpose.
Message Operation DocView - Message Section description
headers
payload
description: Yes (if present)
headers: If present
payload: Yes
Description is mandatory. Headers and Payload rendered as separate objects (like OpenAPI). Headers may be empty but should be shown if present.
Headers Operation DocView - Message Section → Headers All properties (like OpenAPI) All properties: If present Render one-to-one like OpenAPI - same properties from JSON schema.
Payload Operation DocView - Message Section → Payload All properties (like OpenAPI) All properties: If present Render one-to-one like OpenAPI - same properties from JSON schema.
Bindings Operation DocView - Operation Section
Operation DocView - Channel Section
Operation DocView - Message Section
All bindings properties:
- Protocol type (kafka/amqp)
- All custom extensions
Yes Must be shown on all levels (operation, channel, message) even if identical.
Custom Extensions Operation DocView - Channel/Message level x-dead-letter
x-exported
x-type
x-auto-delete
x-exclusive
x-channel-bindings
x-routing-key-source
x-non-bwc
If present See the “Custom extensions table”

Custom Property Format Mandatory Description
channels.<?>.x-non-bwc boolean no Mark that channel is not supported BWC policies
operations.<?>.x-non-bwc boolean no Mark that operation is not supported BWC policies
channels.<?>.bindings.amqp.queue.x-dead-letter boolean no Set to true for DLQ (Dead Letter Queue)
channels.<?>.bindings.amqp.queue.x-exported boolean no BG functionality for exporting messages between RabbitMQ VHosts
channels.<?>.bindings.amqp.exchange.x-exported boolean no BG functionality for exporting messages between RabbitMQ VHosts
channels.<?>.bindings.amqp.queue.x-type String no quorum
channels.<?>.bindings.amqp.exchange.x-dead-letter boolean no Set to true for DLX (Dead Letter Exchange)
channels.<?>.bindings.amqp.queue.x-channel-bindings Array of objects with the following fields:
• channelAddress - mandatory
• routingKey - optional
no List of relations between RabbitMQ Queue’s and Exchanges or between Exchanges only.

Example:
yaml<br>x-channel-bindings:<br>- { channelAddress: "quote_state_change_exchange_v1", routingKey: "IN_PROGRESS" }<br>- { channelAddress: "some-exchange-name" }<br>

Note: Here channelAddress is a source channel for the message routing and the current channel is a destination.
channels.<?>.bindings.amqp.exchange.x-channel-bindings same as above no same as above
components.<?>.messages.<?>.bindings.amqp.x-routing-key-source String no Document what is used as routing-key when message is published.

Example: quote.state

AsyncAPI - DocView