-
-
Notifications
You must be signed in to change notification settings - Fork 947
docs(bindings): update latest bindings documentation #4481
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
docs(bindings): update latest bindings documentation #4481
Conversation
WalkthroughAdds many new AsyncAPI binding reference documents under markdown/docs/reference/bindings, updates the bindings section front matter weight and delimiter, adds a scripts notice page, and prepends a bindings link to Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Suggested reviewers
Poem
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
⏰ Context from checks skipped due to timeout of 180000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
❌ Deploy Preview for asyncapi-website failed.
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #4481 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 22 22
Lines 778 778
Branches 144 144
=========================================
Hits 778 778 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 27
🧹 Nitpick comments (42)
markdown/docs/reference/bindings/mqtt5.md (1)
23-23
: Nit: unify terminology (“MQTT 5” vs “MQTT5”).For consistency with the title and rest of doc:
-This object contains information about the server representation in MQTT5. +This object contains information about the server representation in MQTT 5.markdown/docs/reference/bindings/ibmmq.md (3)
24-28
: Add blank lines around tables to satisfy markdownlint MD058.Insert a blank line before each table header and after the last row for all tables in these ranges.
Also applies to: 37-44, 95-103, 160-174, 230-237
8-8
: Copyedits: hyphenation, capitalization, spelling.Minor readability/polish fixes.
-This document defines how to describe IBM MQ specific information with AsyncAPI. +This document defines how to describe IBM MQ-specific information with AsyncAPI. -##### Example of two possible MQ servers defined using ibmmq url syntax +##### Example of two possible MQ servers defined using ibmmq URL syntax -##### Example of single MQ server defined using ibmmq url syntax and with no queue manager name specified +##### Example of single MQ server defined using ibmmq URL syntax and with no queue manager name specified -... as a comma separated list. Supporting information ... +... as a comma-separated list. Supporting information ... -... `expiry` values are API dependant e.g., MQI and JMS use different units ... +... `expiry` values are API dependent e.g., MQI and JMS use different units ... -... MAY include CommonMark markdown formatting. A minimum markdown syntax ... +... MAY include CommonMark Markdown formatting. A minimum Markdown syntax ...Also applies to: 52-52, 63-63, 233-233, 235-235, 242-242
172-172
: Tighten wording for message size note.More concise and clear.
-... Messages produced that are greater in size than this value may fail to be delivered. ... +... Messages larger than this value may fail to be delivered. ...markdown/docs/reference/bindings/anypointmq.md (1)
25-27
: Use canonical AsyncAPI v3 documentation links (avoid GitHub master anchors)Replace spec links with the website v3 equivalents to avoid stale anchors and ensure stability.
Suggested replacements:
- Protocol: https://www.asyncapi.com/docs/reference/specification/v3.0.0#serverProtocol
- Server Object: https://www.asyncapi.com/docs/reference/specification/v3.0.0#serverObject
- Channel Bindings Object: https://www.asyncapi.com/docs/reference/specification/v3.0.0#channelBindingsObject
- Message Bindings Object: https://www.asyncapi.com/docs/reference/specification/v3.0.0#messageBindingsObject
- Schema Object: https://www.asyncapi.com/docs/reference/specification/v3.0.0#schemaObject
- Reference Object: https://www.asyncapi.com/docs/reference/specification/v3.0.0#referenceObject
Also applies to: 31-33, 51-52, 97-101
markdown/docs/reference/bindings/scripts.md (1)
6-6
: Fix capitalization and article.Use “GitHub” and add the missing article “the”.
-The entire `scripts` directory is centrally managed in [.github](https://github.com/asyncapi/.github/) repository. Any changes in this folder should be done in central repository. +The entire `scripts` directory is centrally managed in the [asyncapi/.github](https://github.com/asyncapi/.github/) repository on GitHub. Any changes to this folder should be made in the central repository.markdown/docs/reference/bindings/http.md (1)
33-35
: Normalize heading levels for “Fixed Fields”.Change “##### Fixed Fields” to “### Fixed Fields” for consistent heading increments and better TOC.
-##### Fixed Fields +### Fixed Fields @@ -##### Fixed Fields +### Fixed FieldsAlso applies to: 73-76
markdown/docs/reference/bindings/3.0.0.md (2)
102-104
: Grammar, clarity, and spacing fixes.Add missing space, tighten “outside of the scope” phrasing.
-The SNS binding does not describe the receiver.If you wish to define the receiver, add an Operation Binding Object for that receiver. For example, if you send message to an SQS queue from an SNS Topic, you would add a protocol of 'sqs' and an Identifier object for the queue. That identifier could be an ARN of a queue defined outside of the scope of AsyncAPI, but if you wanted to define the receiver you would use the name of a queue defined in an SQS Binding in the Operation Binding Object. +The SNS binding does not describe the receiver. If you wish to define the receiver, add an Operation Binding Object for that receiver. For example, if you send a message to an SQS queue from an SNS Topic, you would add a protocol of 'sqs' and an Identifier object for the queue. That identifier could be an ARN of a queue defined outside AsyncAPI, but if you wanted to define the receiver you would use the name of a queue defined in an SQS Binding in the Operation Binding Object.
249-257
: Hyphenate “HTTP-based” and tighten wording.Minor style tweak.
-#### SNS to HTTP Pub Sub +#### SNS to HTTP Pub-Sub @@ -In this version, we define a default delivery policy for any HTTP based consumers +In this version, we define a default delivery policy for any HTTP-based consumers.markdown/docs/reference/bindings/nats.md (1)
30-37
: Consider heading-level consistency; run markdownlint.Static analysis flagged a heading increment issue elsewhere; please run markdownlint across the new docs and normalize heading levels if any violations appear.
markdown/docs/reference/bindings/googlepubsub.md (3)
8-8
: Hyphenation and preposition polishPrefer “Pub/Sub‑specific information in AsyncAPI” and “Google Cloud Pub/Sub‑specific Topic details”.
-This document defines how to describe Google Cloud Pub/Sub specific information with AsyncAPI. +This document defines how to describe Google Cloud Pub/Sub‑specific information in AsyncAPI. -The `Channel Bindings Object` is used to describe the Google Cloud Pub/Sub specific +The `Channel Bindings Object` is used to describe Google Cloud Pub/Sub‑specificAlso applies to: 20-21
102-102
: Typo: “pertintent” → “pertinent”Fix spelling.
-[PubsubMessage](https://cloud.google.com/pubsub/docs/reference/rest/v1/PubsubMessage) details, alongside with pertintent +[PubsubMessage](https://cloud.google.com/pubsub/docs/reference/rest/v1/PubsubMessage) details, alongside with pertinent
70-70
: Encoding values: use canonical casing (JSON/BINARY)GCP expects Encoding values as JSON or BINARY. Update examples accordingly.
- encoding: json + encoding: JSON- encoding: binary + encoding: BINARYPlease confirm Pub/Sub currently requires uppercase enum values per the linked Encoding docs.
Also applies to: 92-93
markdown/docs/reference/bindings/solace.md (3)
8-8
: HyphenationUse “Solace‑specific”.
-This document defines how to describe Solace-specific information with AsyncAPI. +This document defines how to describe Solace‑specific information with AsyncAPI.
74-74
: Heading style (markdownlint MD003)Avoid atx-closed headings; drop trailing “##”.
-## Example with two destinations ## +## Example with two destinations-## Example with a wildcard subscription ## +## Example with a wildcard subscriptionAlso applies to: 146-146
56-61
: Make link text descriptive (markdownlint MD059)Replace “here.” links with descriptive text.
-| `deliveryMode` | Enum | 'direct' or 'persistent'. This determines the quality of service for publishing messages as documented [here.](https://docs.solace.com/Get-Started/Core-Concepts-Message-Delivery-Modes.htm) Default is 'persistent'. | +| `deliveryMode` | Enum | 'direct' or 'persistent'. This determines the quality of service for publishing messages (see Solace docs: Core Concepts – Message Delivery Modes). |Apply similarly for Queues, Message Spooling, and Configuring Queues rows with descriptive link text.
markdown/docs/reference/bindings/jms.md (1)
8-8
: Preposition tweakPrefer “in AsyncAPI”.
-This document defines how to describe JMS-specific information on AsyncAPI. +This document defines how to describe JMS‑specific information in AsyncAPI.markdown/docs/reference/bindings/pulsar.md (2)
7-7
: HyphenationUse “Pulsar‑specific”.
-This document defines how to describe Apache Pulsar specific information with AsyncAPI. +This document defines how to describe Apache Pulsar‑specific information with AsyncAPI.
20-20
: Heading levels should increment by one (markdownlint MD001)Use h3 for “Fixed Fields” blocks under h2 sections.
-##### Fixed Fields +### Fixed FieldsApply to all three occurrences.
Also applies to: 27-27, 55-55
markdown/docs/reference/bindings/2.x.x.md (4)
96-103
: Grammar and spacing fixesTighten phrasing and add missing space.
-This object contains information operation binding in SNS. +This object contains information about the operation binding in SNS. -The SNS binding does not describe the receiver.If you wish to define the receiver, add a **publish** Operation Binding Object for that receiver. +The SNS binding does not describe the receiver. If you wish to define the receiver, add a **publish** Operation Binding Object for that receiver.
152-152
: Typo: “Identifer” → “Identifier”Correct the term.
-We provide an Identifer Object to support providing the identifier +We provide an Identifier Object to support providing the identifier
165-166
: Images should have alt text (markdownlint MD045)Prefer Markdown images with alt text.
-[<img src="/img/docs/SNS-SQS-Pub-Sub.png" height = "400" width="600"/>](SNS-SQS-Pub-Sub.png) +-[<img src="/img/docs/SNS-HTTP.png" height = "400" width="600"/>](SNS-HTTP.png) +Also applies to: 236-237
189-190
: Sentence clarityFix grammar.
-In this version, the SQS queue is defined elsewhere, and we just reference via its ARN. It is worth noting that this couples the specification to the AWS *region* and *account*, which are part of the ARN, and if we moved the queue to a new region or account was this specification would need to be updated to reflect that. +In this version, the SQS queue is defined elsewhere, and we reference it via its ARN. Note this couples the spec to the AWS region and account (both in the ARN). If the queue moves to a new region or account, this spec must be updated.markdown/docs/reference/bindings/amqp.md (2)
8-8
: Preposition tweakPrefer “in AsyncAPI”.
-This document defines how to describe AMQP-specific information on AsyncAPI. +This document defines how to describe AMQP‑specific information in AsyncAPI.
36-36
: Clarify field descriptionImprove phrasing.
-`is` | string | Defines what type of channel is it. Can be either `queue` or `routingKey` (default). +`is` | string | Defines the channel type. Either `queue` or `routingKey` (default).markdown/docs/reference/bindings/websockets.md (1)
32-32
: Heading levels should increment by one (markdownlint MD001)Use h3 for “Fixed Fields”.
-##### Fixed Fields +### Fixed Fieldsmarkdown/docs/reference/bindings/sqs.md (4)
155-155
: Mixed whitespace (tab) in YAMLReplace tab with spaces for
fifoQueue
.- fifoQueue: false + fifoQueue: false
75-75
: Property casing consistencyUse
statements
(lowercase) to match other bindings and examples.-| <a name="channelBindingPolicyObjectPolicyStatements"></a>`Statements` | [Statement](#statement) | **Required.** An array of Statement objects, each of which controls a permission for this queue. | +| <a name="channelBindingPolicyObjectPolicyStatements"></a>`statements` | [[Statement](#statement)] | **Required.** An array of Statement objects, each of which controls a permission for this queue. |
99-99
: Duplicate wordRemove repeated “Binding”.
-Because we have defined Queue as part of the Channel Binding Binding object, +Because we have defined Queue as part of the Channel Binding object,
147-152
: IAM action names casingUse
sqs:
(lowercase) service prefix in examples for consistency with AWS docs.- action: Sqs:SendMessage + action: sqs:SendMessage ... - action: Sqs:ReceiveMessage + action: sqs:ReceiveMessageAlso applies to: 233-239
markdown/docs/reference/bindings/kafka.md (9)
23-23
: Normalize heading levels (MD001).Use H3 for subsection headers (“Fixed Fields”, “Example/Examples”), not H5.
Apply this pattern throughout:
-##### Fixed Fields +### Fixed Fields -##### Example +### Example -##### Examples +### ExamplesAlso applies to: 50-50, 100-100, 121-121, 157-157
55-56
: Unify constraints wording (“MUST be positive”).Use RFC 2119 “MUST” consistently.
-`partitions` | integer | ... | OPTIONAL | Must be positive +`partitions` | integer | ... | OPTIONAL | MUST be positive
48-48
: Typo: “eg.” → “e.g.”Minor grammar fix.
-... in Kafka (eg. a Kafka topic). +... in Kafka (e.g., a Kafka topic).
84-84
: Grammar: singular + hyphenation.-This objects contains information about the API relevant topic configuration in Kafka. +This object contains information about the API-relevant topic configuration in Kafka.
93-96
: Hyphenate “Vendor-specific” and clarify defaults.-... Vendor specific config. +... Vendor-specific config. -Clients should default to the vendor default if not supplied. +Clients should default to the vendor’s default if not supplied.
98-98
: Clarity on additional properties.Optional: rephrase to avoid redundancy.
-This object MAY contain the properties defined above including optional additional properties. +This object MAY contain the properties defined above and MAY include additional vendor-specific properties.
125-127
: Use reference-style links consistently; fix unused reference warning (MD053).Currently using
[Reference Object](referenceObject)
while defining[referenceObject]: ...
leaves the reference definition unused. Switch to reference-style links to use the definition.-`groupId` | [Schema Object][schemaObject] \| [Reference Object](referenceObject) | Id of the consumer group. | OPTIONAL | - -`clientId` | [Schema Object][schemaObject] \| [Reference Object](referenceObject) | Id of the consumer inside a consumer group. | OPTIONAL | - +`groupId` | [Schema Object][schemaObject] \| [Reference Object][referenceObject] | Id of the consumer group. | OPTIONAL | - +`clientId` | [Schema Object][schemaObject] \| [Reference Object][referenceObject] | Id of the consumer inside a consumer group. | OPTIONAL | - -`key` | [Schema Object][schemaObject] \| [Reference Object](referenceObject) \| [AVRO Schema Object](https://avro.apache.org/docs/current/spec.html) | ... +`key` | [Schema Object][schemaObject] \| [Reference Object][referenceObject] \| [AVRO Schema Object](https://avro.apache.org/docs/current/spec.html) | ... -`schemaIdLocation` | string | ... | OPTIONAL | MUST NOT be specified if `schemaRegistryUrl` is not specified at the Server level -`schemaIdPayloadEncoding` | string | ... | OPTIONAL | MUST NOT be specified if `schemaRegistryUrl` is not specified at the Server level -`schemaLookupStrategy` | string | ... | OPTIONAL | MUST NOT be specified if `schemaRegistryUrl` is not specified at the Server level +`schemaIdLocation` | string | ... | OPTIONAL | MUST NOT be specified if `schemaRegistryUrl` is not specified at the Server level +`schemaIdPayloadEncoding` | string | ... | OPTIONAL | MUST NOT be specified if `schemaRegistryUrl` is not specified at the Server level +`schemaLookupStrategy` | string | ... | OPTIONAL | MUST NOT be specified if `schemaRegistryUrl` is not specified at the Server levelAlso applies to: 161-165, 206-207
169-169
: Hyphenation and grammar in example intro.-This example is valid for any Confluent compatible schema registry. +This example is valid for any Confluent-compatible schema registry. -... first 4 bytes in payload ... +... first 4 bytes in the payload ...
187-187
: Grammar: “use if” → “use of”.-This is another example that describes the use if Apicurio schema registry. +This is another example that describes the use of Apicurio schema registry.markdown/docs/reference/bindings/mqtt.md (3)
25-25
: Normalize heading levels (MD001).Use H3 for “Fixed Fields” and “Examples”.
-##### Fixed Fields +### Fixed Fields -##### Examples +### ExamplesApply in Server, Operation, and Message sections.
Also applies to: 43-45, 77-81, 85-87, 98-104, 135-141, 153-155
27-40
: Fix table pipe style (MD055).Remove trailing pipes from header/separator rows for consistency with markdownlint.
Example for Server table:
-Field Name | Type | MQTT Versions | Description ----|:---:|:---:|---| +Field Name | Type | MQTT Versions | Description +---|:---:|:---:|---Repeat similarly for Operation and Message tables.
Also applies to: 91-97, 143-150
187-189
: Optional: align spec link targets with asyncapi.com (consistency with kafka.md).Current links point to GitHub; elsewhere (kafka.md) they point to asyncapi.com v3 docs. Consider switching for consistency.
-[schemaObject]: https://github.com/asyncapi/spec/blob/master/spec/asyncapi.md#schemaObject -[referenceObject]: https://github.com/asyncapi/spec/blob/master/spec/asyncapi.md#referenceObject +[schemaObject]: https://www.asyncapi.com/docs/reference/specification/v3.0.0-next-major-spec.15#schemaObject +[referenceObject]: https://www.asyncapi.com/docs/reference/specification/v3.0.0-next-major-spec.15#referenceObject
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (3)
public/img/docs/SNS-HTTP.png
is excluded by!**/*.png
public/img/docs/SNS-SQS-Pub-Sub.png
is excluded by!**/*.png
public/img/docs/SQS-Point-To-Point.png
is excluded by!**/*.png
📒 Files selected for processing (23)
config/edit-page-config.json
(1 hunks)markdown/docs/reference/bindings/2.x.x.md
(1 hunks)markdown/docs/reference/bindings/3.0.0.md
(1 hunks)markdown/docs/reference/bindings/_section.md
(1 hunks)markdown/docs/reference/bindings/amqp.md
(1 hunks)markdown/docs/reference/bindings/amqp1.md
(1 hunks)markdown/docs/reference/bindings/anypointmq.md
(1 hunks)markdown/docs/reference/bindings/googlepubsub.md
(1 hunks)markdown/docs/reference/bindings/http.md
(1 hunks)markdown/docs/reference/bindings/ibmmq.md
(1 hunks)markdown/docs/reference/bindings/jms.md
(1 hunks)markdown/docs/reference/bindings/kafka.md
(1 hunks)markdown/docs/reference/bindings/mercure.md
(1 hunks)markdown/docs/reference/bindings/mqtt.md
(1 hunks)markdown/docs/reference/bindings/mqtt5.md
(1 hunks)markdown/docs/reference/bindings/nats.md
(1 hunks)markdown/docs/reference/bindings/pulsar.md
(1 hunks)markdown/docs/reference/bindings/redis.md
(1 hunks)markdown/docs/reference/bindings/scripts.md
(1 hunks)markdown/docs/reference/bindings/solace.md
(1 hunks)markdown/docs/reference/bindings/sqs.md
(1 hunks)markdown/docs/reference/bindings/stomp.md
(1 hunks)markdown/docs/reference/bindings/websockets.md
(1 hunks)
🧰 Additional context used
🪛 LanguageTool
markdown/docs/reference/bindings/mqtt.md
[grammar] ~31-~31: There might be a mistake here.
Context: ...roperties of this object as shown below. <a name="serverBindingObjectLastWillTopi...
(QB_NEW_EN)
[grammar] ~33-~33: There might be a mistake here.
Context: ...ved. Its value MUST be either 0, 1 or 2. <a name="serverBindingObjectLastWillMess...
(QB_NEW_EN)
[grammar] ~37-~37: There might be a mistake here.
Context: ...cted client until this interval expires. <a name="serverBindingObjectMaximumPacke...
(QB_NEW_EN)
[grammar] ~93-~93: There might be a mistake here.
Context: ...delivery), or 2 (Exactly once delivery). <...
(QB_NEW_EN)
[grammar] ~95-~95: There might be a mistake here.
Context: ...inition of the lifetime of the message. <a name="operationBindingObjectBindingVe...
(QB_NEW_EN)
[grammar] ~143-~143: There might be a mistake here.
Context: ...ame | Type | MQTT Versions | Description ---|:---:|:---:|--- <a name="messageBind...
(QB_NEW_EN)
[grammar] ~144-~144: There might be a mistake here.
Context: ...rsions | Description ---|:---:|:---:|--- <a name="messageBindingObjectPayloadForm...
(QB_NEW_EN)
markdown/docs/reference/bindings/googlepubsub.md
[grammar] ~8-~8: Use a hyphen to join words.
Context: ...nes how to describe Google Cloud Pub/Sub specific information with AsyncAPI. <a ...
(QB_NEW_EN_HYPHEN)
[grammar] ~20-~20: Use a hyphen to join words.
Context: ...sed to describe the Google Cloud Pub/Sub specific [Topic](https://cloud.google.co...
(QB_NEW_EN_HYPHEN)
[grammar] ~20-~20: There might be a mistake here.
Context: ...scribe the Google Cloud Pub/Sub specific [Topic](https://cloud.google.com/pubsub/...
(QB_NEW_EN)
[grammar] ~23-~23: There might be a mistake here.
Context: ...yncAPI. Field Name | Type | Description ---|---|--- bindingVersion
|String|The ...
(QB_NEW_EN)
[grammar] ~24-~24: There might be a mistake here.
Context: ...ld Name | Type | Description ---|---|--- bindingVersion
|String|The current vers...
(QB_NEW_EN)
[grammar] ~26-~26: There might be a mistake here.
Context: ...d Resources like Cloud Pub/Sub Topics.)_ messageRetentionDuration
|String|Indica...
(QB_NEW_EN)
[grammar] ~27-~27: There might be a mistake here.
Context: ...le.protobuf#google.protobuf.Duration).)_ messageStoragePolicy
|[Message Storage ...
(QB_NEW_EN)
[grammar] ~35-~35: There might be a mistake here.
Context: ...sed to describe the Google Cloud Pub/Sub [MessageStoragePolicy](https://cloud.goo...
(QB_NEW_EN)
[grammar] ~36-~36: There might be a mistake here.
Context: ...v1/projects.topics#MessageStoragePolicy) Object with AsyncAPI. Field Name | Type...
(QB_NEW_EN)
[grammar] ~39-~39: There might be a mistake here.
Context: ...yncAPI. Field Name | Type | Description ---|---|--- allowedPersistenceRegions
|...
(QB_NEW_EN)
[grammar] ~40-~40: There might be a mistake here.
Context: ...ld Name | Type | Description ---|---|--- allowedPersistenceRegions
|String[]|A l...
(QB_NEW_EN)
[grammar] ~47-~47: There might be a mistake here.
Context: ...sed to describe the Google Cloud Pub/Sub [SchemaSettings](https://cloud.google.co...
(QB_NEW_EN)
[grammar] ~48-~48: There might be a mistake here.
Context: ...jects.topics#SchemaSettings) Object with AsyncAPI. Field Name | Type | Descripti...
(QB_NEW_EN)
[grammar] ~51-~51: There might be a mistake here.
Context: ...yncAPI. Field Name | Type | Description ---|---|--- encoding
|String|The encodi...
(QB_NEW_EN)
[grammar] ~52-~52: There might be a mistake here.
Context: ...ld Name | Type | Description ---|---|--- encoding
|String|The encoding of the me...
(QB_NEW_EN)
[grammar] ~53-~53: There might be a mistake here.
Context: ...t/v1/projects.topics#encoding) values.)_ firstRevisionId
|String|The minimum _(i...
(QB_NEW_EN)
[grammar] ~54-~54: There might be a mistake here.
Context: ...revision allowed for validating messages lastRevisionId
|String|The maximum _(in...
(QB_NEW_EN)
[grammar] ~55-~55: There might be a mistake here.
Context: ...revision allowed for validating messages name
|String|The name of the schema tha...
(QB_NEW_EN)
[grammar] ~101-~101: Use a hyphen to join words.
Context: ...sed to describe the Google Cloud Pub/Sub specific [PubsubMessage](https://cloud.g...
(QB_NEW_EN_HYPHEN)
[grammar] ~101-~101: There might be a mistake here.
Context: ...scribe the Google Cloud Pub/Sub specific [PubsubMessage](https://cloud.google.com...
(QB_NEW_EN)
[grammar] ~103-~103: There might be a mistake here.
Context: ...intent parts of the Google Cloud Pub/Sub [Schema](https://cloud.google.com/pubsub...
(QB_NEW_EN)
[grammar] ~104-~104: There might be a mistake here.
Context: ...ference/rest/v1/projects.schemas#Schema) Object, with AsyncAPI. Field Name | Typ...
(QB_NEW_EN)
[grammar] ~107-~107: There might be a mistake here.
Context: ...yncAPI. Field Name | Type | Description ---|---|--- bindingVersion
|String|The ...
(QB_NEW_EN)
[grammar] ~108-~108: There might be a mistake here.
Context: ...ld Name | Type | Description ---|---|--- bindingVersion
|String|The current vers...
(QB_NEW_EN)
[grammar] ~110-~110: There might be a mistake here.
Context: ...o filter messages on the subscription.)_ orderingKey
|String|If non-empty, ident...
(QB_NEW_EN)
[grammar] ~111-~111: There might be a mistake here.
Context: ...loud.google.com/pubsub/docs/ordering).)_ schema
|[Schema Definition Object](#sch...
(QB_NEW_EN)
[grammar] ~120-~120: There might be a mistake here.
Context: ...ncAPI, for consistency it makes sense to provide this information here at all tim...
(QB_NEW_EN)
[grammar] ~121-~121: There might be a mistake here.
Context: ...API does not natively support describing payloads using a supported Google Cloud ...
(QB_NEW_EN)
[grammar] ~124-~124: There might be a mistake here.
Context: ...otobuf. Field Name | Type | Description ---|---|--- name
|String|The name of th...
(QB_NEW_EN)
[grammar] ~125-~125: There might be a mistake here.
Context: ...ld Name | Type | Description ---|---|--- name
|String|The name of the schema <a...
(QB_NEW_EN)
markdown/docs/reference/bindings/jms.md
[style] ~25-~25: Qualifiers like “somewhat” can weaken your message and make your writing sound uncertain. Consider removing it or choosing an alternative to sound more confident.
Context: ...to enable AsyncAPI definitions that are somewhat portable between various JMS Providers....
(SOMEWHAT)
[grammar] ~25-~25: Use a hyphen to join words.
Context: ...ter/ibmmq), etc.) to detail JMS Provider specific configuration. NOTE that f...
(QB_NEW_EN_HYPHEN)
[grammar] ~33-~33: There might be a mistake here.
Context: ... | Values for JMS Protocol | Description ---|:---|:--- <a name="serverObjectProto...
(QB_NEW_EN)
[grammar] ~34-~34: There might be a mistake here.
Context: ...JMS Protocol | Description ---|:---|:--- <a name="serverObjectProtocolFieldValueJ...
(QB_NEW_EN)
[grammar] ~36-~36: There might be a mistake here.
Context: ...g the hostname and port of a JMS Broker. <a name="serverObjectProtocolVersionFiel...
(QB_NEW_EN)
[grammar] ~48-~48: There might be a mistake here.
Context: ...ml) implementation for the JMS Provider. <a name="serverBindingObjectJMSPropertie...
(QB_NEW_EN)
[grammar] ~55-~55: Use a hyphen to join words.
Context: ...server binding object for jms
with JMS specific properties: ```yaml servers: ...
(QB_NEW_EN_HYPHEN)
[grammar] ~80-~80: There might be a mistake here.
Context: ...fields: Field Name | Type | Description ---|:---:|--- <a name="channelBindingObj...
(QB_NEW_EN)
[grammar] ~81-~81: There might be a mistake here.
Context: ... Name | Type | Description ---|:---:|--- <a name="channelBindingObjectDestination...
(QB_NEW_EN)
[grammar] ~83-~83: There might be a mistake here.
Context: ...age ordering) supported by this channel. <a name="channelBindingObjectBindingVers...
(QB_NEW_EN)
[grammar] ~119-~119: There might be a mistake here.
Context: ...fields: Field Name | Type | Description ---|:---:|--- <a name="messageBindingObj...
(QB_NEW_EN)
[grammar] ~120-~120: There might be a mistake here.
Context: ... Name | Type | Description ---|:---:|--- </...
(QB_NEW_EN)
[grammar] ~121-~121: Use a hyphen to join words.
Context: ...bject containing the definitions for JMS specific headers (so-called protocol hea...
(QB_NEW_EN_HYPHEN)
[grammar] ~129-~129: Use a hyphen to join words.
Context: ...a message
object with both application specific headers, and a message binding ...
(QB_NEW_EN_HYPHEN)
[grammar] ~129-~129: Use a hyphen to join words.
Context: ...essage binding object for jms
with JMS specific headers: ```yaml message: me...
(QB_NEW_EN_HYPHEN)
markdown/docs/reference/bindings/anypointmq.md
[grammar] ~33-~33: There might be a mistake here.
Context: ...s for Anypoint MQ Protocol | Description ---|:---|:--- <a name="serverObjectProto...
(QB_NEW_EN)
[grammar] ~34-~34: There might be a mistake here.
Context: ... MQ Protocol | Description ---|:---|:--- <a name="serverObjectProtocolFieldValueA...
(QB_NEW_EN)
[grammar] ~36-~36: There might be a mistake here.
Context: ...soft.com/api, or
https://.../api/v1`). <a name="serverObjectUrlFieldValueAnypoi...
(QB_NEW_EN)
[grammar] ~38-~38: There might be a mistake here.
Context: ...T API omitted from the url
, e.g. v1
. <a name="serverObjectSecurityFieldValueA...
(QB_NEW_EN)
[grammar] ~53-~53: There might be a mistake here.
Context: ...fields: Field Name | Type | Description ---|:---:|--- <a name="channelBindingObj...
(QB_NEW_EN)
[grammar] ~54-~54: There might be a mistake here.
Context: ... Name | Type | Description ---|:---:|--- <a name="channelBindingObjectDestination...
(QB_NEW_EN)
[grammar] ~99-~99: There might be a mistake here.
Context: ...fields: Field Name | Type | Description ---|:---:|--- <a name="messageBindingObj...
(QB_NEW_EN)
[grammar] ~100-~100: There might be a mistake here.
Context: ... Name | Type | Description ---|:---:|--- </...
(QB_NEW_EN)
markdown/docs/reference/bindings/scripts.md
[uncategorized] ~6-~6: The official name of this software platform is spelled with a capital “H”.
Context: ...ts` directory is centrally managed in .github ...
(GITHUB)
[grammar] ~6-~6: There might be a mistake here.
Context: ...y changes in this folder should be done in central repository.
(QB_NEW_EN)
markdown/docs/reference/bindings/amqp.md
[grammar] ~34-~34: There might be a mistake here.
Context: ... Fields Field Name | Type | Description ---|:---:|--- <a name="channelBindingObj...
(QB_NEW_EN)
[grammar] ~35-~35: There might be a mistake here.
Context: ... Name | Type | Description ---|:---:|--- `is...
(QB_NEW_EN)
[style] ~36-~36: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ...g | Defines what type of channel is it. Can be either queue
or routingKey
(defa...
(MISSING_IT_THERE)
[style] ~39-~39: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ...e| string | The type of the exchange. Can be either
topic,
direct,
fanout`, ...
(MISSING_IT_THERE)
[grammar] ~39-~39: There might be a mistake here.
Context: ...rect,
fanout,
defaultor
headers`. <a name="channelBindingObjectExchangeDur...
(QB_NEW_EN)
[grammar] ~103-~103: There might be a mistake here.
Context: ...umers will not receive this information. <a name="operationBindingObjectTimestamp...
(QB_NEW_EN)
markdown/docs/reference/bindings/2.x.x.md
[grammar] ~29-~29: There might be a mistake here.
Context: ... provide properties on the binding that allow creation of a topic in infrastructure-a...
(QB_NEW_EN)
[style] ~29-~29: This phrase is redundant. Consider using “outside”.
Context: ...rties such as SNS Access Control Policy outside of AsyncAPI. SNS supports many optional p...
(OUTSIDE_OF)
[grammar] ~36-~36: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | </a...
(QB_NEW_EN)
[style] ~37-~37: To form a complete sentence, be sure to include a subject.
Context: ... | Required. The name of the topic. Can be different from the channel name to a...
(MISSING_IT_THERE)
[grammar] ~39-~39: There might be a mistake here.
Context: ... The security policy for the SNS Topic | | </a...
(QB_NEW_EN)
[grammar] ~47-~47: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="channelBindingFifoObjectChann...
(QB_NEW_EN)
[style] ~48-~48: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ...uired.** Defines the type of SNS Topic. Can be either standard
or FIFO
. | | <a ...
(MISSING_IT_THERE)
[grammar] ~53-~53: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="channelBindingPolicyObjectPol...
(QB_NEW_EN)
[grammar] ~102-~102: There might be a mistake here.
Context: ... for that receiver. For example, if you send message to an SQS queue from an SNS Top...
(QB_NEW_EN)
[style] ~102-~102: This phrase is redundant. Consider using “outside”.
Context: ...fier could be an ARN of a queue defined outside of the scope of AsyncAPI, but if you wante...
(OUTSIDE_OF)
[grammar] ~112-~112: There might be a mistake here.
Context: ...y be overridden by a specific consumer.| |<a name="channelBindingObjectBindingVer...
(QB_NEW_EN)
[style] ~121-~121: To form a complete sentence, be sure to include a subject.
Context: ...hat this endpoint receives messages by. Can be http
, https
, email
, `email-jso...
(MISSING_IT_THERE)
[grammar] ~121-~121: There might be a mistake here.
Context: ... application
, lambda
or firehose
| | <a name="operationBindingObjectEndpoin...
(QB_NEW_EN)
[grammar] ~124-~124: There might be a mistake here.
Context: ...geAttributes (default) or MessageBody. | | <a name="operationBindingObjectRawMess...
(QB_NEW_EN)
[grammar] ~125-~125: There might be a mistake here.
Context: ...S attributes are included in the body. | | <a name="operationBindingObjectRedrive...
(QB_NEW_EN)
[grammar] ~127-~127: There might be a mistake here.
Context: .../sns/latest/api/API_CreateTopic.html). | | <a name="channelBindingObjectDisplayNa...
(QB_NEW_EN)
[grammar] ~152-~152: Ensure spelling is correct
Context: ...erring, not including. | We provide an Identifer Object to support providing the identif...
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
[grammar] ~157-~157: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="redrivePolicyObjectDeadLetter...
(QB_NEW_EN)
[grammar] ~158-~158: There might be a mistake here.
Context: ... the target SQS of the Redrive Policy. | | <a name="redrivePolicyObjectMaxReceive...
(QB_NEW_EN)
[grammar] ~240-~240: Use a hyphen to join words.
Context: ...e a default delivery policy for any HTTP based consumers ```yaml channels: use...
(QB_NEW_EN_HYPHEN)
markdown/docs/reference/bindings/sqs.md
[style] ~13-~13: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...nd consumers receive from it directly. For publish-subscribe scenarios, use as a *...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[grammar] ~36-~36: There might be a mistake here.
Context: ... the Channel Object in that single file. - The producer and consumer both have an A...
(QB_NEW_EN)
[grammar] ~37-~37: There might be a mistake here.
Context: ...s the SQS Binding on its Channel Object. - The producer and consumer both have an A...
(QB_NEW_EN)
[grammar] ~44-~44: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | </...
(QB_NEW_EN)
[grammar] ~45-~45: There might be a mistake here.
Context: ...ueue that will be used as the channel. | | ...
(QB_NEW_EN)
[grammar] ~53-~53: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | name
|...
(QB_NEW_EN)
[grammar] ~54-~54: There might be a mistake here.
Context: ...tifier should be the one in this field.| | fifoQueue
| ...
(QB_NEW_EN)
[grammar] ~55-~55: There might be a mistake here.
Context: ...| Required. Is this a FIFO queue? | | `dedu...
(QB_NEW_EN)
[grammar] ~56-~56: There might be a mistake here.
Context: ... to high throughput for FIFO queues.** | | `fif...
(QB_NEW_EN)
[grammar] ~58-~58: There might be a mistake here.
Context: ...nge is 0 to 15 minutes. Defaults to 0. | | ...
(QB_NEW_EN)
[grammar] ~59-~59: There might be a mistake here.
Context: ...3200 seconds). Defaults to 30 seconds. | | <a name="queueObjectRecieveMessageWait...
(QB_NEW_EN)
[grammar] ~61-~61: There might be a mistake here.
Context: ...ays). The default is 345,600 (4 days). | | </a...
(QB_NEW_EN)
[grammar] ~63-~63: There might be a mistake here.
Context: ...The security policy for the SQS Queue | | tags
|...
(QB_NEW_EN)
[grammar] ~69-~69: There might be a mistake here.
Context: ...atest/gr/aws-arns-and-namespaces.html) | |`nam...
(QB_NEW_EN)
[grammar] ~74-~74: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="channelBindingPolicyObjectPol...
(QB_NEW_EN)
[grammar] ~79-~79: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="redrivePolicyObjectDeadLetter...
(QB_NEW_EN)
[grammar] ~80-~80: There might be a mistake here.
Context: ...ue to use as a dead letter queue (DLQ) | | <a name="redrivePolicyObjectMaxReceive...
(QB_NEW_EN)
[grammar] ~99-~99: There might be a mistake here.
Context: ...ed Queue as part of the Channel Binding Binding object, we do not require Binding infor...
(QB_NEW_EN)
[grammar] ~99-~99: There might be a mistake here.
Context: ... to denote the Binding on the Operation Object, if you want to indicate the protocol us...
(QB_NEW_EN)
[grammar] ~107-~107: There might be a mistake here.
Context: ...* Operation Binding Object [if required] Consumer: SNS publish Operation Bind...
(QB_NEW_EN)
[grammar] ~118-~118: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | </...
(QB_NEW_EN)
markdown/docs/reference/bindings/pulsar.md
[grammar] ~6-~6: There might be a mistake here.
Context: ...ulsar' weight: 23 --- # Pulsar Bindings This document defines how to describe Ap...
(QB_NEW_EN)
[grammar] ~7-~7: Use a hyphen to join words.
Context: ...nt defines how to describe Apache Pulsar specific information with AsyncAPI. <a ...
(QB_NEW_EN_HYPHEN)
[grammar] ~39-~39: There might be a mistake here.
Context: ..."channel"> ## Channel Binding Object This object contains information about t...
(QB_NEW_EN)
[grammar] ~44-~44: There might be a mistake here.
Context: ...Required | Description | Default value | ---|:---:|:---:|:---|:---| namespace
|...
(QB_NEW_EN)
[grammar] ~45-~45: There might be a mistake here.
Context: ...fault value | ---|:---:|:---:|:---|:---| namespace
| String | Yes | The namesp...
(QB_NEW_EN)
[grammar] ~50-~50: There might be a mistake here.
Context: ... | No | Topic retention policy. | N/A | ttl
| Integer | No | Message time-to-...
(QB_NEW_EN)
[grammar] ~56-~56: There might be a mistake here.
Context: ...ct"> ### Retention Definition Object The Retention Definition Object
is use...
(QB_NEW_EN)
[grammar] ~59-~59: There might be a mistake here.
Context: ...Required | Description | Default value | ---|:---:|:---:|:---|:---| time
|Intege...
(QB_NEW_EN)
[grammar] ~60-~60: There might be a mistake here.
Context: ...fault value | ---|:---:|:---:|:---|:---| time
|Integer| No | Time given in Minut...
(QB_NEW_EN)
markdown/docs/reference/bindings/solace.md
[grammar] ~20-~20: There might be a mistake here.
Context: ... | |------------------|--------|-----------...
(QB_NEW_EN)
[grammar] ~21-~21: There might be a mistake here.
Context: ...---------------------------------------| | bindingVersion
| String | The curren...
(QB_NEW_EN)
[grammar] ~22-~22: There might be a mistake here.
Context: ... | | msgVpn
| String | The Virtua...
(QB_NEW_EN)
markdown/docs/reference/bindings/kafka.md
[grammar] ~25-~25: There might be a mistake here.
Context: ... | Applicability [default] | Constraints ---|:---:|:---:|:---:|--- `schemaRegistr...
(QB_NEW_EN)
[grammar] ~26-~26: There might be a mistake here.
Context: ... | Constraints ---|:---:|:---:|:---:|--- schemaRegistryUrl
| string (url) | API...
(QB_NEW_EN)
[grammar] ~27-~27: There might be a mistake here.
Context: ...Schema Registry was used) | OPTIONAL | - schemaRegistryVendor
| string | The ve...
(QB_NEW_EN)
[grammar] ~28-~28: There might be a mistake here.
Context: ...maRegistryVendor` | string | The vendor of Schema Registry and Kafka serdes librar...
(QB_NEW_EN)
[grammar] ~54-~54: There might be a mistake here.
Context: ... | OPTIONAL | - <a name="channelBindingObjectPartitions"...
(QB_NEW_EN)
[grammar] ~56-~56: There might be a mistake here.
Context: ... OPTIONAL | MUST be positive <a name="channelBindingObjectTopicConfig...
(QB_NEW_EN)
[grammar] ~57-~57: There might be a mistake here.
Context: ... | OPTIONAL | - <a name="channelBindingObjectBindingVers...
(QB_NEW_EN)
[grammar] ~84-~84: Use a hyphen to join words.
Context: ...jects contains information about the API relevant topic configuration in Kafka. ...
(QB_NEW_EN_HYPHEN)
[grammar] ~88-~88: There might be a mistake here.
Context: ...y only contain delete
and/or compact
...
(QB_NEW_EN)
[grammar] ~92-~92: There might be a mistake here.
Context: ...TIONAL | see kafka documentation <a name="topicConfigurationConfluentKeyS...
(QB_NEW_EN)
[grammar] ~93-~93: Use a hyphen to join words.
Context: ...n for the message key is enabled. Vendor specific config. ...
(QB_NEW_EN_HYPHEN)
[grammar] ~93-~93: There might be a mistake here.
Context: ... | OPTIONAL | - <a name="topicConfigurationConfluentKeyS...
(QB_NEW_EN)
[grammar] ~94-~94: Use a hyphen to join words.
Context: ...kup strategy for the message key. Vendor specific config. ...
(QB_NEW_EN_HYPHEN)
[grammar] ~94-~94: There might be a mistake here.
Context: ...t to the vendor default if not supplied. <a name="topicConfigurationConfluentValu...
(QB_NEW_EN)
[grammar] ~95-~95: Use a hyphen to join words.
Context: ...for the message value is enabled. Vendor specific config. ...
(QB_NEW_EN_HYPHEN)
[grammar] ~95-~95: There might be a mistake here.
Context: ... | OPTIONAL | - <a name="topicConfigurationConfluentValu...
(QB_NEW_EN)
[grammar] ~96-~96: Use a hyphen to join words.
Context: ...p strategy for the message value. Vendor specific config. ...
(QB_NEW_EN_HYPHEN)
[grammar] ~161-~161: There might be a mistake here.
Context: ...ct](referenceObject) way. | OPTIONAL | - <a name="messageBindingObjectSchemaIdLoc...
(QB_NEW_EN)
[grammar] ~162-~162: There might be a mistake here.
Context: ...ming this operation, tells where the id of schema is stored (e.g. header
or `pay...
(QB_NEW_EN)
[grammar] ~163-~163: Use a hyphen to join words.
Context: ...ng` | string | Number of bytes or vendor specific values when schema id is encode...
(QB_NEW_EN_HYPHEN)
[grammar] ~169-~169: Use a hyphen to join words.
Context: ... This example is valid for any Confluent compatible schema registry. Here we desc...
(QB_NEW_EN_HYPHEN)
[grammar] ~169-~169: There might be a mistake here.
Context: ... implementation using the first 4 bytes in payload to store schema identifier. ``...
(QB_NEW_EN)
[grammar] ~169-~169: There might be a mistake here.
Context: ...n using the first 4 bytes in payload to store schema identifier. ```yaml channels: ...
(QB_NEW_EN)
markdown/docs/reference/bindings/3.0.0.md
[grammar] ~29-~29: There might be a mistake here.
Context: ... provide properties on the binding that allow creation of a topic in infrastructure-a...
(QB_NEW_EN)
[style] ~29-~29: This phrase is redundant. Consider using “outside”.
Context: ...rties such as SNS Access Control Policy outside of AsyncAPI. SNS supports many optional p...
(OUTSIDE_OF)
[grammar] ~36-~36: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | </a...
(QB_NEW_EN)
[style] ~37-~37: To form a complete sentence, be sure to include a subject.
Context: ... | Required. The name of the topic. Can be different from the channel name to a...
(MISSING_IT_THERE)
[grammar] ~39-~39: There might be a mistake here.
Context: ... The security policy for the SNS Topic | | </a...
(QB_NEW_EN)
[grammar] ~47-~47: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="channelBindingFifoObjectChann...
(QB_NEW_EN)
[style] ~48-~48: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ...uired.** Defines the type of SNS Topic. Can be either standard
or FIFO
. | | <a ...
(MISSING_IT_THERE)
[grammar] ~53-~53: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="channelBindingPolicyObjectPol...
(QB_NEW_EN)
[grammar] ~102-~102: There might be a mistake here.
Context: ... for that receiver. For example, if you send message to an SQS queue from an SNS Top...
(QB_NEW_EN)
[style] ~102-~102: This phrase is redundant. Consider using “outside”.
Context: ...fier could be an ARN of a queue defined outside of the scope of AsyncAPI, but if you wante...
(OUTSIDE_OF)
[grammar] ~108-~108: There might be a mistake here.
Context: ...Name | Type | Applies To | Description | |---|:---:|:---:|---| | <a name="operati...
(QB_NEW_EN)
[grammar] ~109-~109: There might be a mistake here.
Context: ...To | Description | |---|:---:|:---:|---| | ...
(QB_NEW_EN)
[grammar] ~112-~112: There might be a mistake here.
Context: ...y be overridden by a specific consumer.| |<a name="channelBindingObjectBindingVer...
(QB_NEW_EN)
[style] ~121-~121: To form a complete sentence, be sure to include a subject.
Context: ...hat this endpoint receives messages by. Can be http
, https
, email
, `email-jso...
(MISSING_IT_THERE)
[grammar] ~121-~121: There might be a mistake here.
Context: ... application
, lambda
or firehose
| | <a name="operationBindingObjectEndpoin...
(QB_NEW_EN)
[grammar] ~124-~124: There might be a mistake here.
Context: ...geAttributes (default) or MessageBody. | | <a name="operationBindingObjectRawMess...
(QB_NEW_EN)
[grammar] ~125-~125: There might be a mistake here.
Context: ...S attributes are included in the body. | | <a name="operationBindingObjectRedrive...
(QB_NEW_EN)
[grammar] ~127-~127: There might be a mistake here.
Context: .../sns/latest/api/API_CreateTopic.html). | | <a name="channelBindingObjectDisplayNa...
(QB_NEW_EN)
[grammar] ~143-~143: There might be a mistake here.
Context: ...ond, per subscription | #### Identifier |Field Name | Type | Description| |---|:...
(QB_NEW_EN)
[grammar] ~144-~144: There might be a mistake here.
Context: ...tifier |Field Name | Type | Description| |---|:---:|---| |<a name="identifierObje...
(QB_NEW_EN)
[grammar] ~145-~145: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| |url
...
(QB_NEW_EN)
[grammar] ~147-~147: There might be a mistake here.
Context: ...al.** The endpoint is an email address | |`ph...
(QB_NEW_EN)
[grammar] ~149-~149: There might be a mistake here.
Context: ...latest/gr/aws-arns-and-namespaces.html)| |`nam...
(QB_NEW_EN)
[grammar] ~152-~152: Ensure spelling is correct
Context: ...erring, not including. | We provide an Identifer Object to support providing the identif...
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
[grammar] ~157-~157: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="redrivePolicyObjectDeadLetter...
(QB_NEW_EN)
[grammar] ~158-~158: There might be a mistake here.
Context: ... the target SQS of the Redrive Policy. | | <a name="redrivePolicyObjectMaxReceive...
(QB_NEW_EN)
[grammar] ~255-~255: Use a hyphen to join words.
Context: ...e a default delivery policy for any HTTP based consumers ```yaml channels: use...
(QB_NEW_EN_HYPHEN)
markdown/docs/reference/bindings/ibmmq.md
[grammar] ~8-~8: Use a hyphen to join words.
Context: ... document defines how to describe IBM MQ specific information with AsyncAPI. <a ...
(QB_NEW_EN_HYPHEN)
[grammar] ~37-~37: There might be a mistake here.
Context: ...eference | Applicability | Description | ---|:---|:--|:-- <a name="uriObjectSchem...
(QB_NEW_EN)
[grammar] ~38-~38: There might be a mistake here.
Context: ...ability | Description | ---|:---|:--|:-- scheme
|...
(QB_NEW_EN)
[grammar] ~39-~39: There might be a mistake here.
Context: ...e used to represent an IBM MQ endpoint. `autho...
(QB_NEW_EN)
[grammar] ~63-~63: There might be a mistake here.
Context: ... protocol: ibmmq ``` ##### Example of single MQ server defined using ibmmq ur...
(QB_NEW_EN)
[grammar] ~99-~99: There might be a mistake here.
Context: ...qor URI Scheme
file://or
http://` <a name="serverObjectMultiEndpointServer...
(QB_NEW_EN)
[grammar] ~168-~168: There might be a mistake here.
Context: ...gth. MAY coexist with topic.objectName
<a name="channelBindingObjectTopicObject...
(QB_NEW_EN)
[grammar] ~171-~171: There might be a mistake here.
Context: ... subscriptions. | OPTIONAL [false
] | - <a name="channelBindingObjectMaxMsgLengt...
(QB_NEW_EN)
[style] ~172-~172: This wording could be more concise.
Context: ...ic or Queue. Messages produced that are greater in size than this value may fail to be delivere...
(ADJECTIVE_IN_ATTRIBUTE)
[grammar] ~172-~172: There might be a mistake here.
Context: ...MUST be 0-104,857,600
bytes (100 MB). <a name="channelBindingObjectBindingVers...
(QB_NEW_EN)
[grammar] ~178-~178: There might be a mistake here.
Context: ...ove. ##### Example for an IBM MQ Topic where topic string is defined by AsyncAPI cha...
(QB_NEW_EN)
[grammar] ~230-~230: There might be a mistake here.
Context: ... | Applicability [default] | Constraints ---|:---:|---|:---|:--- <a name="message...
(QB_NEW_EN)
[grammar] ~231-~231: There might be a mistake here.
Context: ...t] | Constraints ---|:---:|---|:---|:--- `...
(QB_NEW_EN)
[grammar] ~233-~233: Use a hyphen to join words.
Context: ...n one header can be specified as a comma separated list. Supporting information o...
(QB_NEW_EN_HYPHEN)
[grammar] ~234-~234: There might be a mistake here.
Context: ... message type or format. | OPTIONAL | - </a...
(QB_NEW_EN)
[grammar] ~235-~235: Ensure spelling is correct
Context: ...ts the message. expiry
values are API dependant e.g., MQI and JMS use different units o...
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
[uncategorized] ~242-~242: Did you mean the formatting language “Markdown” (= proper noun)?
Context: ...e binding object MAY include CommonMark markdown formatting. A minimum markdown syntax a...
(MARKDOWN_NNP)
[uncategorized] ~242-~242: Did you mean the formatting language “Markdown” (= proper noun)?
Context: ...mmonMark markdown formatting. A minimum markdown syntax as described by [CommonMark 0.27...
(MARKDOWN_NNP)
🪛 markdownlint-cli2 (0.18.1)
markdown/docs/reference/bindings/mqtt5.md
25-25: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
79-79: Link and image reference definitions should be needed
Unused link or image reference definition: "referenceobject"
(MD053, link-image-reference-definitions)
markdown/docs/reference/bindings/mqtt.md
25-25: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
28-28: Table pipe style
Expected: no_leading_or_trailing; Actual: trailing_only; Unexpected trailing pipe
(MD055, table-pipe-style)
39-39: Table pipe style
Expected: no_leading_or_trailing; Actual: trailing_only; Unexpected trailing pipe
(MD055, table-pipe-style)
89-89: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
141-141: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
145-145: Table pipe style
Expected: no_leading_or_trailing; Actual: trailing_only; Unexpected trailing pipe
(MD055, table-pipe-style)
markdown/docs/reference/bindings/2.x.x.md
46-46: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
52-52: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
57-57: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
132-132: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
144-144: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
165-165: Images should have alternate text (alt text)
(MD045, no-alt-text)
236-236: Images should have alternate text (alt text)
(MD045, no-alt-text)
markdown/docs/reference/bindings/sqs.md
56-56: Link text should be descriptive
(MD059, descriptive-link-text)
59-59: Link text should be descriptive
(MD059, descriptive-link-text)
60-60: Link text should be descriptive
(MD059, descriptive-link-text)
61-61: Link text should be descriptive
(MD059, descriptive-link-text)
74-74: Heading style
Expected: atx; Actual: atx_closed
(MD003, heading-style)
146-146: Heading style
Expected: atx; Actual: atx_closed
(MD003, heading-style)
markdown/docs/reference/bindings/pulsar.md
20-20: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
42-42: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
64-64: Heading levels should only increment by one level at a time
Expected: h4; Actual: h5
(MD001, heading-increment)
markdown/docs/reference/bindings/solace.md
56-56: Link text should be descriptive
(MD059, descriptive-link-text)
59-59: Link text should be descriptive
(MD059, descriptive-link-text)
60-60: Link text should be descriptive
(MD059, descriptive-link-text)
61-61: Link text should be descriptive
(MD059, descriptive-link-text)
74-74: Heading style
Expected: atx; Actual: atx_closed
(MD003, heading-style)
146-146: Heading style
Expected: atx; Actual: atx_closed
(MD003, heading-style)
markdown/docs/reference/bindings/kafka.md
23-23: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
29-29: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data
(MD056, table-column-count)
50-50: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
100-100: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
121-121: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
157-157: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
207-207: Link and image reference definitions should be needed
Unused link or image reference definition: "referenceobject"
(MD053, link-image-reference-definitions)
markdown/docs/reference/bindings/websockets.md
32-32: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
58-58: Link and image reference definitions should be needed
Unused link or image reference definition: "referenceobject"
(MD053, link-image-reference-definitions)
markdown/docs/reference/bindings/ibmmq.md
46-46: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
52-52: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
57-57: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
132-132: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
144-144: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
165-165: Images should have alternate text (alt text)
(MD045, no-alt-text)
251-251: Images should have alternate text (alt text)
(MD045, no-alt-text)
markdown/docs/reference/bindings/nats.md
33-33: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
🔇 Additional comments (10)
markdown/docs/reference/bindings/mqtt5.md (2)
10-10
: Use H2 for deprecation note and link to ../mqttThe file
markdown/docs/reference/bindings/mqtt.md
exists, so../mqtt
points to it correctly.-# **Deprecation Warning**: MQTT version 5 specific bindings are deprecated in favor of [MQTT bindings](../mqtt/README.md) that are not version specific. +## Deprecation warning + +MQTT version 5 specific bindings are deprecated in favor of [MQTT bindings](../mqtt) that are not version specific.
29-29
: Fix reference-style link syntax for Reference Object
Replace the parentheses-style link with a bracketed reference:-`sessionExpiryInterval` | [Schema Object][schemaObject] \| [Reference Object](referenceObject) \| integer | Session Expiry Interval in seconds or a Schema Object containing the definition of the interval. +`sessionExpiryInterval` | [Schema Object][schemaObject] \| [Reference Object][referenceObject] \| integer | Session Expiry Interval in seconds or a Schema Object containing the definition of the interval.Ensure the
[schemaObject]
and[referenceObject]
definitions (lines 78–79) use the correct anchor fragments in the spec (e.g.#schema-object
,#reference-object
) to match the actual headings.config/edit-page-config.json (1)
2-5
: New bindings edit link looks good; confirm path/value conventions.Entry is correct. Please confirm:
- Should “value” be “/reference/bindings/” (leading slash) for consistency with other entries?
- Is the default branch “master” for asyncapi/bindings?
markdown/docs/reference/bindings/redis.md (1)
6-22
: LGTM.Clear, minimal placeholder binding doc; no issues.
markdown/docs/reference/bindings/mercure.md (1)
6-22
: LGTM.Consistent with placeholder binding pattern; no issues.
markdown/docs/reference/bindings/amqp1.md (1)
6-22
: LGTM.Matches the placeholder format used across bindings.
markdown/docs/reference/bindings/3.0.0.md (1)
165-166
: Verify image assets exist.Ensure /img/docs/SNS-SQS-Pub-Sub.png and /img/docs/SNS-HTTP.png are added or already present to avoid broken images.
Also applies to: 251-252
markdown/docs/reference/bindings/googlepubsub.md (1)
80-90
: Verify GCP region IDs in exampleSome regions listed (for example, us-central2, us-east7) may not exist. Replace with valid region IDs.
If valid, keep as-is; otherwise, adjust the list per current GCP regions.
markdown/docs/reference/bindings/_section.md (1)
1-4
: Section weight change looks fine.Front matter is valid; no further changes needed.
markdown/docs/reference/bindings/stomp.md (1)
1-45
: STOMP binding doc reads clean.Clear, consistent structure; LGTM.
binding : | ||
sns: {} # Indicates that the channel is an SNS Topic | ||
subscribe: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
YAML: bindings key typo
Use bindings
, not binding
.
- binding :
+ bindings:
sns: {} # Indicates that the channel is an SNS Topic
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
binding : | |
sns: {} # Indicates that the channel is an SNS Topic | |
subscribe: | |
bindings: | |
sns: {} # Indicates that the channel is an SNS Topic | |
subscribe: |
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/2.x.x.md around lines 173 to 175, the
example uses the incorrect key "binding" — update it to "bindings" so the YAML
reads "bindings: \n sns: {} # Indicates that the channel is an SNS
Topic\nsubscribe:" ensuring the correct plural key is used throughout the
example and any nearby references.
sns: | ||
- protocol: http | ||
endpoint: | ||
url: http://login.my.com/user/new | ||
filterPolicy: | ||
reason: | ||
anything-but: password-reset | ||
filterPolicyScope: MessageBody | ||
deliveryPolicy: | ||
minDelayTarget: 1 | ||
maxDelayTarget: 120 | ||
numRetries: 30 | ||
numNoDelayRetries: 3 | ||
numMinDelayRetries: 2 | ||
numMaxDelayRetries: 25 | ||
backoffFunction: exponential | ||
maxReceivesPerSecond: 20 | ||
redrivePolicy: | ||
deadLetterQueue: | ||
name: user-signedup-queue-dlq # refers toa queue defined in this file, but not show in this example | ||
``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
HTTP consumer example: missing “consumers” array under sns
Structure must match earlier examples.
- sns:
- - protocol: http
- endpoint:
- url: http://login.my.com/user/new
- filterPolicy:
- reason:
- anything-but: password-reset
- filterPolicyScope: MessageBody
- deliveryPolicy:
- minDelayTarget: 1
- maxDelayTarget: 120
- numRetries: 30
- numNoDelayRetries: 3
- numMinDelayRetries: 2
- numMaxDelayRetries: 25
- backoffFunction: exponential
- maxReceivesPerSecond: 20
- redrivePolicy:
- deadLetterQueue:
- name: user-signedup-queue-dlq
+ sns:
+ consumers:
+ - protocol: http
+ endpoint:
+ url: http://login.my.com/user/new
+ filterPolicy:
+ reason:
+ anything-but: password-reset
+ filterPolicyScope: MessageBody
+ deliveryPolicy:
+ minDelayTarget: 1
+ maxDelayTarget: 120
+ numRetries: 30
+ numNoDelayRetries: 3
+ numMinDelayRetries: 2
+ numMaxDelayRetries: 25
+ backoffFunction: exponential
+ maxReceivesPerSecond: 20
+ redrivePolicy:
+ deadLetterQueue:
+ name: user-signedup-queue-dlq
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
sns: | |
- protocol: http | |
endpoint: | |
url: http://login.my.com/user/new | |
filterPolicy: | |
reason: | |
anything-but: password-reset | |
filterPolicyScope: MessageBody | |
deliveryPolicy: | |
minDelayTarget: 1 | |
maxDelayTarget: 120 | |
numRetries: 30 | |
numNoDelayRetries: 3 | |
numMinDelayRetries: 2 | |
numMaxDelayRetries: 25 | |
backoffFunction: exponential | |
maxReceivesPerSecond: 20 | |
redrivePolicy: | |
deadLetterQueue: | |
name: user-signedup-queue-dlq # refers toa queue defined in this file, but not show in this example | |
``` | |
sns: | |
consumers: | |
- protocol: http | |
endpoint: | |
url: http://login.my.com/user/new | |
filterPolicy: | |
reason: | |
anything-but: password-reset | |
filterPolicyScope: MessageBody | |
deliveryPolicy: | |
minDelayTarget: 1 | |
maxDelayTarget: 120 | |
numRetries: 30 | |
numNoDelayRetries: 3 | |
numMinDelayRetries: 2 | |
numMaxDelayRetries: 25 | |
backoffFunction: exponential | |
maxReceivesPerSecond: 20 | |
redrivePolicy: | |
deadLetterQueue: | |
name: user-signedup-queue-dlq |
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/2.x.x.md around lines 281 to 301, the SNS
HTTP consumer example is missing the required top-level "consumers" array
wrapper; update the YAML snippet so the sns entry is nested under a "consumers:"
array (matching the structure used in earlier examples), preserving the existing
sns object and its keys (protocol, endpoint, filterPolicy, filterPolicyScope,
deliveryPolicy, redrivePolicy) and adjusting indentation accordingly so the
snippet validates and follows the documented schema.
--- | ||
title: '3.0.0' | ||
weight: 26 | ||
--- | ||
|
||
# SNS Bindings | ||
|
||
This document defines how to describe SNS-specific information on AsyncAPI. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
File/page naming mismatch: SNS content under a generic “3.0.0”.
This page is SNS-specific but titled/named “3.0.0”. Either:
- Rename to sns.md (or sns-3.0.0.md) with title “sns”, or
- Make 3.0.0.md an index for all bindings and move SNS to a dedicated page.
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/3.0.0.md around lines 1 to 8, the file name
and title indicate a generic "3.0.0" page while the content is SNS-specific;
either rename the file to a descriptive SNS name (e.g., sns.md or sns-3.0.0.md)
and update the title to "SNS" (and adjust any links/TOC references), or convert
3.0.0.md into an index page aggregating multiple binding pages and move the SNS
content into a new dedicated SNS file, ensuring navigation and cross-references
are updated accordingly.
We represent SNS producers via a **subscribe** Operation Object. In simple cases this may not require configuration, and can be shown as an empty SNS Binding Object i.e. {} if you need to explicitly indicate how a producer publishes to the channel. | ||
|
||
SNS consumers need an SNS Subscription that defines how they consume from SNS i.e. the protocol that they use, and any filters applied. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Use AsyncAPI v3 “send/receive” terminology.
“subscribe Operation Object” is v2 wording. Replace with “send Operation Object”.
-We represent SNS producers via a **subscribe** Operation Object.
+We represent SNS producers via a **send** Operation Object.
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
We represent SNS producers via a **subscribe** Operation Object. In simple cases this may not require configuration, and can be shown as an empty SNS Binding Object i.e. {} if you need to explicitly indicate how a producer publishes to the channel. | |
SNS consumers need an SNS Subscription that defines how they consume from SNS i.e. the protocol that they use, and any filters applied. | |
We represent SNS producers via a **send** Operation Object. In simple cases this may not require configuration, and can be shown as an empty SNS Binding Object i.e. {} if you need to explicitly indicate how a producer publishes to the channel. | |
SNS consumers need an SNS Subscription that defines how they consume from SNS i.e. the protocol that they use, and any filters applied. |
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/3.0.0.md around lines 98 to 101, the text
uses AsyncAPI v2 terminology ("subscribe Operation Object"); update wording to
AsyncAPI v3 terminology by replacing "subscribe Operation Object" with "send
Operation Object" (and adjust surrounding phrasing if needed to read "We
represent SNS producers via a send Operation Object" and ensure consistency
where producers/publishing are described).
We provide an Identifer Object to support providing the identifier of an externally defined endpoint for this SNS *publication* to target, or an endpoint on another binding against this Operation Object (via the name field). | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix typo: “Identifer” → “Identifier”.
Also improve sentence clarity.
-We provide an Identifer Object to support providing the identifier of an externally defined endpoint for this SNS *publication* to target, or an endpoint on another binding against this Operation Object (via the name field).
+We provide an Identifier Object to support specifying the identifier of an externally defined endpoint for this SNS publication to target, or an endpoint on another binding on this Operation Object (via the name field).
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
We provide an Identifer Object to support providing the identifier of an externally defined endpoint for this SNS *publication* to target, or an endpoint on another binding against this Operation Object (via the name field). | |
We provide an Identifier Object to support specifying the identifier of an externally defined endpoint for this SNS publication to target, or an endpoint on another binding on this Operation Object (via the name field). |
🧰 Tools
🪛 LanguageTool
[grammar] ~152-~152: Ensure spelling is correct
Context: ...erring, not including. | We provide an Identifer Object to support providing the identif...
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/3.0.0.md around lines 152 to 153, fix the
typo "Identifer" to "Identifier" and rephrase the sentence for clarity; change
it to something like: "We provide an Identifier Object to specify the identifier
of an externally defined endpoint that this SNS publication should target, or
the name of an endpoint on another binding for this Operation Object." Ensure
correct spelling and clearer structure while keeping meaning intact.
$ref: '#/channels/address' | ||
messages: | ||
- $ref: '#/channels/address/messages/personEvent' | ||
bindings: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Broken channel $ref in example
Channel “address” doesn’t exist; use “person”.
- channel:
- $ref: '#/channels/address'
+ channel:
+ $ref: '#/channels/person'
- messages:
- - $ref: '#/channels/address/messages/personEvent'
+ messages:
+ - $ref: '#/channels/person/messages/personEvent'
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
$ref: '#/channels/address' | |
messages: | |
- $ref: '#/channels/address/messages/personEvent' | |
bindings: | |
channel: | |
$ref: '#/channels/person' | |
messages: | |
- $ref: '#/channels/person/messages/personEvent' | |
bindings: |
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/solace.md around lines 103 to 106 the
channel $ref points to '#/channels/address' which does not exist; update the
channel reference to the correct existing channel (use '#/channels/person') and
ensure related message refs match that channel (e.g., messages ref remains
'#/channels/person/messages/personEvent') so the example uses the valid "person"
channel.
| <a name="channelBindingPolicyStatementObjectAction"></a>`action` | string or array of string |**Required.** The SNS permission being allowed or denied e.g. sns:Publish| | ||
| <a name="channelBindingPolicyStatementObjectAction"></a>`resource` | string or array of string |**Optional.** The resource(s) that this policy applies to| |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
SQS permissions, not SNS
Use SQS action names in example text.
-| <a name="channelBindingPolicyStatementObjectAction"></a>`action` | string or array of string |**Required.** The SNS permission being allowed or denied e.g. sns:Publish|
+| <a name="channelBindingPolicyStatementObjectAction"></a>`action` | string or array of string |**Required.** The SQS permission being allowed or denied, e.g., `sqs:SendMessage`.|
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| <a name="channelBindingPolicyStatementObjectAction"></a>`action` | string or array of string |**Required.** The SNS permission being allowed or denied e.g. sns:Publish| | |
| <a name="channelBindingPolicyStatementObjectAction"></a>`resource` | string or array of string |**Optional.** The resource(s) that this policy applies to| | |
| <a name="channelBindingPolicyStatementObjectAction"></a>`action` | string or array of string |**Required.** The SQS permission being allowed or denied, e.g., `sqs:SendMessage`.| | |
| <a name="channelBindingPolicyStatementObjectAction"></a>`resource` | string or array of string |**Optional.** The resource(s) that this policy applies to| |
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/sqs.md around lines 88 to 89, the example
text incorrectly references SNS permissions; update the wording to reference SQS
permissions and replace the example action (e.g., sns:Publish) with an
appropriate SQS action name (e.g., sqs:SendMessage or another relevant SQS
action), ensuring the text clearly states SQS actions and keeps the
required/optional annotations intact.
binding : | ||
sns: {} # Indicates that the channel is an SNS Topic | ||
subscribe: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
YAML: bindings key typo
Use bindings
, not binding
.
- binding :
+ bindings:
sns: {} # Indicates that the channel is an SNS Topic
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
binding : | |
sns: {} # Indicates that the channel is an SNS Topic | |
subscribe: | |
bindings: | |
sns: {} # Indicates that the channel is an SNS Topic | |
subscribe: |
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/sqs.md around lines 189 to 191, the YAML
example uses the incorrect key "binding" instead of "bindings"; update the YAML
to use "bindings" (e.g., change "binding :" to "bindings :") so the example
matches the correct schema and other examples, and ensure indentation and
surrounding text remain consistent.
consumers: | ||
- protocol: sqs | ||
endpoint: | ||
name: user-signedup-queue | ||
rawMessageDelivery: true | ||
filterPolicy: | ||
attributes: | ||
reason: | ||
anything-but: password-reset | ||
redrivePolicy: | ||
deadLetterQueue: | ||
name: user-signedup-queue-dlq | ||
sqs: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Indentation errors in consumer example
Nest name
under endpoint
and name
under deadLetterQueue
.
sns:
consumers:
- protocol: sqs
endpoint:
- name: user-signedup-queue
+ name: user-signedup-queue
rawMessageDelivery: true
filterPolicy:
attributes:
reason:
anything-but: password-reset
redrivePolicy:
deadLetterQueue:
- name: user-signedup-queue-dlq
+ name: user-signedup-queue-dlq
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
consumers: | |
- protocol: sqs | |
endpoint: | |
name: user-signedup-queue | |
rawMessageDelivery: true | |
filterPolicy: | |
attributes: | |
reason: | |
anything-but: password-reset | |
redrivePolicy: | |
deadLetterQueue: | |
name: user-signedup-queue-dlq | |
sqs: | |
consumers: | |
- protocol: sqs | |
endpoint: | |
name: user-signedup-queue | |
rawMessageDelivery: true | |
filterPolicy: | |
attributes: | |
reason: | |
anything-but: password-reset | |
redrivePolicy: | |
deadLetterQueue: | |
name: user-signedup-queue-dlq | |
sqs: |
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/sqs.md around lines 215 to 227, the example
has incorrect indentation: the consumer's name is not nested under endpoint and
the deadLetterQueue's name is not nested under deadLetterQueue. Fix by moving
the name key under endpoint (indent one level deeper) and moving the name key
under deadLetterQueue (indent one level deeper) so both are children of their
respective parent mappings, preserving YAML indentation consistency for the
consumer and redrivePolicy blocks.
<a name="operationBindingObjectQuery"></a>`query` | [Schema Object][schemaObject] \| [Reference Object](referenceObject) | A Schema object containing the definitions for each query parameter. This schema MUST be of type `object` and have a `properties` key. | ||
<a name="operationBindingObjectHeaders"></a>`headers` | [Schema Object][schemaObject] \| [Reference Object](referenceObject) | 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. | ||
<a name="operationBindingObjectBindingVersion"></a>`bindingVersion` | string | The version of this binding. If omitted, "latest" MUST be assumed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reference-style link fix and unused definition
Use [referenceObject]
reference, not (referenceObject)
. This also resolves MD053.
-`query` | [Schema Object][schemaObject] \| [Reference Object](referenceObject) | A Schema object containing the definitions for each query parameter. This schema MUST be of type `object` and have a `properties` key.
-`headers` | [Schema Object][schemaObject] \| [Reference Object](referenceObject) | 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.
+`query` | [Schema Object][schemaObject] \| [Reference Object][referenceObject] | A Schema object containing the definitions for each query parameter. This schema MUST be of type `object` and have a `properties` key.
+`headers` | [Schema Object][schemaObject] \| [Reference Object][referenceObject] | 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.
Also applies to: 57-58
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/websockets.md around lines 37-39 (and also
57-58), replace the inline parenthesized reference "(referenceObject)" with the
reference-style link "[referenceObject]" so the references use the same bracket
notation as [schemaObject]; also remove or update any unused standalone
"(referenceObject)" definition so the named reference is defined and used
consistently to resolve MD053.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 13
♻️ Duplicate comments (24)
markdown/docs/reference/bindings/kafka.md (2)
25-29
: Fix table column count forbindingVersion
row.The
bindingVersion
row only has four cells while the header defines five, so the table renders incorrectly. Add the missing Constraints cell.-<a name="serverBindingObjectBindingVersion"></a>`bindingVersion` | string | The version of this binding. | OPTIONAL [`latest`] +<a name="serverBindingObjectBindingVersion"></a>`bindingVersion` | string | The version of this binding. | OPTIONAL [`latest`] | -
91-91
: Rename anchor to reflect milliseconds.Anchor
topicConfigurationDeleteRetentionBytes
says “Bytes” but the field isdelete.retention.ms
(milliseconds). Rename to keep links accurate.-<a name="topicConfigurationDeleteRetentionBytes"></a>`delete.retention.ms` | long | ... +<a name="topicConfigurationDeleteRetentionMs"></a>`delete.retention.ms` | long | ...markdown/docs/reference/bindings/ibmmq.md (2)
39-102
: Remove stray “>” characters from anchor names.The extra
>
inside eachname
attribute breaks the in-page links; please strip them so the anchors resolve correctly.-<a name="uriObjectAuthority>"></a> +<a name="uriObjectAuthority"></a> -<a name="uriObjectQueueManager>"></a> +<a name="uriObjectQueueManager"></a> -<a name="uriObjectChannelName>"></a> +<a name="uriObjectChannelName"></a> -<a name="serverObjectGroupId>"></a> +<a name="serverObjectGroupId"></a>
44-44
: Correct the RFC number (should be 3986).Both mentions need to reference RFC 3986 to match the linked URI standard.
-URI `query` or `fragment` components MUST NOT be used within the `ibmmq://` scheme. Path components that contain characters reserved by RFC2936 such as `/` MUST be percent encoded as defined in [Section 2.2 of RFC2936](https://tools.ietf.org/html/rfc3986#section-2.2). +URI `query` or `fragment` components MUST NOT be used within the `ibmmq://` scheme. Path components that contain characters reserved by RFC3986 such as `/` MUST be percent encoded as defined in [Section 2.2 of RFC3986](https://tools.ietf.org/html/rfc3986#section-2.2).markdown/docs/reference/bindings/http.md (1)
37-80
: Use the reference-style link for “Reference Object”.The doc defines
[referenceObject]
at the bottom, so the inline link syntax here should be switched to the reference form.-`query` | [Schema Object][schemaObject] \| [Reference Object](referenceObject) | A Schema object containing the definitions for each query parameter. This schema MUST be of type `object` and have a `properties` key. +`query` | [Schema Object][schemaObject] \| [Reference Object][referenceObject] | A Schema object containing the definitions for each query parameter. This schema MUST be of type `object` and have a `properties` key. @@ -`headers` | [Schema Object][schemaObject] \| [Reference Object](referenceObject) | A Schema object containing the definitions for HTTP-specific headers. This schema MUST be of type `object` and have a `properties` key. +`headers` | [Schema Object][schemaObject] \| [Reference Object][referenceObject] | A Schema object containing the definitions for HTTP-specific headers. This schema MUST be of type `object` and have a `properties` key.markdown/docs/reference/bindings/jms.md (2)
33-38
: Remove stray period in version listThe code span shows
3.1.
—drop the trailing dot so the listed protocol versions are valid (3.1
).-... `1.0.2b`, `1.1`, `2.0`, `2.0a`, `2.1`, or `3.0`, `3.1.` +... `1.0.2b`, `1.1`, `2.0`, `2.0a`, `2.1`, or `3.0`, `3.1`
132-148
: Headers schema example is mis-indented
properties
currently sits besideheaders
, so the YAML no longer forms a valid Schema Object. Nestrequired
andproperties
underheaders
.jms: headers: # JMS protocol specific message headers required: - JMSMessageID - properties: - JMSMessageID: - name: JMSMessageID - description: A unique message identifier. This may be set by your JMS Provider on your behalf. - type: string - JMSReplyTo: - name: JMSReplyTo - description: The queue or topic that the message sender expects replies to. - type: string + properties: + JMSMessageID: + name: JMSMessageID + description: A unique message identifier. This may be set by your JMS Provider on your behalf. + type: string + JMSReplyTo: + name: JMSReplyTo + description: The queue or topic that the message sender expects replies to. + type: stringmarkdown/docs/reference/bindings/anypointmq.md (5)
51-51
: Broken JSON Schema link
[JSON Schema](json_schemas/channel.json)
404s—this repo doesn’t ship that relative path. Link to the canonical schema in the bindings repo instead (e.g.https://github.com/asyncapi/bindings/blob/master/anypointmq/2.2.0/channel.json
).-The Anypoint MQ [Channel Binding Object](https://github.com/asyncapi/spec/blob/master/spec/asyncapi.md#channel-bindings-object) is defined by a [JSON Schema](json_schemas/channel.json), which defines these fields: +The Anypoint MQ [Channel Binding Object](https://github.com/asyncapi/spec/blob/master/spec/asyncapi.md#channel-bindings-object) is defined by a [JSON Schema](https://github.com/asyncapi/bindings/blob/master/anypointmq/2.2.0/channel.json), which defines these fields:
163-177
:servers[].security
must list Security Requirement ObjectsIn AsyncAPI 3,
servers.<name>.security
expects objects like{ oauthDev: [] }
, not$ref
entries. Please swap both$ref
usages for requirement objects.security: - - $ref: '#/components/securitySchemes/oauthDev' + - oauthDev: [] @@ security: - - $ref: '#/components/securitySchemes/oauthProd' + - oauthProd: []
111-142
: Second channels example still duplicatesuserSignup
The next YAML block also repeats
channels.userSignup
. Use a distinct key (e.g.userSignedUp
) so the example remains valid.channels: userSignup: address: 'user/signup' messages: #... - userSignup: - address: 'user/signup' + userSignedUp: + address: 'user/signup'
35-38
: Server host guidance conflicts with AsyncAPI v3 rules
host
examples still include thehttps://
scheme and reuse the same anchor ID twice. Host must be hostname (no scheme/path). Please update examples, give host/path anchors unique names, and adjust the prose (“omitted from the base path” instead of “url”).-<a name="serverObjectUrlFieldValueAnypointMQ"></a>`host` | e.g., `https://mq-us-east-1.anypoint.mulesoft.com` | **REQUIRED**. MUST be the endpoint HOST part of the URL of the Anypoint MQ Broker REST API. Valid examples are `https://mq-us-east-1.anypoint.mulesoft.com` and `https://mq-eu-central-1.eu1.anypoint.mulesoft.com` (and _not_ `https://.../api`, or `https://.../api/v1`). -<a name="serverObjectUrlFieldValueAnypointMQ"></a>`pathname` | e.g., `/api` | **REQUIRED**. MUST be the endpoint path part of the URL of the Anypoint MQ Broker REST API _excluding_ the final major version indicator (e.g., `v1`). Valid examples are `/api` and (and _not_ `https://.../api/v1`). -<a name="serverObjectProtocolVersionFieldValueAnypointMQ"></a>`protocolVersion` | e.g., `v1` | **OPTIONAL**, defaults to `v1`. If present MUST be the major version indicator of the Anypoint MQ Broker REST API omitted from the `url`, e.g. `v1`. +<a name="serverObjectHostFieldValueAnypointMQ"></a>`host` | e.g., `mq-us-east-1.anypoint.mulesoft.com` | **REQUIRED**. MUST be the host (no scheme, no path) of the Anypoint MQ Broker REST API endpoint. Valid examples: `mq-us-east-1.anypoint.mulesoft.com`, `mq-eu-central-1.eu1.anypoint.mulesoft.com` (not `https://...`, not `.../api`). +<a name="serverObjectPathnameFieldValueAnypointMQ"></a>`pathname` | e.g., `/api` | **REQUIRED**. MUST be the base path of the Anypoint MQ Broker REST API, excluding the final major version (e.g., `v1`). Valid examples: `/api` (not `https://.../api/v1`). +<a name="serverObjectProtocolVersionFieldValueAnypointMQ"></a>`protocolVersion` | e.g., `v1` | **OPTIONAL**, defaults to `v1`. If present, MUST be the major version of the Anypoint MQ Broker REST API omitted from the base path, e.g. `v1`.
63-87
: YAML example has duplicate channel key and typoThe snippet defines
channels.userSignup
twice (invalid YAML) and saysanyointmq
. Please rename the second channel key (e.g.userSignupEvents
) and fix the typo so the example parses.-The following example shows two channels where does not apply any bindings and the second one applying `anyointmq` bindings. +The following example shows two channels: the first without bindings and the second applying `anypointmq` bindings. @@ - userSignup: + userSignupEvents: address: 'user/signup' @@ - bindings: - anyointmq: + bindings: + anypointmq:markdown/docs/reference/bindings/3.0.0.md (4)
152-153
: Fix typo and wording (“Identifier”)“Identifer” is misspelled and the sentence is clunky. Update to “Identifier Object … on this Operation Object” for clarity.
-We provide an Identifer Object to support providing the identifier of an externally defined endpoint for this SNS *publication* to target, or an endpoint on another binding against this Operation Object (via the name field). +We provide an Identifier Object to specify the identifier of an externally defined endpoint for this SNS publication to target, or an endpoint on another binding on this Operation Object (via the name field).
304-323
: Consumer array belongs undersns.consumers
The HTTP consumer example places the array directly under
sns
. It must be nested under aconsumers:
key per the schema.bindings: sns: - - protocol: http - endpoint: - url: http://login.my.com/user/new + consumers: + - protocol: http + endpoint: + url: http://login.my.com/user/new
170-189
: Property name must bebindings
, notbinding
AsyncAPI uses the plural
bindings
. Both channel and operation snippets here showbinding
. Please rename each occurrence (binding:
→bindings:
).description: A user has signed up for our service - binding : + bindings: sns: {} # Indicates that the channel is an SNS Topic @@ action: send - binding: + bindings: sns:
98-102
: Use AsyncAPI v3 “send/receive” terminologyLine 98 still says “subscribe Operation Object”. Replace it with “send Operation Object” to match v3 wording.
-We represent SNS producers via a **subscribe** Operation Object. +We represent SNS producers via a **send** Operation Object.markdown/docs/reference/bindings/googlepubsub.md (1)
162-165
: Proto3 example must not userequired
required
is invalid in proto3 syntax, so this sample won’t compile. Drop the keyword and keep the field asstring message = 1;
.message Message { - required string message = 1; + string message = 1; }markdown/docs/reference/bindings/solace.md (1)
100-119
: Example references nonexistent channelThe example still points to
#/channels/address
, but only#/channels/person
exists below. Update the$ref
s (both channel and message) to useperson
.channel: - $ref: '#/channels/address' + $ref: '#/channels/person' messages: - - $ref: '#/channels/address/messages/personEvent' + - $ref: '#/channels/person/messages/personEvent'markdown/docs/reference/bindings/websockets.md (1)
37-38
: Reference link style still offReplace
(referenceObject)
with[referenceObject]
so the Schema/Reference links resolve and MD053 clears.markdown/docs/reference/bindings/sqs.md (3)
88-88
: Use SQS terminologyThe description still says “SNS permission… e.g. sns:Publish”. For an SQS binding it should read “SQS permission… e.g.
sqs:SendMessage
”.
190-190
: YAML key typo persistsExamples still use
binding :
—must bebindings:
to match the spec and previous feedback.
216-226
: Fix consumer indentation and nesting
name
fields need to sit underendpoint
/deadLetterQueue
, and the SNS binding requires aconsumers:
array as shown earlier; please realign the YAML structure.markdown/docs/reference/bindings/2.x.x.md (2)
173-173
: YAML key typo remainsThe example still shows
binding :
; per spec it must bebindings:
. Please fix across the doc.
282-301
: Wrap SNS consumers in theconsumers
arrayThe HTTP example still omits the
consumers:
array wrapper, so the YAML doesn’t match the documented schema. Restoreconsumers:
with the HTTP entry nested beneath it.
🧹 Nitpick comments (4)
markdown/docs/reference/bindings/mqtt5.md (1)
25-35
: Fix heading levels under Server section
##### Fixed Fields
/##### Example
should be H3s to keep heading increments by one (resolves MD001).-##### Fixed Fields +### Fixed Fields @@ -##### Example +### Examplemarkdown/docs/reference/bindings/amqp.md (3)
32-54
: Use H3 headings to keep hierarchy validThe
##### Fixed Fields
/##### Example
headings jump two levels. Promote them to###
to satisfy MD001.-##### Fixed Fields +### Fixed Fields @@ -##### Example +### Example
93-130
: Repeat the H5→H3 fix in Operation sectionSame issue in the Operation Binding section—please change
##### Fixed Fields
/##### Example
to### …
.-##### Fixed Fields +### Fixed Fields @@ -##### Example +### Example
138-159
: And again for Message sectionMessage Binding’s headings also need the H5→H3 adjustment to keep structure consistent.
-##### Fixed Fields +### Fixed Fields
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (3)
public/img/docs/SNS-HTTP.png
is excluded by!**/*.png
public/img/docs/SNS-SQS-Pub-Sub.png
is excluded by!**/*.png
public/img/docs/SQS-Point-To-Point.png
is excluded by!**/*.png
📒 Files selected for processing (23)
config/edit-page-config.json
(1 hunks)markdown/docs/reference/bindings/2.x.x.md
(1 hunks)markdown/docs/reference/bindings/3.0.0.md
(1 hunks)markdown/docs/reference/bindings/_section.md
(1 hunks)markdown/docs/reference/bindings/amqp.md
(1 hunks)markdown/docs/reference/bindings/amqp1.md
(1 hunks)markdown/docs/reference/bindings/anypointmq.md
(1 hunks)markdown/docs/reference/bindings/googlepubsub.md
(1 hunks)markdown/docs/reference/bindings/http.md
(1 hunks)markdown/docs/reference/bindings/ibmmq.md
(1 hunks)markdown/docs/reference/bindings/jms.md
(1 hunks)markdown/docs/reference/bindings/kafka.md
(1 hunks)markdown/docs/reference/bindings/mercure.md
(1 hunks)markdown/docs/reference/bindings/mqtt.md
(1 hunks)markdown/docs/reference/bindings/mqtt5.md
(1 hunks)markdown/docs/reference/bindings/nats.md
(1 hunks)markdown/docs/reference/bindings/pulsar.md
(1 hunks)markdown/docs/reference/bindings/redis.md
(1 hunks)markdown/docs/reference/bindings/scripts.md
(1 hunks)markdown/docs/reference/bindings/solace.md
(1 hunks)markdown/docs/reference/bindings/sqs.md
(1 hunks)markdown/docs/reference/bindings/stomp.md
(1 hunks)markdown/docs/reference/bindings/websockets.md
(1 hunks)
🧰 Additional context used
🪛 LanguageTool
markdown/docs/reference/bindings/ibmmq.md
[grammar] ~8-~8: Use a hyphen to join words.
Context: ... document defines how to describe IBM MQ specific information with AsyncAPI. <a ...
(QB_NEW_EN_HYPHEN)
[grammar] ~37-~37: There might be a mistake here.
Context: ...eference | Applicability | Description | ---|:---|:--|:-- <a name="uriObjectSchem...
(QB_NEW_EN)
[grammar] ~38-~38: There might be a mistake here.
Context: ...ability | Description | ---|:---|:--|:-- scheme
|...
(QB_NEW_EN)
[grammar] ~39-~39: There might be a mistake here.
Context: ...e used to represent an IBM MQ endpoint. `autho...
(QB_NEW_EN)
[grammar] ~63-~63: There might be a mistake here.
Context: ... protocol: ibmmq ``` ##### Example of single MQ server defined using ibmmq ur...
(QB_NEW_EN)
[grammar] ~99-~99: There might be a mistake here.
Context: ...qor URI Scheme
file://or
http://` <a name="serverObjectMultiEndpointServer...
(QB_NEW_EN)
[grammar] ~168-~168: There might be a mistake here.
Context: ...gth. MAY coexist with topic.objectName
<a name="channelBindingObjectTopicObject...
(QB_NEW_EN)
[grammar] ~171-~171: There might be a mistake here.
Context: ... subscriptions. | OPTIONAL [false
] | - <a name="channelBindingObjectMaxMsgLengt...
(QB_NEW_EN)
[style] ~172-~172: This wording could be more concise.
Context: ...ic or Queue. Messages produced that are greater in size than this value may fail to be delivere...
(ADJECTIVE_IN_ATTRIBUTE)
[grammar] ~172-~172: There might be a mistake here.
Context: ...MUST be 0-104,857,600
bytes (100 MB). <a name="channelBindingObjectBindingVers...
(QB_NEW_EN)
[grammar] ~178-~178: There might be a mistake here.
Context: ...ove. ##### Example for an IBM MQ Topic where topic string is defined by AsyncAPI cha...
(QB_NEW_EN)
[grammar] ~230-~230: There might be a mistake here.
Context: ... | Applicability [default] | Constraints ---|:---:|---|:---|:--- <a name="message...
(QB_NEW_EN)
[grammar] ~231-~231: There might be a mistake here.
Context: ...t] | Constraints ---|:---:|---|:---|:--- `...
(QB_NEW_EN)
[grammar] ~233-~233: Use a hyphen to join words.
Context: ...n one header can be specified as a comma separated list. Supporting information o...
(QB_NEW_EN_HYPHEN)
[grammar] ~234-~234: There might be a mistake here.
Context: ... message type or format. | OPTIONAL | - </a...
(QB_NEW_EN)
[grammar] ~235-~235: Ensure spelling is correct
Context: ...ts the message. expiry
values are API dependant e.g., MQI and JMS use different units o...
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
[grammar] ~235-~235: There might be a mistake here.
Context: ... (*
unlimited`*) or greater than zero. <a name="messageBindingObjectBindingVers...
(QB_NEW_EN)
[uncategorized] ~242-~242: Did you mean the formatting language “Markdown” (= proper noun)?
Context: ...e binding object MAY include CommonMark markdown formatting. A minimum markdown syntax a...
(MARKDOWN_NNP)
[uncategorized] ~242-~242: Did you mean the formatting language “Markdown” (= proper noun)?
Context: ...mmonMark markdown formatting. A minimum markdown syntax as described by [CommonMark 0.27...
(MARKDOWN_NNP)
markdown/docs/reference/bindings/3.0.0.md
[grammar] ~29-~29: There might be a mistake here.
Context: ... provide properties on the binding that allow creation of a topic in infrastructure-a...
(QB_NEW_EN)
[style] ~29-~29: This phrase is redundant. Consider using “outside”.
Context: ...rties such as SNS Access Control Policy outside of AsyncAPI. SNS supports many optional p...
(OUTSIDE_OF)
[grammar] ~36-~36: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | </a...
(QB_NEW_EN)
[style] ~37-~37: To form a complete sentence, be sure to include a subject.
Context: ... | Required. The name of the topic. Can be different from the channel name to a...
(MISSING_IT_THERE)
[grammar] ~39-~39: There might be a mistake here.
Context: ... The security policy for the SNS Topic | | </a...
(QB_NEW_EN)
[grammar] ~47-~47: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="channelBindingFifoObjectChann...
(QB_NEW_EN)
[style] ~48-~48: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ...uired.** Defines the type of SNS Topic. Can be either standard
or FIFO
. | | <a ...
(MISSING_IT_THERE)
[grammar] ~53-~53: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="channelBindingPolicyObjectPol...
(QB_NEW_EN)
[grammar] ~102-~102: There might be a mistake here.
Context: ... for that receiver. For example, if you send message to an SQS queue from an SNS Top...
(QB_NEW_EN)
[style] ~102-~102: This phrase is redundant. Consider using “outside”.
Context: ...fier could be an ARN of a queue defined outside of the scope of AsyncAPI, but if you wante...
(OUTSIDE_OF)
[grammar] ~108-~108: There might be a mistake here.
Context: ...Name | Type | Applies To | Description | |---|:---:|:---:|---| | <a name="operati...
(QB_NEW_EN)
[grammar] ~109-~109: There might be a mistake here.
Context: ...To | Description | |---|:---:|:---:|---| | ...
(QB_NEW_EN)
[grammar] ~112-~112: There might be a mistake here.
Context: ...y be overridden by a specific consumer.| |<a name="channelBindingObjectBindingVer...
(QB_NEW_EN)
[style] ~121-~121: To form a complete sentence, be sure to include a subject.
Context: ...hat this endpoint receives messages by. Can be http
, https
, email
, `email-jso...
(MISSING_IT_THERE)
[grammar] ~121-~121: There might be a mistake here.
Context: ... application
, lambda
or firehose
| | <a name="operationBindingObjectEndpoin...
(QB_NEW_EN)
[grammar] ~124-~124: There might be a mistake here.
Context: ...geAttributes (default) or MessageBody. | | <a name="operationBindingObjectRawMess...
(QB_NEW_EN)
[grammar] ~125-~125: There might be a mistake here.
Context: ...S attributes are included in the body. | | <a name="operationBindingObjectRedrive...
(QB_NEW_EN)
[grammar] ~127-~127: There might be a mistake here.
Context: .../sns/latest/api/API_CreateTopic.html). | | <a name="channelBindingObjectDisplayNa...
(QB_NEW_EN)
[grammar] ~143-~143: There might be a mistake here.
Context: ...ond, per subscription | #### Identifier |Field Name | Type | Description| |---|:...
(QB_NEW_EN)
[grammar] ~144-~144: There might be a mistake here.
Context: ...tifier |Field Name | Type | Description| |---|:---:|---| |<a name="identifierObje...
(QB_NEW_EN)
[grammar] ~145-~145: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| |url
...
(QB_NEW_EN)
[grammar] ~147-~147: There might be a mistake here.
Context: ...al.** The endpoint is an email address | |`ph...
(QB_NEW_EN)
[grammar] ~149-~149: There might be a mistake here.
Context: ...latest/gr/aws-arns-and-namespaces.html)| |`nam...
(QB_NEW_EN)
[grammar] ~152-~152: Ensure spelling is correct
Context: ...erring, not including. | We provide an Identifer Object to support providing the identif...
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
[grammar] ~157-~157: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="redrivePolicyObjectDeadLetter...
(QB_NEW_EN)
[grammar] ~158-~158: There might be a mistake here.
Context: ... the target SQS of the Redrive Policy. | | <a name="redrivePolicyObjectMaxReceive...
(QB_NEW_EN)
[grammar] ~255-~255: Use a hyphen to join words.
Context: ...e a default delivery policy for any HTTP based consumers ```yaml channels: use...
(QB_NEW_EN_HYPHEN)
markdown/docs/reference/bindings/googlepubsub.md
[grammar] ~8-~8: Use a hyphen to join words.
Context: ...nes how to describe Google Cloud Pub/Sub specific information with AsyncAPI. <a ...
(QB_NEW_EN_HYPHEN)
[grammar] ~20-~20: Use a hyphen to join words.
Context: ...sed to describe the Google Cloud Pub/Sub specific [Topic](https://cloud.google.co...
(QB_NEW_EN_HYPHEN)
[grammar] ~20-~20: There might be a mistake here.
Context: ...scribe the Google Cloud Pub/Sub specific [Topic](https://cloud.google.com/pubsub/...
(QB_NEW_EN)
[grammar] ~23-~23: There might be a mistake here.
Context: ...yncAPI. Field Name | Type | Description ---|---|--- bindingVersion
|String|The ...
(QB_NEW_EN)
[grammar] ~24-~24: There might be a mistake here.
Context: ...ld Name | Type | Description ---|---|--- bindingVersion
|String|The current vers...
(QB_NEW_EN)
[grammar] ~26-~26: There might be a mistake here.
Context: ...d Resources like Cloud Pub/Sub Topics.)_ messageRetentionDuration
|String|Indica...
(QB_NEW_EN)
[grammar] ~27-~27: There might be a mistake here.
Context: ...le.protobuf#google.protobuf.Duration).)_ messageStoragePolicy
|[Message Storage ...
(QB_NEW_EN)
[grammar] ~35-~35: There might be a mistake here.
Context: ...sed to describe the Google Cloud Pub/Sub [MessageStoragePolicy](https://cloud.goo...
(QB_NEW_EN)
[grammar] ~36-~36: There might be a mistake here.
Context: ...v1/projects.topics#MessageStoragePolicy) Object with AsyncAPI. Field Name | Type...
(QB_NEW_EN)
[grammar] ~39-~39: There might be a mistake here.
Context: ...yncAPI. Field Name | Type | Description ---|---|--- allowedPersistenceRegions
|...
(QB_NEW_EN)
[grammar] ~40-~40: There might be a mistake here.
Context: ...ld Name | Type | Description ---|---|--- allowedPersistenceRegions
|String[]|A l...
(QB_NEW_EN)
[grammar] ~47-~47: There might be a mistake here.
Context: ...sed to describe the Google Cloud Pub/Sub [SchemaSettings](https://cloud.google.co...
(QB_NEW_EN)
[grammar] ~48-~48: There might be a mistake here.
Context: ...jects.topics#SchemaSettings) Object with AsyncAPI. Field Name | Type | Descripti...
(QB_NEW_EN)
[grammar] ~51-~51: There might be a mistake here.
Context: ...yncAPI. Field Name | Type | Description ---|---|--- encoding
|String|The encodi...
(QB_NEW_EN)
[grammar] ~52-~52: There might be a mistake here.
Context: ...ld Name | Type | Description ---|---|--- encoding
|String|The encoding of the me...
(QB_NEW_EN)
[grammar] ~53-~53: There might be a mistake here.
Context: ...t/v1/projects.topics#encoding) values.)_ firstRevisionId
|String|The minimum _(i...
(QB_NEW_EN)
[grammar] ~54-~54: There might be a mistake here.
Context: ...revision allowed for validating messages lastRevisionId
|String|The maximum _(in...
(QB_NEW_EN)
[grammar] ~55-~55: There might be a mistake here.
Context: ...revision allowed for validating messages name
|String|The name of the schema tha...
(QB_NEW_EN)
[grammar] ~101-~101: Use a hyphen to join words.
Context: ...sed to describe the Google Cloud Pub/Sub specific [PubsubMessage](https://cloud.g...
(QB_NEW_EN_HYPHEN)
[grammar] ~101-~101: There might be a mistake here.
Context: ...scribe the Google Cloud Pub/Sub specific [PubsubMessage](https://cloud.google.com...
(QB_NEW_EN)
[grammar] ~103-~103: There might be a mistake here.
Context: ...intent parts of the Google Cloud Pub/Sub [Schema](https://cloud.google.com/pubsub...
(QB_NEW_EN)
[grammar] ~104-~104: There might be a mistake here.
Context: ...ference/rest/v1/projects.schemas#Schema) Object, with AsyncAPI. Field Name | Typ...
(QB_NEW_EN)
[grammar] ~107-~107: There might be a mistake here.
Context: ...yncAPI. Field Name | Type | Description ---|---|--- bindingVersion
|String|The ...
(QB_NEW_EN)
[grammar] ~108-~108: There might be a mistake here.
Context: ...ld Name | Type | Description ---|---|--- bindingVersion
|String|The current vers...
(QB_NEW_EN)
[grammar] ~110-~110: There might be a mistake here.
Context: ...o filter messages on the subscription.)_ orderingKey
|String|If non-empty, ident...
(QB_NEW_EN)
[grammar] ~111-~111: There might be a mistake here.
Context: ...loud.google.com/pubsub/docs/ordering).)_ schema
|[Schema Definition Object](#sch...
(QB_NEW_EN)
[grammar] ~120-~120: There might be a mistake here.
Context: ...ncAPI, for consistency it makes sense to provide this information here at all tim...
(QB_NEW_EN)
[grammar] ~121-~121: There might be a mistake here.
Context: ...API does not natively support describing payloads using a supported Google Cloud ...
(QB_NEW_EN)
[grammar] ~124-~124: There might be a mistake here.
Context: ...otobuf. Field Name | Type | Description ---|---|--- name
|String|The name of th...
(QB_NEW_EN)
[grammar] ~125-~125: There might be a mistake here.
Context: ...ld Name | Type | Description ---|---|--- name
|String|The name of the schema <a...
(QB_NEW_EN)
markdown/docs/reference/bindings/solace.md
[grammar] ~20-~20: There might be a mistake here.
Context: ... | |------------------|--------|-----------...
(QB_NEW_EN)
[grammar] ~21-~21: There might be a mistake here.
Context: ...---------------------------------------| | bindingVersion
| String | The curren...
(QB_NEW_EN)
[grammar] ~22-~22: There might be a mistake here.
Context: ... | | msgVpn
| String | The Virtua...
(QB_NEW_EN)
markdown/docs/reference/bindings/amqp.md
[grammar] ~34-~34: There might be a mistake here.
Context: ... Fields Field Name | Type | Description ---|:---:|--- <a name="channelBindingObj...
(QB_NEW_EN)
[grammar] ~35-~35: There might be a mistake here.
Context: ... Name | Type | Description ---|:---:|--- `is...
(QB_NEW_EN)
[style] ~36-~36: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ...g | Defines what type of channel is it. Can be either queue
or routingKey
(defa...
(MISSING_IT_THERE)
[style] ~39-~39: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ...e| string | The type of the exchange. Can be either
topic,
direct,
fanout`, ...
(MISSING_IT_THERE)
[grammar] ~39-~39: There might be a mistake here.
Context: ...rect,
fanout,
defaultor
headers`. <a name="channelBindingObjectExchangeDur...
(QB_NEW_EN)
[grammar] ~103-~103: There might be a mistake here.
Context: ...umers will not receive this information. <a name="operationBindingObjectTimestamp...
(QB_NEW_EN)
markdown/docs/reference/bindings/scripts.md
[uncategorized] ~6-~6: The official name of this software platform is spelled with a capital “H”.
Context: ...ts` directory is centrally managed in .github ...
(GITHUB)
[grammar] ~6-~6: There might be a mistake here.
Context: ...y changes in this folder should be done in central repository.
(QB_NEW_EN)
markdown/docs/reference/bindings/pulsar.md
[grammar] ~6-~6: There might be a mistake here.
Context: ...ulsar' weight: 23 --- # Pulsar Bindings This document defines how to describe Ap...
(QB_NEW_EN)
[grammar] ~7-~7: Use a hyphen to join words.
Context: ...nt defines how to describe Apache Pulsar specific information with AsyncAPI. <a ...
(QB_NEW_EN_HYPHEN)
[grammar] ~39-~39: There might be a mistake here.
Context: ..."channel"> ## Channel Binding Object This object contains information about t...
(QB_NEW_EN)
[grammar] ~44-~44: There might be a mistake here.
Context: ...Required | Description | Default value | ---|:---:|:---:|:---|:---| namespace
|...
(QB_NEW_EN)
[grammar] ~45-~45: There might be a mistake here.
Context: ...fault value | ---|:---:|:---:|:---|:---| namespace
| String | Yes | The namesp...
(QB_NEW_EN)
[grammar] ~50-~50: There might be a mistake here.
Context: ... | No | Topic retention policy. | N/A | ttl
| Integer | No | Message time-to-...
(QB_NEW_EN)
[grammar] ~56-~56: There might be a mistake here.
Context: ...ct"> ### Retention Definition Object The Retention Definition Object
is use...
(QB_NEW_EN)
[grammar] ~59-~59: There might be a mistake here.
Context: ...Required | Description | Default value | ---|:---:|:---:|:---|:---| time
|Intege...
(QB_NEW_EN)
[grammar] ~60-~60: There might be a mistake here.
Context: ...fault value | ---|:---:|:---:|:---|:---| time
|Integer| No | Time given in Minut...
(QB_NEW_EN)
markdown/docs/reference/bindings/sqs.md
[style] ~13-~13: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...nd consumers receive from it directly. For publish-subscribe scenarios, use as a *...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[grammar] ~36-~36: There might be a mistake here.
Context: ... the Channel Object in that single file. - The producer and consumer both have an A...
(QB_NEW_EN)
[grammar] ~37-~37: There might be a mistake here.
Context: ...s the SQS Binding on its Channel Object. - The producer and consumer both have an A...
(QB_NEW_EN)
[grammar] ~44-~44: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | </...
(QB_NEW_EN)
[grammar] ~45-~45: There might be a mistake here.
Context: ...ueue that will be used as the channel. | | ...
(QB_NEW_EN)
[grammar] ~53-~53: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | name
|...
(QB_NEW_EN)
[grammar] ~54-~54: There might be a mistake here.
Context: ...tifier should be the one in this field.| | fifoQueue
| ...
(QB_NEW_EN)
[grammar] ~55-~55: There might be a mistake here.
Context: ...| Required. Is this a FIFO queue? | | `dedu...
(QB_NEW_EN)
[grammar] ~56-~56: There might be a mistake here.
Context: ... to high throughput for FIFO queues.** | | `fif...
(QB_NEW_EN)
[grammar] ~58-~58: There might be a mistake here.
Context: ...nge is 0 to 15 minutes. Defaults to 0. | | ...
(QB_NEW_EN)
[grammar] ~59-~59: There might be a mistake here.
Context: ...3200 seconds). Defaults to 30 seconds. | | <a name="queueObjectRecieveMessageWait...
(QB_NEW_EN)
[grammar] ~61-~61: There might be a mistake here.
Context: ...ays). The default is 345,600 (4 days). | | </a...
(QB_NEW_EN)
[grammar] ~63-~63: There might be a mistake here.
Context: ...The security policy for the SQS Queue | | tags
|...
(QB_NEW_EN)
[grammar] ~69-~69: There might be a mistake here.
Context: ...atest/gr/aws-arns-and-namespaces.html) | |`nam...
(QB_NEW_EN)
[grammar] ~74-~74: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="channelBindingPolicyObjectPol...
(QB_NEW_EN)
[grammar] ~79-~79: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="redrivePolicyObjectDeadLetter...
(QB_NEW_EN)
[grammar] ~80-~80: There might be a mistake here.
Context: ...ue to use as a dead letter queue (DLQ) | | <a name="redrivePolicyObjectMaxReceive...
(QB_NEW_EN)
[grammar] ~99-~99: There might be a mistake here.
Context: ...ed Queue as part of the Channel Binding Binding object, we do not require Binding infor...
(QB_NEW_EN)
[grammar] ~99-~99: There might be a mistake here.
Context: ... to denote the Binding on the Operation Object, if you want to indicate the protocol us...
(QB_NEW_EN)
[grammar] ~107-~107: There might be a mistake here.
Context: ...* Operation Binding Object [if required] Consumer: SNS publish Operation Bind...
(QB_NEW_EN)
[grammar] ~118-~118: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | </...
(QB_NEW_EN)
markdown/docs/reference/bindings/mqtt.md
[grammar] ~31-~31: There might be a mistake here.
Context: ...roperties of this object as shown below. <a name="serverBindingObjectLastWillTopi...
(QB_NEW_EN)
[grammar] ~33-~33: There might be a mistake here.
Context: ...ved. Its value MUST be either 0, 1 or 2. <a name="serverBindingObjectLastWillMess...
(QB_NEW_EN)
[grammar] ~37-~37: There might be a mistake here.
Context: ...cted client until this interval expires. <a name="serverBindingObjectMaximumPacke...
(QB_NEW_EN)
[grammar] ~93-~93: There might be a mistake here.
Context: ...delivery), or 2 (Exactly once delivery). <...
(QB_NEW_EN)
[grammar] ~95-~95: There might be a mistake here.
Context: ...inition of the lifetime of the message. <a name="operationBindingObjectBindingVe...
(QB_NEW_EN)
[grammar] ~143-~143: There might be a mistake here.
Context: ...ame | Type | MQTT Versions | Description ---|:---:|:---:|--- <a name="messageBind...
(QB_NEW_EN)
[grammar] ~144-~144: There might be a mistake here.
Context: ...rsions | Description ---|:---:|:---:|--- <a name="messageBindingObjectPayloadForm...
(QB_NEW_EN)
markdown/docs/reference/bindings/2.x.x.md
[grammar] ~29-~29: There might be a mistake here.
Context: ... provide properties on the binding that allow creation of a topic in infrastructure-a...
(QB_NEW_EN)
[style] ~29-~29: This phrase is redundant. Consider using “outside”.
Context: ...rties such as SNS Access Control Policy outside of AsyncAPI. SNS supports many optional p...
(OUTSIDE_OF)
[grammar] ~36-~36: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | </a...
(QB_NEW_EN)
[style] ~37-~37: To form a complete sentence, be sure to include a subject.
Context: ... | Required. The name of the topic. Can be different from the channel name to a...
(MISSING_IT_THERE)
[grammar] ~39-~39: There might be a mistake here.
Context: ... The security policy for the SNS Topic | | </a...
(QB_NEW_EN)
[grammar] ~47-~47: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="channelBindingFifoObjectChann...
(QB_NEW_EN)
[style] ~48-~48: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ...uired.** Defines the type of SNS Topic. Can be either standard
or FIFO
. | | <a ...
(MISSING_IT_THERE)
[grammar] ~53-~53: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="channelBindingPolicyObjectPol...
(QB_NEW_EN)
[grammar] ~102-~102: There might be a mistake here.
Context: ... for that receiver. For example, if you send message to an SQS queue from an SNS Top...
(QB_NEW_EN)
[style] ~102-~102: This phrase is redundant. Consider using “outside”.
Context: ...fier could be an ARN of a queue defined outside of the scope of AsyncAPI, but if you wante...
(OUTSIDE_OF)
[grammar] ~112-~112: There might be a mistake here.
Context: ...y be overridden by a specific consumer.| |<a name="channelBindingObjectBindingVer...
(QB_NEW_EN)
[style] ~121-~121: To form a complete sentence, be sure to include a subject.
Context: ...hat this endpoint receives messages by. Can be http
, https
, email
, `email-jso...
(MISSING_IT_THERE)
[grammar] ~121-~121: There might be a mistake here.
Context: ... application
, lambda
or firehose
| | <a name="operationBindingObjectEndpoin...
(QB_NEW_EN)
[grammar] ~124-~124: There might be a mistake here.
Context: ...geAttributes (default) or MessageBody. | | <a name="operationBindingObjectRawMess...
(QB_NEW_EN)
[grammar] ~125-~125: There might be a mistake here.
Context: ...S attributes are included in the body. | | <a name="operationBindingObjectRedrive...
(QB_NEW_EN)
[grammar] ~127-~127: There might be a mistake here.
Context: .../sns/latest/api/API_CreateTopic.html). | | <a name="channelBindingObjectDisplayNa...
(QB_NEW_EN)
[grammar] ~152-~152: Ensure spelling is correct
Context: ...erring, not including. | We provide an Identifer Object to support providing the identif...
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
[grammar] ~157-~157: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="redrivePolicyObjectDeadLetter...
(QB_NEW_EN)
[grammar] ~158-~158: There might be a mistake here.
Context: ... the target SQS of the Redrive Policy. | | <a name="redrivePolicyObjectMaxReceive...
(QB_NEW_EN)
[grammar] ~240-~240: Use a hyphen to join words.
Context: ...e a default delivery policy for any HTTP based consumers ```yaml channels: use...
(QB_NEW_EN_HYPHEN)
markdown/docs/reference/bindings/jms.md
[style] ~25-~25: Qualifiers like “somewhat” can weaken your message and make your writing sound uncertain. Consider removing it or choosing an alternative to sound more confident.
Context: ...to enable AsyncAPI definitions that are somewhat portable between various JMS Providers....
(SOMEWHAT)
[grammar] ~25-~25: Use a hyphen to join words.
Context: ...ter/ibmmq), etc.) to detail JMS Provider specific configuration. NOTE that f...
(QB_NEW_EN_HYPHEN)
[grammar] ~33-~33: There might be a mistake here.
Context: ... | Values for JMS Protocol | Description ---|:---|:--- <a name="serverObjectProto...
(QB_NEW_EN)
[grammar] ~34-~34: There might be a mistake here.
Context: ...JMS Protocol | Description ---|:---|:--- <a name="serverObjectProtocolFieldValueJ...
(QB_NEW_EN)
[grammar] ~36-~36: There might be a mistake here.
Context: ...g the hostname and port of a JMS Broker. <a name="serverObjectProtocolVersionFiel...
(QB_NEW_EN)
[grammar] ~48-~48: There might be a mistake here.
Context: ...ml) implementation for the JMS Provider. <a name="serverBindingObjectJMSPropertie...
(QB_NEW_EN)
[grammar] ~55-~55: Use a hyphen to join words.
Context: ...server binding object for jms
with JMS specific properties: ```yaml servers: ...
(QB_NEW_EN_HYPHEN)
[grammar] ~80-~80: There might be a mistake here.
Context: ...fields: Field Name | Type | Description ---|:---:|--- <a name="channelBindingObj...
(QB_NEW_EN)
[grammar] ~81-~81: There might be a mistake here.
Context: ... Name | Type | Description ---|:---:|--- <a name="channelBindingObjectDestination...
(QB_NEW_EN)
[grammar] ~83-~83: There might be a mistake here.
Context: ...age ordering) supported by this channel. <a name="channelBindingObjectBindingVers...
(QB_NEW_EN)
[grammar] ~119-~119: There might be a mistake here.
Context: ...fields: Field Name | Type | Description ---|:---:|--- <a name="messageBindingObj...
(QB_NEW_EN)
[grammar] ~120-~120: There might be a mistake here.
Context: ... Name | Type | Description ---|:---:|--- </...
(QB_NEW_EN)
[grammar] ~121-~121: Use a hyphen to join words.
Context: ...bject containing the definitions for JMS specific headers (so-called protocol hea...
(QB_NEW_EN_HYPHEN)
[grammar] ~129-~129: Use a hyphen to join words.
Context: ...a message
object with both application specific headers, and a message binding ...
(QB_NEW_EN_HYPHEN)
[grammar] ~129-~129: Use a hyphen to join words.
Context: ...essage binding object for jms
with JMS specific headers: ```yaml message: me...
(QB_NEW_EN_HYPHEN)
markdown/docs/reference/bindings/kafka.md
[grammar] ~25-~25: There might be a mistake here.
Context: ... | Applicability [default] | Constraints ---|:---:|:---:|:---:|--- `schemaRegistr...
(QB_NEW_EN)
[grammar] ~26-~26: There might be a mistake here.
Context: ... | Constraints ---|:---:|:---:|:---:|--- schemaRegistryUrl
| string (url) | API...
(QB_NEW_EN)
[grammar] ~27-~27: There might be a mistake here.
Context: ...Schema Registry was used) | OPTIONAL | - schemaRegistryVendor
| string | The ve...
(QB_NEW_EN)
[grammar] ~28-~28: There might be a mistake here.
Context: ...maRegistryVendor` | string | The vendor of Schema Registry and Kafka serdes librar...
(QB_NEW_EN)
[grammar] ~54-~54: There might be a mistake here.
Context: ... | OPTIONAL | - <a name="channelBindingObjectPartitions"...
(QB_NEW_EN)
[grammar] ~56-~56: There might be a mistake here.
Context: ... OPTIONAL | MUST be positive <a name="channelBindingObjectTopicConfig...
(QB_NEW_EN)
[grammar] ~57-~57: There might be a mistake here.
Context: ... | OPTIONAL | - <a name="channelBindingObjectBindingVers...
(QB_NEW_EN)
[grammar] ~84-~84: Use a hyphen to join words.
Context: ...jects contains information about the API relevant topic configuration in Kafka. ...
(QB_NEW_EN_HYPHEN)
[grammar] ~88-~88: There might be a mistake here.
Context: ...y only contain delete
and/or compact
...
(QB_NEW_EN)
[grammar] ~92-~92: There might be a mistake here.
Context: ...TIONAL | see kafka documentation <a name="topicConfigurationConfluentKeyS...
(QB_NEW_EN)
[grammar] ~93-~93: Use a hyphen to join words.
Context: ...n for the message key is enabled. Vendor specific config. ...
(QB_NEW_EN_HYPHEN)
[grammar] ~93-~93: There might be a mistake here.
Context: ... | OPTIONAL | - <a name="topicConfigurationConfluentKeyS...
(QB_NEW_EN)
[grammar] ~94-~94: Use a hyphen to join words.
Context: ...kup strategy for the message key. Vendor specific config. ...
(QB_NEW_EN_HYPHEN)
[grammar] ~94-~94: There might be a mistake here.
Context: ...t to the vendor default if not supplied. <a name="topicConfigurationConfluentValu...
(QB_NEW_EN)
[grammar] ~95-~95: Use a hyphen to join words.
Context: ...for the message value is enabled. Vendor specific config. ...
(QB_NEW_EN_HYPHEN)
[grammar] ~95-~95: There might be a mistake here.
Context: ... | OPTIONAL | - <a name="topicConfigurationConfluentValu...
(QB_NEW_EN)
[grammar] ~96-~96: Use a hyphen to join words.
Context: ...p strategy for the message value. Vendor specific config. ...
(QB_NEW_EN_HYPHEN)
[grammar] ~161-~161: There might be a mistake here.
Context: ...ct](referenceObject) way. | OPTIONAL | - <a name="messageBindingObjectSchemaIdLoc...
(QB_NEW_EN)
[grammar] ~162-~162: There might be a mistake here.
Context: ...ming this operation, tells where the id of schema is stored (e.g. header
or `pay...
(QB_NEW_EN)
[grammar] ~163-~163: Use a hyphen to join words.
Context: ...ng` | string | Number of bytes or vendor specific values when schema id is encode...
(QB_NEW_EN_HYPHEN)
[grammar] ~169-~169: Use a hyphen to join words.
Context: ... This example is valid for any Confluent compatible schema registry. Here we desc...
(QB_NEW_EN_HYPHEN)
[grammar] ~169-~169: There might be a mistake here.
Context: ... implementation using the first 4 bytes in payload to store schema identifier. ``...
(QB_NEW_EN)
[grammar] ~169-~169: There might be a mistake here.
Context: ...n using the first 4 bytes in payload to store schema identifier. ```yaml channels: ...
(QB_NEW_EN)
markdown/docs/reference/bindings/anypointmq.md
[grammar] ~33-~33: There might be a mistake here.
Context: ...s for Anypoint MQ Protocol | Description ---|:---|:--- <a name="serverObjectProto...
(QB_NEW_EN)
[grammar] ~34-~34: There might be a mistake here.
Context: ... MQ Protocol | Description ---|:---|:--- <a name="serverObjectProtocolFieldValueA...
(QB_NEW_EN)
[grammar] ~36-~36: There might be a mistake here.
Context: ...soft.com/api, or
https://.../api/v1`). <a name="serverObjectUrlFieldValueAnypoi...
(QB_NEW_EN)
[grammar] ~38-~38: There might be a mistake here.
Context: ...T API omitted from the url
, e.g. v1
. <a name="serverObjectSecurityFieldValueA...
(QB_NEW_EN)
[grammar] ~53-~53: There might be a mistake here.
Context: ...fields: Field Name | Type | Description ---|:---:|--- <a name="channelBindingObj...
(QB_NEW_EN)
[grammar] ~54-~54: There might be a mistake here.
Context: ... Name | Type | Description ---|:---:|--- <a name="channelBindingObjectDestination...
(QB_NEW_EN)
[grammar] ~99-~99: There might be a mistake here.
Context: ...fields: Field Name | Type | Description ---|:---:|--- <a name="messageBindingObj...
(QB_NEW_EN)
[grammar] ~100-~100: There might be a mistake here.
Context: ... Name | Type | Description ---|:---:|--- </...
(QB_NEW_EN)
🪛 markdownlint-cli2 (0.18.1)
markdown/docs/reference/bindings/ibmmq.md
37-37: Table pipe style
Expected: no_leading_or_trailing; Actual: trailing_only; Unexpected trailing pipe
(MD055, table-pipe-style)
40-40: Table pipe style
Expected: no_leading_or_trailing; Actual: trailing_only; Unexpected trailing pipe
(MD055, table-pipe-style)
52-52: Heading levels should only increment by one level at a time
Expected: h4; Actual: h5
(MD001, heading-increment)
74-74: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
92-92: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
158-158: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
228-228: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
244-244: Heading levels should only increment by one level at a time
Expected: h4; Actual: h5
(MD001, heading-increment)
273-273: Heading levels should only increment by one level at a time
Expected: h2; Actual: h5
(MD001, heading-increment)
markdown/docs/reference/bindings/3.0.0.md
46-46: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
52-52: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
57-57: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
132-132: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
144-144: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
165-165: Images should have alternate text (alt text)
(MD045, no-alt-text)
251-251: Images should have alternate text (alt text)
(MD045, no-alt-text)
markdown/docs/reference/bindings/solace.md
43-43: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
52-52: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
54-54: No empty links
(MD042, no-empty-links)
67-67: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
73-73: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
78-78: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
84-84: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
113-113: No empty links
(MD042, no-empty-links)
117-117: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
126-126: Images should have alternate text (alt text)
(MD045, no-alt-text)
155-155: Hard tabs
Column: 1
(MD010, no-hard-tabs)
178-178: Images should have alternate text (alt text)
(MD045, no-alt-text)
183-183: No empty links
(MD042, no-empty-links)
markdown/docs/reference/bindings/nats.md
32-32: Table pipe style
Expected: no_leading_or_trailing; Actual: leading_and_trailing; Unexpected leading pipe
(MD055, table-pipe-style)
32-32: Table pipe style
Expected: no_leading_or_trailing; Actual: leading_and_trailing; Unexpected trailing pipe
(MD055, table-pipe-style)
33-33: Table pipe style
Expected: no_leading_or_trailing; Actual: leading_and_trailing; Unexpected leading pipe
(MD055, table-pipe-style)
33-33: Table pipe style
Expected: no_leading_or_trailing; Actual: leading_and_trailing; Unexpected trailing pipe
(MD055, table-pipe-style)
markdown/docs/reference/bindings/amqp.md
32-32: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
93-93: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
138-138: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
markdown/docs/reference/bindings/pulsar.md
20-20: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
42-42: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
64-64: Heading levels should only increment by one level at a time
Expected: h4; Actual: h5
(MD001, heading-increment)
markdown/docs/reference/bindings/sqs.md
43-43: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
52-52: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
54-54: No empty links
(MD042, no-empty-links)
67-67: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
73-73: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
78-78: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
84-84: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
113-113: No empty links
(MD042, no-empty-links)
117-117: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
126-126: Images should have alternate text (alt text)
(MD045, no-alt-text)
155-155: Hard tabs
Column: 1
(MD010, no-hard-tabs)
178-178: Images should have alternate text (alt text)
(MD045, no-alt-text)
183-183: No empty links
(MD042, no-empty-links)
markdown/docs/reference/bindings/mqtt.md
25-25: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
28-28: Table pipe style
Expected: no_leading_or_trailing; Actual: trailing_only; Unexpected trailing pipe
(MD055, table-pipe-style)
39-39: Table pipe style
Expected: no_leading_or_trailing; Actual: trailing_only; Unexpected trailing pipe
(MD055, table-pipe-style)
89-89: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
141-141: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
145-145: Table pipe style
Expected: no_leading_or_trailing; Actual: trailing_only; Unexpected trailing pipe
(MD055, table-pipe-style)
markdown/docs/reference/bindings/2.x.x.md
46-46: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
52-52: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
57-57: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
132-132: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
144-144: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
165-165: Images should have alternate text (alt text)
(MD045, no-alt-text)
236-236: Images should have alternate text (alt text)
(MD045, no-alt-text)
markdown/docs/reference/bindings/http.md
33-33: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
74-74: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
103-103: Link and image reference definitions should be needed
Unused link or image reference definition: "referenceobject"
(MD053, link-image-reference-definitions)
markdown/docs/reference/bindings/websockets.md
32-32: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
58-58: Link and image reference definitions should be needed
Unused link or image reference definition: "referenceobject"
(MD053, link-image-reference-definitions)
markdown/docs/reference/bindings/kafka.md
23-23: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
29-29: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data
(MD056, table-column-count)
50-50: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
100-100: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
121-121: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
157-157: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
207-207: Link and image reference definitions should be needed
Unused link or image reference definition: "referenceobject"
(MD053, link-image-reference-definitions)
markdown/docs/reference/bindings/mqtt5.md
32-32: Table pipe style
Expected: no_leading_or_trailing; Actual: leading_and_trailing; Unexpected leading pipe
(MD055, table-pipe-style)
32-32: Table pipe style
Expected: no_leading_or_trailing; Actual: leading_and_trailing; Unexpected trailing pipe
(MD055, table-pipe-style)
33-33: Table pipe style
Expected: no_leading_or_trailing; Actual: leading_and_trailing; Unexpected leading pipe
(MD055, table-pipe-style)
33-33: Table pipe style
Expected: no_leading_or_trailing; Actual: leading_and_trailing; Unexpected trailing pipe
(MD055, table-pipe-style)
⏰ Context from checks skipped due to timeout of 180000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
- GitHub Check: Lighthouse CI
- GitHub Check: Test NodeJS PR - windows-latest
- GitHub Check: Test NodeJS PR - macos-13
[<img src="/img/docs/SNS-SQS-Pub-Sub.png" height = "400" width="600"/>](SNS-SQS-Pub-Sub.png) | ||
|
||
We are producing to an SNS channel | ||
|
||
```yaml | ||
channels: | ||
user-signedup: | ||
description: A user has signed up for our service | ||
binding : | ||
sns: {} # Indicates that the channel is an SNS Topic | ||
subscribe: | ||
operationId: sendMessage | ||
description: send messages to the topic | ||
bindings: | ||
sns: | ||
consumers: | ||
- protocol: sqs | ||
endpoint: | ||
name: myQueue | ||
rawMessageDelivery: false | ||
``` | ||
|
||
We are consuming an SNS channel, using an SQS queue. A separate file specifies the producer, and has the SNS Bindings for the channel. For this reason we do not repeat the SNS binding information for the channel here, to avoid duplicated definitions diverging. Instead we just define the **publish** Operation Binding. | ||
|
||
In this version, the SQS queue is defined elsewhere, and we just reference via its ARN. It is worth noting that this couples the specification to the AWS *region* and *account*, which are part of the ARN, and if we moved the queue to a new region or account was this specification would need to be updated to reflect that. | ||
|
||
|
||
```yaml | ||
channels: | ||
user-signedup: | ||
description: A user has signed up for our service | ||
publish: | ||
operationId: receiveMessage | ||
description: receive messages from the topic | ||
bindings: | ||
sns: | ||
consumers: | ||
- protocol: sqs | ||
endpoint: | ||
arn: arn:aws:sqs:us-west-2:123456789012:UserSignedUpQueue | ||
rawMessageDelivery: true | ||
``` | ||
|
||
We are consuming an SNS channel, using an SQS queue. A separate file specifies the producer, and has the SNS Bindings for the channel. For this reason we do not repeat the SNS binding information for the channel here, to avoid duplicated definitions diverging. Instead we just define the **publish** Operation Binding. | ||
|
||
In this version, the SQS queue is defined in this file, and we reference it by name. For brevity that definition is not shown here. See the SQS Binding Object for more. | ||
|
||
```yaml | ||
channels: | ||
user-signedup: | ||
description: A user has signed up for our service | ||
publish: | ||
operationId: receiveMessage | ||
description: receive messages from the topic | ||
bindings: | ||
sns: | ||
consumers: | ||
- protocol: sqs | ||
endpoint: | ||
name: user-signedup-queue # refers to a queue defined in this file, but not shown in this example | ||
rawMessageDelivery: true | ||
filterPolicy: | ||
reason: | ||
anything-but: password-reset | ||
redrivePolicy: | ||
deadLetterQueue: | ||
name: user-signedup-queue-dlq # refers toa queue defined in this file, but not show in this example | ||
``` | ||
|
||
#### SNS to HTTP Pub Sub | ||
|
||
[<img src="/img/docs/SNS-HTTP.png" height = "400" width="600"/>](SNS-HTTP.png) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Provide alt text for diagrams
Image links like [](/img/docs/SNS-SQS-Pub-Sub.png)
lack descriptive text, tripping MD045. Add brief alt text in the brackets to describe each diagram.
🧰 Tools
🪛 markdownlint-cli2 (0.18.1)
165-165: Images should have alternate text (alt text)
(MD045, no-alt-text)
236-236: Images should have alternate text (alt text)
(MD045, no-alt-text)
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/2.x.x.md around lines 165 to 236, the image
links lack alt text which triggers MD045; update the two image link lines to
include brief descriptive alt text in the square brackets (e.g., [SNS to SQS
pub/sub diagram](/img/docs/SNS-SQS-Pub-Sub.png) and [SNS to HTTP pub/sub
diagram](/img/docs/SNS-HTTP.png]) so each diagram has meaningful alt text
describing the content.
--- | ||
title: '3.0.0' | ||
weight: 26 | ||
--- | ||
|
||
# SNS Bindings | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Rename page to reflect SNS content
The file is named/titled “3.0.0” but the entire page documents SNS bindings. Please rename (e.g. sns.md
with title: 'sns'
) or turn this into a 3.0.0 index and move SNS content elsewhere; current naming misleads navigation.
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/3.0.0.md around lines 1 to 7, the file is
titled "3.0.0" but contains SNS bindings documentation; rename the file to
sns.md and update the frontmatter title to 'sns' (or alternatively make this
file an index for 3.0.0 and move the SNS content into a new sns.md), then update
any internal links/navigation references to point to the new filename/title so
the sidebar and navigation reflect the SNS content correctly.
The `Schema Definition Object` is used to describe the Google Cloud Pub/Sub | ||
[Schema]([Schema](https://cloud.google.com/pubsub/docs/reference/rest/v1/projects.schemas#Schema)) Object with AsyncAPI. | ||
While some of this information could be, or is, described using native AsyncAPI, for consistency it makes sense to | ||
provide this information here at all times, especially for cases where AsyncAPI does not natively support describing |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix malformed Schema link markup
The Markdown link has duplicated brackets and renders broken. Replace it with a single well-formed link, e.g. [Schema](https://cloud.google.com/pubsub/docs/reference/rest/v1/projects.schemas#Schema)
.
🧰 Tools
🪛 LanguageTool
[grammar] ~120-~120: There might be a mistake here.
Context: ...ncAPI, for consistency it makes sense to provide this information here at all tim...
(QB_NEW_EN)
[grammar] ~121-~121: There might be a mistake here.
Context: ...API does not natively support describing payloads using a supported Google Cloud ...
(QB_NEW_EN)
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/googlepubsub.md around lines 118 to 121, the
Markdown link for "Schema" is malformed with duplicated brackets; replace the
broken markup with a single well-formed Markdown link such as
[Schema](https://cloud.google.com/pubsub/docs/reference/rest/v1/projects.schemas#Schema)
so the link renders correctly.
##### Fixed Fields | ||
|
||
Field Name | Type | Description | Applicability [default] | Constraints | ||
---|:---:|:---:|:---:|--- | ||
`schemaRegistryUrl` | string (url) | API URL for the Schema Registry used when producing Kafka messages (if a Schema Registry was used) | OPTIONAL | - | ||
`schemaRegistryVendor` | string | The vendor of Schema Registry and Kafka serdes library that should be used (e.g. `apicurio`, `confluent`, `ibm`, or `karapace`) | OPTIONAL | MUST NOT be specified if `schemaRegistryUrl` is not specified | ||
<a name="serverBindingObjectBindingVersion"></a>`bindingVersion` | string | The version of this binding. | OPTIONAL [`latest`] | ||
|
||
##### Example | ||
|
||
```yaml | ||
servers: | ||
production: | ||
bindings: | ||
kafka: | ||
schemaRegistryUrl: 'https://my-schema-registry.com' | ||
schemaRegistryVendor: 'confluent' | ||
bindingVersion: '0.5.0' | ||
``` | ||
|
||
|
||
<a name="channel"></a> | ||
|
||
## Channel Binding Object | ||
|
||
This object contains information about the channel representation in Kafka (eg. a Kafka topic). | ||
|
||
##### Fixed Fields | ||
|
||
Field Name | Type | Description | Applicability [default] | Constraints | ||
---|:------------------------------------------------:|:-------------------------------------------------------------------------------------------------------:|:-----------------------:|--- | ||
<a name="channelBindingObjectTopic"></a>`topic` | string | Kafka topic name if different from channel name. | OPTIONAL | - | ||
<a name="channelBindingObjectPartitions"></a>`partitions` | integer | Number of partitions configured on this topic (useful to know how many parallel consumers you may run). | OPTIONAL | Must be positive | ||
<a name="channelBindingObjectReplicas"></a>`replicas` | integer | Number of replicas configured on this topic. | OPTIONAL | MUST be positive | ||
<a name="channelBindingObjectTopicConfiguration"></a>`topicConfiguration` | [TopicConfiguration Object](#topicConfiguration) | Topic configuration properties that are relevant for the API. | OPTIONAL | - | ||
<a name="channelBindingObjectBindingVersion"></a>`bindingVersion` | string | The version of this binding. If omitted, "latest" MUST be assumed. | OPTIONAL [`latest`] | - | ||
|
||
|
||
This object MUST contain only the properties defined above. | ||
|
||
##### Example | ||
|
||
```yaml | ||
channels: | ||
user-signedup: | ||
bindings: | ||
kafka: | ||
topic: 'my-specific-topic-name' | ||
partitions: 20 | ||
replicas: 3 | ||
topicConfiguration: | ||
cleanup.policy: ["delete", "compact"] | ||
retention.ms: 604800000 | ||
retention.bytes: 1000000000 | ||
delete.retention.ms: 86400000 | ||
max.message.bytes: 1048588 | ||
bindingVersion: '0.5.0' | ||
``` | ||
<a name="topicConfiguration"></a> | ||
## TopicConfiguration Object | ||
|
||
This objects contains information about the API relevant topic configuration in Kafka. | ||
|
||
Field Name | Type | Description | Applicability [default] | Constraints | ||
---|:-------:|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:-----------------------:|--- | ||
<a name="topicConfigurationCleanupPolicy"></a>`cleanup.policy` | array | The [`cleanup.policy`](https://kafka.apache.org/documentation/#topicconfigs_cleanup.policy) configuration option. | OPTIONAL | array may only contain `delete` and/or `compact` | ||
<a name="topicConfigurationRetentionMs"></a>`retention.ms` | long | The [`retention.ms`](https://kafka.apache.org/documentation/#topicconfigs_retention.ms) configuration option. | OPTIONAL | see kafka documentation | ||
<a name="topicConfigurationRetentionBytes"></a>`retention.bytes` | long | The [`retention.bytes`](https://kafka.apache.org/documentation/#topicconfigs_retention.bytes) configuration option. | OPTIONAL | see kafka documentation | ||
<a name="topicConfigurationDeleteRetentionBytes"></a>`delete.retention.ms` | long | The [`delete.retention.ms`](https://kafka.apache.org/documentation/#topicconfigs_delete.retention.ms) configuration option. | OPTIONAL | see kafka documentation | ||
<a name="topicConfigurationMaxMessageBytes"></a>`max.message.bytes` | integer | The [`max.message.bytes`](https://kafka.apache.org/documentation/#topicconfigs_max.message.bytes) configuration option. | OPTIONAL | see kafka documentation | ||
<a name="topicConfigurationConfluentKeySchemaValidation"></a>`confluent.key.schema.validation` | boolean | It shows whether the schema validation for the message key is enabled. Vendor specific config. | OPTIONAL | - | ||
<a name="topicConfigurationConfluentKeySubjectNameStrategy"></a>`confluent.key.subject.name.strategy` | string | The name of the schema lookup strategy for the message key. Vendor specific config. | OPTIONAL | Clients should default to the vendor default if not supplied. | ||
<a name="topicConfigurationConfluentValueSchemaValidation"></a>`confluent.value.schema.validation` | boolean | It shows whether the schema validation for the message value is enabled. Vendor specific config. | OPTIONAL | - | ||
<a name="topicConfigurationConfluentValueSubjectNameStrategy"></a>`confluent.value.subject.name.strategy` | string | The name of the schema lookup strategy for the message value. Vendor specific config. | OPTIONAL | Clients should default to the vendor default if not supplied. | ||
|
||
This object MAY contain the properties defined above including optional additional properties. | ||
|
||
##### Example | ||
|
||
```yaml | ||
topicConfiguration: | ||
cleanup.policy: ["delete", "compact"] | ||
retention.ms: 604800000 | ||
retention.bytes: 1000000000 | ||
delete.retention.ms: 86400000 | ||
max.message.bytes: 1048588 | ||
confluent.key.schema.validation: true | ||
confluent.key.subject.name.strategy: "TopicNameStrategy" | ||
confluent.value.schema.validation: true | ||
confluent.value.subject.name.strategy: "TopicNameStrategy" | ||
``` | ||
|
||
<a name="operation"></a> | ||
|
||
## Operation Binding Object | ||
|
||
This object contains information about the operation representation in Kafka (eg. the way to consume messages) | ||
|
||
##### Fixed Fields | ||
|
||
Field Name | Type | Description | Applicability [default] | Constraints | ||
---|:---:|:---:|:---:|--- | ||
<a name="operationBindingObjectGroupId"></a>`groupId` | [Schema Object][schemaObject] \| [Reference Object](referenceObject) | Id of the consumer group. | OPTIONAL | - | ||
<a name="operationBindingObjectClientId"></a>`clientId` | [Schema Object][schemaObject] \| [Reference Object](referenceObject) | Id of the consumer inside a consumer group. | OPTIONAL | - | ||
<a name="operationBindingObjectBindingVersion"></a>`bindingVersion` | string | The version of this binding. If omitted, "latest" MUST be assumed. | OPTIONAL [`latest`] | - | ||
|
||
This object MUST contain only the properties defined above. | ||
|
||
##### Example | ||
|
||
```yaml | ||
channels: | ||
user-signedup: | ||
operations: | ||
userSignup: | ||
action: receive | ||
bindings: | ||
kafka: | ||
groupId: | ||
type: string | ||
enum: ['myGroupId'] | ||
clientId: | ||
type: string | ||
enum: ['myClientId'] | ||
bindingVersion: '0.5.0' | ||
``` | ||
|
||
|
||
<a name="message"></a> | ||
|
||
## Message Binding Object | ||
|
||
This object contains information about the message representation in Kafka. | ||
|
||
##### Fixed Fields | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix heading levels (avoid h5 jumps from h2).
Each section jumps from an ##
heading straight to #####
, violating MD001 and breaking the document outline. Drop these to ###
(and adjust corresponding subheadings similarly) throughout the file.
-##### Fixed Fields
+### Fixed Fields
@@
-##### Example
+### Example
@@
-##### Fixed Fields
+### Fixed Fields
@@
-##### Example
+### Example
@@
-##### Fixed Fields
+### Fixed Fields
@@
-##### Example
+### Example
@@
-##### Fixed Fields
+### Fixed Fields
@@
-##### Example
+### Example
🧰 Tools
🪛 LanguageTool
[grammar] ~25-~25: There might be a mistake here.
Context: ... | Applicability [default] | Constraints ---|:---:|:---:|:---:|--- `schemaRegistr...
(QB_NEW_EN)
[grammar] ~26-~26: There might be a mistake here.
Context: ... | Constraints ---|:---:|:---:|:---:|--- schemaRegistryUrl
| string (url) | API...
(QB_NEW_EN)
[grammar] ~27-~27: There might be a mistake here.
Context: ...Schema Registry was used) | OPTIONAL | - schemaRegistryVendor
| string | The ve...
(QB_NEW_EN)
[grammar] ~28-~28: There might be a mistake here.
Context: ...maRegistryVendor` | string | The vendor of Schema Registry and Kafka serdes librar...
(QB_NEW_EN)
[grammar] ~54-~54: There might be a mistake here.
Context: ... | OPTIONAL | - <a name="channelBindingObjectPartitions"...
(QB_NEW_EN)
[grammar] ~56-~56: There might be a mistake here.
Context: ... OPTIONAL | MUST be positive <a name="channelBindingObjectTopicConfig...
(QB_NEW_EN)
[grammar] ~57-~57: There might be a mistake here.
Context: ... | OPTIONAL | - <a name="channelBindingObjectBindingVers...
(QB_NEW_EN)
[grammar] ~84-~84: Use a hyphen to join words.
Context: ...jects contains information about the API relevant topic configuration in Kafka. ...
(QB_NEW_EN_HYPHEN)
[grammar] ~88-~88: There might be a mistake here.
Context: ...y only contain delete
and/or compact
...
(QB_NEW_EN)
[grammar] ~92-~92: There might be a mistake here.
Context: ...TIONAL | see kafka documentation <a name="topicConfigurationConfluentKeyS...
(QB_NEW_EN)
[grammar] ~93-~93: Use a hyphen to join words.
Context: ...n for the message key is enabled. Vendor specific config. ...
(QB_NEW_EN_HYPHEN)
[grammar] ~93-~93: There might be a mistake here.
Context: ... | OPTIONAL | - <a name="topicConfigurationConfluentKeyS...
(QB_NEW_EN)
[grammar] ~94-~94: Use a hyphen to join words.
Context: ...kup strategy for the message key. Vendor specific config. ...
(QB_NEW_EN_HYPHEN)
[grammar] ~94-~94: There might be a mistake here.
Context: ...t to the vendor default if not supplied. <a name="topicConfigurationConfluentValu...
(QB_NEW_EN)
[grammar] ~95-~95: Use a hyphen to join words.
Context: ...for the message value is enabled. Vendor specific config. ...
(QB_NEW_EN_HYPHEN)
[grammar] ~95-~95: There might be a mistake here.
Context: ... | OPTIONAL | - <a name="topicConfigurationConfluentValu...
(QB_NEW_EN)
[grammar] ~96-~96: Use a hyphen to join words.
Context: ...p strategy for the message value. Vendor specific config. ...
(QB_NEW_EN_HYPHEN)
🪛 markdownlint-cli2 (0.18.1)
23-23: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
29-29: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data
(MD056, table-column-count)
50-50: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
100-100: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
121-121: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
157-157: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
🤖 Prompt for AI Agents
markdown/docs/reference/bindings/kafka.md lines 23-158: Several sections use
##### (h5) immediately after ## (h2), breaking the document outline and MD001;
change the top-level sub-section headings (currently ##### Fixed Fields, #####
Example, etc.) to ### (h3) and adjust any nested subheadings accordingly so
header levels descend logically (e.g., ## -> ### -> #### as needed) throughout
this range of the file to restore proper hierarchy and outline.
##### Fixed Fields | ||
|
||
Field Name | Type | MQTT Versions | Description | ||
---|:---:|:---:|---| | ||
<a name="serverBindingObjectClientId"></a>`clientId` | string | 3, 5 | The client identifier. | ||
<a name="serverBindingObjectCleanSession"></a>`cleanSession` | boolean | 3, 5 | Whether to create a persistent connection or not. When `false`, the connection will be persistent. This is called **clean start** in MQTTv5. | ||
<a name="serverBindingObjectLastWill"></a>`lastWill` | object | 3, 5 | Last Will and Testament configuration. `topic`, `qos`, `message` and `retain` are properties of this object as shown below. | ||
<a name="serverBindingObjectLastWillTopic"></a>`lastWill.topic` | string | 3, 5 | The topic where the Last Will and Testament message will be sent. | ||
<a name="serverBindingObjectLastWillQoS"></a>`lastWill.qos` | integer | 3, 5 | Defines how hard the broker/client will try to ensure that the Last Will and Testament message is received. Its value MUST be either 0, 1 or 2. | ||
<a name="serverBindingObjectLastWillMessage"></a>`lastWill.message` | string | 3, 5 | Last Will message. | ||
<a name="serverBindingObjectLastWillRetain"></a>`lastWill.retain` | boolean | 3, 5 | Whether the broker should retain the Last Will and Testament message or not. | ||
<a name="serverBindingObjectKeepAlive"></a>`keepAlive` | integer | 3, 5 | Interval in seconds of the longest period of time the broker and the client can endure without sending a message. | ||
<a name="serverBindingObjectSessionExpiryInterval"></a>`sessionExpiryInterval` | integer \| [Schema Object][schemaObject] \| [Reference Object][referenceObject] | 5 | Interval in seconds or a *Schema Object* containing the definition of the interval. The broker maintains a session for a disconnected client until this interval expires. | ||
<a name="serverBindingObjectMaximumPacketSize"></a>`maximumPacketSize` | integer \| [Schema Object][schemaObject] \| [Reference Object][referenceObject] | 5 | Number of bytes or a *Schema Object* representing the maximum packet size the client is willing to accept. | ||
<a name="serverBindingObjectBindingVersion"></a>`bindingVersion` | string | | The version of this binding. If omitted, "latest" MUST be assumed. | | ||
|
||
This object MUST contain only the properties defined above. | ||
|
||
##### Examples | ||
|
||
```yaml | ||
servers: | ||
production: | ||
bindings: | ||
mqtt: | ||
clientId: guest | ||
cleanSession: true | ||
lastWill: | ||
topic: /last-wills | ||
qos: 2 | ||
message: Guest gone offline. | ||
retain: false | ||
keepAlive: 60 | ||
sessionExpiryInterval: 600 | ||
maximumPacketSize: 1200 | ||
bindingVersion: 0.2.0 | ||
``` | ||
```yaml | ||
servers: | ||
production: | ||
bindings: | ||
mqtt: | ||
sessionExpiryInterval: | ||
type: integer | ||
minimum: 30 | ||
maximum: 1200 | ||
maximumPacketSize: | ||
type: integer | ||
minimum: 256 | ||
bindingVersion: 0.2.0 | ||
``` | ||
|
||
<a name="channel"></a> | ||
|
||
## Channel Binding Object | ||
|
||
This object MUST NOT contain any properties. Its name is reserved for future use. | ||
|
||
<a name="operation"></a> | ||
|
||
## Operation Binding Object | ||
|
||
This object contains information about the operation representation in MQTT. | ||
|
||
##### Fixed Fields | ||
|
||
Field Name | Type | Applies To | MQTT Versions | Description | ||
---|:---:|:---:|:---:|--- | ||
<a name="operationBindingObjectQoS"></a>`qos` | integer | Publish, Subscribe | 3, 5 | Defines the Quality of Service (QoS) levels for the message flow between client and server. Its value MUST be either 0 (At most once delivery), 1 (At least once delivery), or 2 (Exactly once delivery). | ||
<a name="operationBindingObjectRetain"></a>`retain` | boolean | Publish | 3, 5 | Whether the broker should retain the message or not. | ||
<a name="operationBindingObjectMessageExpiryInterval"></a>`messageExpiryInterval` | integer \| [Schema Object][schemaObject] \| [Reference Object][referenceObject]| Publish | 5 | Interval in seconds or a *Schema Object* containing the definition of the lifetime of the message. | ||
<a name="operationBindingObjectBindingVersion"></a>`bindingVersion` | string | | | The version of this binding. If omitted, "latest" MUST be assumed. | ||
|
||
This object MUST contain only the properties defined above. | ||
|
||
##### Examples | ||
|
||
```yaml | ||
channels: | ||
user/signup: | ||
publish: | ||
bindings: | ||
mqtt: | ||
qos: 2 | ||
retain: true | ||
messageExpiryInterval: 60 | ||
bindingVersion: 0.2.0 | ||
``` | ||
```yaml | ||
channels: | ||
user/signup: | ||
publish: | ||
bindings: | ||
mqtt: | ||
messageExpiryInterval: | ||
type: integer | ||
minimum: 30 | ||
maximum: 300 | ||
bindingVersion: 0.2.0 | ||
``` | ||
```yaml | ||
channels: | ||
user/signup: | ||
subscribe: | ||
bindings: | ||
mqtt: | ||
qos: 2 | ||
bindingVersion: 0.2.0 | ||
``` | ||
|
||
<a name="message"></a> | ||
|
||
## Message Binding Object | ||
|
||
This object contains information about the message representation in MQTT. | ||
|
||
##### Fixed Fields | ||
|
||
Field Name | Type | MQTT Versions | Description | ||
---|:---:|:---:|--- | ||
<a name="messageBindingObjectPayloadFormatIndicator"></a>`payloadFormatIndicator` | integer | 5 | Either: **0** (zero): Indicates that the payload is unspecified bytes, or **1**: Indicates that the payload is UTF-8 encoded character data. | | ||
<a name="messageBindingObjectCorrelationData"></a>`correlationData` | [Schema Object][schemaObject] \| [Reference Object][referenceObject] | 5 | Correlation Data is used by the sender of the request message to identify which request the response message is for when it is received. | ||
<a name="messageBindingObjectContentType"></a>`contentType` | string | 5 | String describing the content type of the message payload. This should not conflict with the `contentType` field of the associated AsyncAPI Message object. | ||
<a name="messageBindingObjectResponseTopic"></a>`responseTopic` | URI string \| [Schema Object][schemaObject] \| [Reference Object][referenceObject] | 5 | The topic (channel URI) for a response message. | ||
<a name="messageBindingObjectBindingVersion"></a>`bindingVersion` | string | | The version of this binding. If omitted, "latest" MUST be assumed. | ||
|
||
This object MUST contain only the properties defined above. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Heading levels jump too far
“##### Fixed Fields”/“##### Examples” etc. jump from H2 straight to H5 (MD001). Change to ###
(and adjust nested sections) so the structure increases one level at a time.
🧰 Tools
🪛 LanguageTool
[grammar] ~31-~31: There might be a mistake here.
Context: ...roperties of this object as shown below. <a name="serverBindingObjectLastWillTopi...
(QB_NEW_EN)
[grammar] ~33-~33: There might be a mistake here.
Context: ...ved. Its value MUST be either 0, 1 or 2. <a name="serverBindingObjectLastWillMess...
(QB_NEW_EN)
[grammar] ~37-~37: There might be a mistake here.
Context: ...cted client until this interval expires. <a name="serverBindingObjectMaximumPacke...
(QB_NEW_EN)
[grammar] ~93-~93: There might be a mistake here.
Context: ...delivery), or 2 (Exactly once delivery). <...
(QB_NEW_EN)
[grammar] ~95-~95: There might be a mistake here.
Context: ...inition of the lifetime of the message. <a name="operationBindingObjectBindingVe...
(QB_NEW_EN)
[grammar] ~143-~143: There might be a mistake here.
Context: ...ame | Type | MQTT Versions | Description ---|:---:|:---:|--- <a name="messageBind...
(QB_NEW_EN)
[grammar] ~144-~144: There might be a mistake here.
Context: ...rsions | Description ---|:---:|:---:|--- <a name="messageBindingObjectPayloadForm...
(QB_NEW_EN)
🪛 markdownlint-cli2 (0.18.1)
25-25: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
28-28: Table pipe style
Expected: no_leading_or_trailing; Actual: trailing_only; Unexpected trailing pipe
(MD055, table-pipe-style)
39-39: Table pipe style
Expected: no_leading_or_trailing; Actual: trailing_only; Unexpected trailing pipe
(MD055, table-pipe-style)
89-89: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
141-141: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
145-145: Table pipe style
Expected: no_leading_or_trailing; Actual: trailing_only; Unexpected trailing pipe
(MD055, table-pipe-style)
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/mqtt.md around lines 25 to 151 the section
headings jump from H2 directly to H5 (e.g., "##### Fixed Fields", "#####
Examples"), which violates incremental heading levels; change those H5 headings
to H3 (and adjust any nested subheadings accordingly so each level increases by
one, e.g., Examples -> H4 if it is a subsection of Fixed Fields) to restore
proper heading hierarchy and fix the MD001 warning.
weight: 10 | ||
--- | ||
|
||
The entire `scripts` directory is centrally managed in [.github](https://github.com/asyncapi/.github/) repository. Any changes in this folder should be done in central repository. No newline at end of file |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Clarify grammar and article usage.
Please add the definite article and tighten the phrasing so the guidance reads naturally.
-The entire `scripts` directory is centrally managed in [.github](https://github.com/asyncapi/.github/) repository. Any changes in this folder should be done in central repository.
+The entire `scripts` directory is centrally managed in the [.github](https://github.com/asyncapi/.github/) repository. Any changes to this folder must be made in the central repository.
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
The entire `scripts` directory is centrally managed in [.github](https://github.com/asyncapi/.github/) repository. Any changes in this folder should be done in central repository. | |
The entire `scripts` directory is centrally managed in the [.github](https://github.com/asyncapi/.github/) repository. Any changes to this folder must be made in the central repository. |
🧰 Tools
🪛 LanguageTool
[uncategorized] ~6-~6: The official name of this software platform is spelled with a capital “H”.
Context: ...ts` directory is centrally managed in .github ...
(GITHUB)
[grammar] ~6-~6: There might be a mistake here.
Context: ...y changes in this folder should be done in central repository.
(QB_NEW_EN)
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/scripts.md around lines 6 to 6, the sentence
needs the definite article and tighter phrasing; replace the current line with a
clearer version such as: "The entire `scripts` directory is centrally managed in
the [.github] repository. Any changes to this folder should be made in the
central repository." Ensure "the" precedes "entire" and "central repository",
use "to this folder" instead of "in this folder", and prefer "should be made"
for natural phrasing.
| <a name="queueObjectName"></a>`name` | string | **Required.** 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.| | ||
| <a name="fifoQueue"></a>`fifoQueue` | boolean | **Required.** Is this a FIFO queue? | | ||
| <a name="deduplicationScope"></a>`deduplicationScope` | string | **Optional.** Specifies whether message deduplication occurs at the message group or queue level. Valid values are `messageGroup` and `queue`. **This property applies only to high throughput for FIFO queues.** | | ||
| <a name="fifoThroughputLimit"></a>`fifoThroughputLimit` | string | **Optional.** Specifies whether the FIFO queue throughput quota applies to the entire queue or per message group. Valid values are `perQueue` and `perMessageGroupId`. **The `perMessageGroupId` value is allowed only when the value for DeduplicationScope is `messageGroup`. Setting both these values as such will enable high throughput on a FIFO queue. As above, this property applies only to high throughput for FIFO queues.** | | ||
| <a name="queueObjectDeliveryDelay"></a>`deliveryDelay` | integer | **Optional.** The number of seconds to delay before a message sent to the queue can be received. Used to create a *delay queue*. Range is 0 to 15 minutes. Defaults to 0. | | ||
| <a name="queueObjectVisbilityTimeout"></a>`visibilityTimeout` |integer| **Optional.** 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. Range from 0 to 12 hours (43200 seconds). Defaults to 30 seconds. | | ||
| <a name="queueObjectRecieveMessageWaitTime"></a>`receiveMessageWaitTime` |integer| **Optional.** Determines if the queue uses [short polling](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-short-and-long-polling.html) or [long polling](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-short-and-long-polling.html). Set to zero (the default) 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. | | ||
| <a name="queueObjectMessageRetentionPeriod"></a>`messageRetentionPeriod` |integer| **Optional.** How long to retain a message on the queue in seconds, unless deleted. The range is 60 (1 minute) to 1,209,600 (14 days). The default is 345,600 (4 days). | | ||
| <a name="queueObjectRedrivePolicy"></a>`redrivePolicy` | [Redrive Policy](#redrive-policy) | **Optional.** Prevent poison pill messages by moving un-processable messages to an SQS dead letter queue.| | ||
| <a name="queueObjectPolicy"></a>`policy` |[Policy](#policy) | **Optional.** The security policy for the SQS Queue | | ||
| <a name="queueObjectTags"></a>`tags` |Object | **Optional.** Key-value pairs that represent AWS tags on the queue. | | ||
|
||
#### Identifier | ||
|Field Name | Type | Description | | ||
|---|:---:|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ||
|<a name="identifierObjectArn"></a>`arn` |string| **Optional.** The target is an [ARN](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). For example, for SQS, the identifier may be an ARN, which will be of the form: ["arn:aws:sqs:\{region}:\{account-id}:\{queueName}"](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) | | ||
|<a name="identifierObjectName"></a>`name` |string| **Optional.** 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 | | ||
|
||
#### Policy | ||
|Field Name | Type | Description| | ||
|---|:---:|---| | ||
| <a name="channelBindingPolicyObjectPolicyStatements"></a>`Statements` | [Statement](#statement) | **Required.** An array of Statement objects, each of which controls a permission for this queue. | | ||
|
||
#### Redrive Policy | ||
|Field Name | Type | Description| | ||
|---|:---:|---| | ||
| <a name="redrivePolicyObjectDeadLetterQueue"></a>`deadLetterQueue` |[Identifier](#identifier)| The SQS queue to use as a dead letter queue (DLQ) | | ||
| <a name="redrivePolicyObjectMaxReceiveCount"></a>`maxReceiveCount` |integer| **Optional.** The number of times a message is delivered to the source queue before being moved to the dead-letter queue. Default is 10. | | ||
|
||
#### Statement | ||
|Field Name | Type | Description| | ||
|---|:---:|---| | ||
| <a name="channelBindingPolicyStatementObjectEffect"></a>`effect` | string |**Required.** Either "Allow" or "Deny"| | ||
| <a name="channelBindingPolicyStatementObjectPrincipal"></a>`principal` | string or AWS principal property containing a string or string array |**Required.** The AWS account(s) or resource ARN(s) that the statement applies to| | ||
| <a name="channelBindingPolicyStatementObjectAction"></a>`action` | string or array of string |**Required.** The SNS permission being allowed or denied e.g. sns:Publish| | ||
| <a name="channelBindingPolicyStatementObjectAction"></a>`resource` | string or array of string |**Optional.** The resource(s) that this policy applies to| | ||
| <a name="channelBindingPolicyStatementObjectAction"></a>`condition` | object or list of objects |**Optional.** Specific circumstances under which the policy grants permission| | ||
|
||
|
||
<a name="operation"></a> | ||
|
||
## Operation Binding Object | ||
|
||
### SQS Point-To-Point | ||
|
||
Because we have defined Queue as part of the Channel Binding Binding object, we do not require Binding information for the **publish** Operation Object of the **subscribe** Operation Object. You can use an empty Queue object ({}) to denote the Binding on the Operation Object, if you want to indicate the protocol used to send or receive for generation purposes such as Infrastructure As Code. | ||
|
||
### SNS to SQS Pub-Sub | ||
|
||
Use the Operation Binding Object when SQS is listening to an SNS Topic. In this case we need to define both an SQS Operation Binding Objects on the receiver **publish** Operation Object to represent the queue definition and we need to define an SNS Operation Binding Object to define the Subscription to SNS that makes your queue a receiver of that endpoint. | ||
|
||
Assuming you have separate AsyncAPI specifications for the producer and the consumer, we would assume the following bindings would appear for an SNS producer and an SQS consumer. | ||
|
||
Producer: SNS Channel Binding Object, SNS **subscribe** Operation Binding Object [if required] | ||
Consumer: SNS **publish** Operation Binding Object, SQS **publish** Operation Binding Object | ||
|
||
- We assume that the SNS binding information only needs to be present in the producer file (although defining it in both is allowable) and any infrastructure as code dependencies can recognize this. | ||
|
||
|
||
On an Operation Binding Object we support an array of Queue objects. Members of this array may be Queue Objects that define the *endpoint* field required by an [SNS Operation Object]() delivering by the SQS protocol or Queue Objects that define the Dead Letter Queue used by either the Redrive Policy of the SNS Subscription (see the SNS Binding Object) or the [Redrive Policy of the SQS Queue](#redrive-policy). The name of the Queue Object is used by an Identifier field on either the *endpoint* field of the SNS Operation Object of *deadLetterQueue* on the Redrive Policy to identify the required member of this array. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Resolve empty Markdown links
References like [SNS Operation Binding Object]()
and [SNS Operation Object]()
are empty targets, triggering MD042. Point them at real anchors (e.g., (#operation-binding-object)
or remove the brackets) before merging.
🧰 Tools
🪛 LanguageTool
[grammar] ~54-~54: There might be a mistake here.
Context: ...tifier should be the one in this field.| | fifoQueue
| ...
(QB_NEW_EN)
[grammar] ~55-~55: There might be a mistake here.
Context: ...| Required. Is this a FIFO queue? | | `dedu...
(QB_NEW_EN)
[grammar] ~56-~56: There might be a mistake here.
Context: ... to high throughput for FIFO queues.** | | `fif...
(QB_NEW_EN)
[grammar] ~58-~58: There might be a mistake here.
Context: ...nge is 0 to 15 minutes. Defaults to 0. | | ...
(QB_NEW_EN)
[grammar] ~59-~59: There might be a mistake here.
Context: ...3200 seconds). Defaults to 30 seconds. | | <a name="queueObjectRecieveMessageWait...
(QB_NEW_EN)
[grammar] ~61-~61: There might be a mistake here.
Context: ...ays). The default is 345,600 (4 days). | | </a...
(QB_NEW_EN)
[grammar] ~63-~63: There might be a mistake here.
Context: ...The security policy for the SQS Queue | | tags
|...
(QB_NEW_EN)
[grammar] ~69-~69: There might be a mistake here.
Context: ...atest/gr/aws-arns-and-namespaces.html) | |`nam...
(QB_NEW_EN)
[grammar] ~74-~74: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="channelBindingPolicyObjectPol...
(QB_NEW_EN)
[grammar] ~79-~79: There might be a mistake here.
Context: ...me | Type | Description| |---|:---:|---| | <a name="redrivePolicyObjectDeadLetter...
(QB_NEW_EN)
[grammar] ~80-~80: There might be a mistake here.
Context: ...ue to use as a dead letter queue (DLQ) | | <a name="redrivePolicyObjectMaxReceive...
(QB_NEW_EN)
[grammar] ~99-~99: There might be a mistake here.
Context: ...ed Queue as part of the Channel Binding Binding object, we do not require Binding infor...
(QB_NEW_EN)
[grammar] ~99-~99: There might be a mistake here.
Context: ... to denote the Binding on the Operation Object, if you want to indicate the protocol us...
(QB_NEW_EN)
[grammar] ~107-~107: There might be a mistake here.
Context: ...* Operation Binding Object [if required] Consumer: SNS publish Operation Bind...
(QB_NEW_EN)
🪛 markdownlint-cli2 (0.18.1)
54-54: No empty links
(MD042, no-empty-links)
67-67: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
73-73: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
78-78: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
84-84: Tables should be surrounded by blank lines
(MD058, blanks-around-tables)
113-113: No empty links
(MD042, no-empty-links)
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/sqs.md lines 54-114, there are empty
Markdown links like [SNS Operation Binding Object]() and [SNS Operation
Object]() that trigger MD042; update each empty link to point to the correct
local anchor (for example replace them with (#operation) or
(#operation-binding-object) matching the existing <a name="operation"></a> or
remove the link formatting and keep the plain text if no appropriate anchor
exists), and ensure any other empty []() occurrences in this range are similarly
fixed to valid anchors or plain text.
|
||
[<img src="/img/docs/SQS-Point-To-Point.png" height = "400" width="600"/>](SQS-Point-To-Point.png) | ||
|
||
In this example, we are using SQS for a point-to-point channel. For this example, we assume that we are defining two microservices that communicate over a shared SQS channel, with the consumer receiving events over that channel and the producer owning the channel definition. | ||
|
||
The producer file would look like this: | ||
|
||
```yaml | ||
channels: | ||
user-signedup: | ||
bindings: | ||
sqs: | ||
queue: | ||
name: user-signedup-queue | ||
fifoQueue: false | ||
receiveMessageWaitTime: 4 | ||
redrivePolicy: | ||
deadLetterQueue: | ||
name: user-signedup-dlq | ||
policy: | ||
statements: | ||
- effect : Allow | ||
principal: * | ||
action: Sqs:SendMessage | ||
- effect : Allow | ||
principal: * | ||
action: Sqs:ReceiveMessage | ||
deadLetterQueue: | ||
name: user-signedup-dlq | ||
messageRetentionPeriod: 1209600 | ||
fifoQueue: false |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remove tab character
Line 155 starts with a hard tab, violating MD010. Convert to spaces to keep lint happy.
🧰 Tools
🪛 markdownlint-cli2 (0.18.1)
126-126: Images should have alternate text (alt text)
(MD045, no-alt-text)
155-155: Hard tabs
Column: 1
(MD010, no-hard-tabs)
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/sqs.md around lines 125 to 155, there is a
hard tab character at the start of line 155 (under the deadLetterQueue block)
that violates MD010; remove the tab and replace it with spaces to match the
surrounding YAML indentation (use two spaces per indent level as used
elsewhere), ensuring the deadLetterQueue.fifoQueue line aligns with the other
keys and the YAML block remains syntactically correct.
[<img src="/img/docs/SQS-Point-To-Point.png" height = "400" width="600"/>](SQS-Point-To-Point.png) | ||
|
||
In this example, we are using SQS for a point-to-point channel. For this example, we assume that we are defining two microservices that communicate over a shared SQS channel, with the consumer receiving events over that channel and the producer owning the channel definition. | ||
|
||
The producer file would look like this: | ||
|
||
```yaml | ||
channels: | ||
user-signedup: | ||
bindings: | ||
sqs: | ||
queue: | ||
name: user-signedup-queue | ||
fifoQueue: false | ||
receiveMessageWaitTime: 4 | ||
redrivePolicy: | ||
deadLetterQueue: | ||
name: user-signedup-dlq | ||
policy: | ||
statements: | ||
- effect : Allow | ||
principal: * | ||
action: Sqs:SendMessage | ||
- effect : Allow | ||
principal: * | ||
action: Sqs:ReceiveMessage | ||
deadLetterQueue: | ||
name: user-signedup-dlq | ||
messageRetentionPeriod: 1209600 | ||
fifoQueue: false | ||
subscribe: | ||
operationId: sendMessage | ||
description: sends messages when a user has signed up | ||
bindings: | ||
sqs: {} | ||
|
||
``` | ||
In this case we can minimize duplicated information by omitting the binding in our specification, and assume it is picked up from the producer file. We can use an empty object to indicate the SQS Binding on the **publish** Operation Object, if need a marker for generation, otherwise we could omit the Operation Binding Object. | ||
|
||
```yaml | ||
channels: | ||
user-signedup: | ||
publish: | ||
operationId: receiveMessage | ||
description: receives a messages when a user has signed up | ||
bindings: | ||
sqs: {} | ||
|
||
``` | ||
|
||
#### SNS to SQS Pub-Sub | ||
|
||
[<img src="/img/docs/SNS-SQS-Pub-Sub.png" height = "400" width="600"/>](SNS-SQS-Pub-Sub.png) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add alt text to images
Images referenced via [](...)
lack descriptive alt text, tripping MD045. Provide short descriptions in the brackets (e.g., [SQS point-to-point diagram](...)
).
🧰 Tools
🪛 markdownlint-cli2 (0.18.1)
126-126: Images should have alternate text (alt text)
(MD045, no-alt-text)
155-155: Hard tabs
Column: 1
(MD010, no-hard-tabs)
178-178: Images should have alternate text (alt text)
(MD045, no-alt-text)
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/sqs.md around lines 126 to 178, the inline
image links use empty brackets which lack alt text and trigger MD045; update the
bracket text for each image to provide short descriptive alt text (e.g., replace
[] with [SQS point-to-point diagram] for SQS-Point-To-Point.png and [SNS to SQS
pub-sub diagram] for SNS-SQS-Pub-Sub.png) so the image links become descriptive
without changing the image paths.
##### Fixed Fields | ||
|
||
Field Name | Type | Description | ||
---|:---:|--- | ||
<a name="operationBindingObjectMethod"></a>`method` | string | The HTTP method to use when establishing the connection. Its value MUST be either `GET` or `POST`. | ||
<a name="operationBindingObjectQuery"></a>`query` | [Schema Object][schemaObject] \| [Reference Object](referenceObject) | A Schema object containing the definitions for each query parameter. This schema MUST be of type `object` and have a `properties` key. | ||
<a name="operationBindingObjectHeaders"></a>`headers` | [Schema Object][schemaObject] \| [Reference Object](referenceObject) | 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. | ||
<a name="operationBindingObjectBindingVersion"></a>`bindingVersion` | string | The version of this binding. If omitted, "latest" MUST be assumed. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Use consistent heading hierarchy
“##### Fixed Fields” should step down only one level from H2. Switch to ### Fixed Fields
(and adjust if more nesting needed) to satisfy MD001.
🧰 Tools
🪛 markdownlint-cli2 (0.18.1)
32-32: Heading levels should only increment by one level at a time
Expected: h3; Actual: h5
(MD001, heading-increment)
🤖 Prompt for AI Agents
In markdown/docs/reference/bindings/websockets.md around lines 32 to 40, the
heading "##### Fixed Fields" is too deep for a one-level step down from an H2
and violates MD001; change the heading from "##### Fixed Fields" to "### Fixed
Fields" (or to the appropriate single-level lower heading relative to the
nearest H2), and verify surrounding headings maintain consistent hierarchy so
this section now steps down exactly one level from the parent H2.
Updated bindings documentation is available and this PR introduces update to bindings folder on the website
Summary by CodeRabbit