AMQP 0-9-1 Bindings
This document defines how to describe AMQP-specific information on AsyncAPI.
Version
Current version is 0.3.0.
Server Binding Object
This object MUST NOT contain any properties. Its name is reserved for future use.
Channel Binding Object
This object contains information about the channel representation in AMQP.
Fixed Fields
This object MUST contain only the properties defined above.
Example
1channels:
2 userSignup:
3 address: 'user/signup'
4 bindings:
5 amqp:
6 is: routingKey
7 exchange:
8 name: myExchange
9 type: topic
10 durable: true
11 autoDelete: false
12 vhost: /
13 bindingVersion: 0.3.01channels:
2 userSignup:
3 address: 'user/signup'
4 bindings:
5 amqp:
6 is: queue
7 queue:
8 name: my-queue-name
9 durable: true
10 exclusive: true
11 autoDelete: false
12 vhost: /
13 bindingVersion: 0.3.0Operation Binding Object
This object contains information about the operation representation in AMQP.
Fixed Fields
| Field Name | Type | Applies To Action | Description |
|---|---|---|---|
expiration | integer | receive, send | TTL (Time-To-Live) for the message. It MUST be greater than or equal to zero. |
userId | string | receive, send | Identifies the user who has sent the message. |
cc | [string] | receive, send | The routing keys the message should be routed to at the time of publishing. |
priority | integer | receive, send | A priority for the message. |
deliveryMode | integer | receive, send | Delivery mode of the message. Its value MUST be either 1 (transient) or 2 (persistent). |
mandatory | boolean | receive | Whether the message is mandatory or not. |
bcc | [string] | receive | Like cc but consumers will not receive this information. |
timestamp | boolean | receive, send | Whether the message should include a timestamp or not. |
ack | boolean | Subscribe | Whether the consumer should ack the message or not. |
bindingVersion | string | receive, send | The version of this binding. If omitted, "latest" MUST be assumed. |
This object MUST contain only the properties defined above.
Example
1operations:
2 userSignup:
3 channel:
4 $ref: '#/channels/userSignup'
5 bindings:
6 amqp:
7 expiration: 100000
8 userId: guest
9 cc: ['user.logs']
10 priority: 10
11 deliveryMode: 2
12 mandatory: false
13 bcc: ['external.audit']
14 timestamp: true
15 ack: false
16 bindingVersion: 0.3.0Message Binding Object
This object contains information about the message representation in AMQP.
Fixed Fields
This object MUST contain only the properties defined above.
1channels:
2 userSignup:
3 address: 'user/signup'
4 messages:
5 userSignupMessage:
6 bindings:
7 amqp:
8 contentEncoding: gzip
9 messageType: 'user.signup'
10 bindingVersion: 0.3.0