Introduction

Found an error? Have a suggestion?Edit this page on GitHub

The AsyncAPI specification defines fields for describing an application's API in an AsyncAPI document. While the document may reference other files for details or shared fields, it typically serves as a single, primary document that encapsulates the API description.

The AsyncAPI document is a communication contract between senders and receivers within an event-driven system. It specifies the payload content required for a service to send a message and provides the receiver with guidance about the message's properties.

1asyncapi: 3.0.0
2info:
3  title: Cool Example
4  version: 0.1.0
5channels:
6  userSignedUp:
7    address: user/signedup
8    messages:
9      userSignedUp:
10        description: An event describing that a user just signed up.
11        payload:
12          type: object
13          properties:
14            fullName:
15              type: string
16            email:
17              type: string
18              format: email
19            age:
20              type: integer
21              minimum: 18
22operations: 
23  userSignedUp:
24    action: send
25    channel: 
26      $ref: '#/channels/userSignedUp'
Remember

Depending on the protocol (such as MQTT, AMQP, Kafka), your AsyncAPI document may have additional fields. For example, for configuring Kafka bindings.

Was this helpful?
Help us improve the docs by adding your contribution.
OR
Github:AsyncAPICreate Issue on GitHub