Synadia Communications · AsyncAPI Specification
Synadia Communications Event Surface
Version
View Spec
View on GitHub
CompanyMessagingEvent StreamingNATSDistributed SystemsEdge ComputingPublish SubscribeKey-Value StoreObject StorageInfrastructureAgentic AIOpen-SourceAsyncAPIWebhooksEvents
AsyncAPI Specification
generated: '2026-08-29'
method: searched
source: >-
Searched github.com/synadia-io (code search for "asyncapi" across the org returned 0 results),
docs.synadia.com, the llms.txt site index, and the alerting/watch surfaces of both OpenAPI specs.
name: Synadia Communications event surface
description: >-
Recorded as an honest absence with the surrounding facts, because "no AsyncAPI" is a surprising
finding for the company that builds NATS. Synadia sells an event-driven messaging fabric and has a
real event surface, but publishes NO AsyncAPI document and NO HTTP webhook catalog. The events are
NATS-native: they are delivered on NATS subjects to NATS subscribers, which is the product itself
rather than an integration contract layered on top of it.
asyncapi_published: false
webhooks_published: false
note: >-
No AsyncAPI or Webhooks pointer is emitted in apis.yml, because neither surface is published. This
file documents what DOES exist so the absence is legible rather than silent.
event_surfaces:
- name: Alert rule notifications
transport: NATS subject
spec_evidence: >-
NatsAlertingConfig in the Control Plane spec carries `account`, `subject` and a `receivers` array.
Alerts are published to a customer-configured NATS subject within a chosen account.
operations:
- listAlerts
- acknowledgeAlert
- alert rule CRUD under /core/beta/systems/{systemId}/alert-rules and /accounts/{accountId}/alert-rules
rule_types: [SystemDefault, System, AccountDefault, Account, Stream, Consumer]
threshold_metrics:
- account.max_connections
- account.max_consumers
- account.max_bytes
- account.max_exports
- account.max_imports
- account.max_jwt_expiry
- account.max_msg_payload
- account.max_streams
- account.max_subscriptions
- account.JS_max_file
- account.JS_max_memory
- system.JS_max_memory
- system.JS_max_file
- name: Slack alert receivers
transport: Slack API
spec_evidence: >-
SlackReceiverConfig / SlackConfig components; the receivers array accepts type `slack` with a
config of {channel, token}. Slack is the ONLY receiver type in the enum.
note: >-
This is an outbound integration to Slack, not a generic HTTP webhook. There is no user-supplied
callback URL anywhere in the contract - the string "webhook" appears zero times in either spec.
- name: HTTP Gateway watch endpoints
transport: HTTP streaming
operations:
- KvStoreWatch
- ObjStoreWatch
paths:
- GET /kvm/buckets/{bucket}/watch
- GET /objm/buckets/{bucket}/watch
note: >-
Long-lived HTTP endpoints streaming key-value and object store change events. The ValueEvent
schema describes the emitted payload. This is the closest thing to a documented event contract
Synadia publishes over HTTP, and it lives inside the OpenAPI rather than an AsyncAPI.
- name: Core NATS messaging
transport: NATS protocol
note: >-
The product itself - publish/subscribe, request/reply and JetStream over the NATS wire protocol.
Subject hierarchies are customer-defined, so there is no fixed catalog of events to describe.
Synadia publishes guidance on designing them at
https://www.synadia.com/blog/designing-nats-subject-hierarchies rather than a machine-readable
channel list.
opportunity: >-
The KV/object watch endpoints and the alert-rule notification schema are both fully specified
already. An AsyncAPI document describing the alerting subject and the watch streams would be a
small piece of work with outsized signalling value for the company that maintains NATS.
Work with this as data
Every AsyncAPI spec here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for asyncapi
4 MCP tools reach this
find_asyncapisBrowse and filter every AsyncAPI spec in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This AsyncAPI spec
curl "https://apis.io/api/v1/asyncapis/synadia-communications-event-surface"
All asyncapi
curl "https://apis.io/api/v1/asyncapis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.