Skip to content

AsyncAPI Studio — Complete Guide

DodaTech Updated 2026-06-28 4 min read

In this tutorial, you will learn about AsyncAPI Studio. We cover key concepts, practical examples, and best practices to help you master this topic.

AsyncAPI Studio is a visual tool for designing, editing, validating, and previewing AsyncAPI specifications. It provides a graphical interface that makes event-driven Api Design accessible to both developers and non-technical stakeholders.

What You'll Learn

  • Installing and using AsyncAPI Studio
  • Visual specification editing
  • Real-time validation
  • Documentation preview
  • Collaborative features

Why It Matters

Visual tools lower the barrier to creating AsyncAPI specifications. Non-developers can participate in API design, and developers get immediate feedback on specification correctness.

Real-World Use

A product manager uses AsyncAPI Studio to draft event flows for a new feature. They visually add channels and messages, then export the spec for the engineering team to refine and generate code from.

Flow Chart

flowchart LR
    A[AsyncAPI Studio] --> B[Editor]
    A --> C[Visual Canvas]
    A --> D[Validation]
    A --> E[Preview]
    B --> F[YAML/JSON Editing]
    C --> G[Channel Diagram]
    C --> H[Server Diagram]
    D --> I[Error/Warning Display]
    E --> J[HTML Documentation]

Code Examples

Example 1: Starting AsyncAPI Studio

# Using Docker
docker run --rm -it \
  -p 8080:8080 \
  -v $(pwd):/app \
  asyncapi/studio

# Using npm
npx @asyncapi/studio

# Using VS Code extension
# Install "AsyncAPI Studio" from marketplace

# Access the web interface
open http://localhost:8080

Expected output: AsyncAPI Studio web interface opens, ready for editing specifications.

Example 2: Spec Created in Studio

# This spec was created in AsyncAPI Studio
asyncapi: '2.6.0'
info:
  title: Order Events
  version: '1.0.0'
  description: Created with AsyncAPI Studio

servers:
  dev:
    url: kafka://localhost:9092
    protocol: kafka
    description: Local development

channels:
  order/placed:
    subscribe:
      operationId: onOrderPlaced
      message:
        payload:
          type: object
          properties:
            orderId:
              type: string
            total:
              type: number
  order/shipped:
    publish:
      operationId: emitOrderShipped
      message:
        payload:
          type: object
          properties:
            orderId:
              type: string
            trackingNumber:
              type: string

Expected output: A valid AsyncAPI spec created using the visual editor in AsyncAPI Studio.

Example 3: Studio Validation Output

Validating AsyncAPI document...

[PASS] Document is valid AsyncAPI 2.6.0
[PASS] All required fields present
[PASS] Channel message references exist
[PASS] Server definitions are complete
[WARN] Missing externalDocs for info section
[WARN] Channel 'order/placed' has no description
[INFO]  2 channels defined
[INFO]  2 messages defined
[INFO]  1 server defined

Document is valid with 2 warnings.

Expected output: Studio validates the spec and provides warnings about missing documentation.

Common Mistakes

Mistake Explanation
Relying solely on visual editor The visual editor is great for drafts but tends to generate verbose YAML; review and clean up the raw spec
Ignoring validation warnings Warnings about missing descriptions or examples should be addressed before Code Generation
Forgetting to save regularly Studio runs in the browser; use export or save frequently to avoid losing work
Not using templates Studio supports starting from templates; use them to avoid starting from scratch
Overlooking collaborative features Studio files can be shared via URL, enabling team review of API designs

Practice Questions

  1. What are the main features of AsyncAPI Studio?
  2. How do you start a new specification from a template?
  3. How can you share an AsyncAPI specification with colleagues?
  4. What types of validation does Studio perform?
  5. How does the visual canvas represent channels and messages?

Challenge

Use AsyncAPI Studio to design an event-driven notification system. Start from blank, add three channels (email, sms, push), define message payloads, configure a local MQTT server, and export the spec as both YAML and HTML documentation.

FAQ

Is AsyncAPI Studio free?

Yes, AsyncAPI Studio is open source and free to use. You can run it locally or use the hosted version at studio.asyncapi.com.

Can I import existing YAML files?

Yes, Studio supports importing existing AsyncAPI YAML and JSON files for editing and validation.

Does Studio support AsyncAPI 3.0?

Studio supports AsyncAPI 2.x. 3.0 support is in development as the specification evolves.

Can I generate code directly from Studio?

Studio focuses on editing and preview. For code generation, export the spec and use the AsyncAPI CLI.

Is there a VS Code extension?

Yes, the AsyncAPI Studio VS Code extension provides in-editor preview, validation, and visual editing capabilities.

Can I use Studio offline?

Yes, the Docker image and npm package run locally without internet access once installed.

Mini Project

Design a complete AsyncAPI specification in AsyncAPI Studio for a smart home system. Include devices (lights, thermostats, locks), their commands and telemetry channels, server definitions for MQTT, and security schemes. Export the spec and generate HTML documentation.

What's Next

Explore the AsyncAPI tooling ecosystem

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro