What is an asynchronous API?
Instead of the immediate request-response mechanism of synchronous APIs, asynchronous APIs are event-based. This means that when your application uses an asynchronous API, it does not need to poll or know when to request data because your application subscribes to a stream of events, and will receive events as they become available.
For example, an HTTP-based orders API may expose a 'GET' operation on the path '/orders'. As a consumer of the API, your application would need to make repeated requests to the '/orders' path to know when there are any new orders.
In comparison, as a consumer of an asynchronous API, your application would subscribe to the orders event stream and receive new order events as they arrive.
What is AsyncAPI?
AsyncAPI is a specification for describing asynchronous APIs, similar to the way OpenAPI is a specification for describing synchronous HTTP APIs.
The key difference is that while OpenAPI describes paths and the request and response for an operation, AsyncAPI describes channels that contain events together with the structure of an event.