AsyncAPI is a specification that defines a common language for describing asynchronous APIs. It allows APIs that use messaging systems like IoT, event-driven microservices, and other message-based systems to be documented. The AsyncAPI specification has four main parts - API information, servers, topics, and components - which are used to describe an API using a YAML or JSON file. This file can then be used to generate documentation, client/server code, and power other tools throughout the API development lifecycle. The specification is open source and hosted on GitHub where tooling and examples can be found to help get started using AsyncAPI.
2. Fran Méndez
A little bit about me
APIs & Integrations at
Twitter
@fmvilas
Email
fmvilas@gmail.com
PhotobyEvaMorcillo
3. What am I going
to talk about…
What is AsyncAPI?
…in our next 50 minutes journey?
PhotobyDavideCantelli
Why should you use it?
How it works and how to get started.
6. AsyncAPI defines a set of
files and a common
language required to describe
asynchronous APIs.
Photo by RawPixel.com
7. It is a
specification
With it you can describe:
IoT APIs
Event-driven microservices
…and actually pretty much any system that
is based on messages.
PhotobyLouisSmith
8. It does NOT enforce any
particular protocol
However, it cares about the protocol because we
think it’s an important information.
AMQP
MQTT
WebSockets
STOMP
PhotobyAxelAntasBergkvist
We’re exploring…
Google PubSub
CoAP
NATS
9. It is NOT a
library nor a
software
However, tooling is provided:
Documentation generators
Code generators
What will you create
next?
Photo by Barn Images
11. AsyncAPI could be a software but what
really matters is the language, because it
defines how we communicate.
Language
It’s a basic pilar of communication
PhotobyGonardFluit
By defining a common language everybody
can easily create interoperable tools,
services or even products.
12. You can describe your APIs using both,
JSON and YAML.
Human/Machine
It’s human and machine friendly.
Humans can use GUIs for a more intuitive
and accessible way of creating the
AsyncAPI files.
Photo by Alex Knight
13. API Lifecycle
Take control of your API lifecycle.
Photo by Boris Smokrovic
Design
Documentation
Code Generation
Testing
API management
Monitoring
14. Check out our repositories on Github:
https://www.github.com/asyncapi
Community-driven
It’s open-source, it has always been open-
source and it will always be open source.
PhotobyWilliamWhite
16. 1. Create an asyncapi.yml file.
2. Describe your API using the AsyncAPI
syntax.
Document your API
You can either start by designing it or
documenting an existing API.
PhotobySimsonPetrol
OR
Go to editor.asyncapi.org and start from an
example API.
17. Syntax
It’s based on JSON schema and has
4 main parts:
API Information
Servers
Topics
Components
Photo by Álvaro Serrano
18. Syntax
It’s based on JSON schema and has
4 main parts:
API Information
Servers
Topics
Components
Photo by Álvaro Serrano