Zenoss · AsyncAPI Specification

Zenoss Webhooks

Version

View Spec View on GitHub AIOpsMonitoringObservabilityInfrastructureEvent ManagementHybrid CloudOpenTelemetrygRPCMetricsAsyncAPIEvents

AsyncAPI Specification

zenoss-webhooks.yml Raw ↑
generated: '2026-08-29'
method: searched
source: https://docs.zenoss.io/actions/reference/webhook.html
docs:
  - https://docs.zenoss.io/actions/reference/webhook.html
  - https://docs.zenoss.io/actions/reference/destination-fields.html
  - https://docs.zenoss.io/api/actions/actions.html
  - https://docs.zenoss.io/actions/reference/trigger-queries.html
provider: Zenoss
providerId: zenoss
type: Webhooks
asyncapi_spec: null
description: >-
  Outbound event surface for Virtana Service Observability (formerly Zenoss Cloud). Zenoss does not
  publish an AsyncAPI document, but it does ship a real, documented webhook delivery mechanism: the
  Actions service evaluates triggers against events, metrics, anomalies, maintenance state and stale
  data, and a rule fans matching notifications out to configured destinations — one of which is a
  generic HTTP webhook with a published JSON payload example.
model:
  style: rule-driven notification fan-out
  producer: Virtana Service Observability Actions service
  subscription: >-
    Destinations, triggers and rules are configured objects, managed through the console or through
    /v1/notification/* — there is no per-subscription registration endpoint and no event-type catalog
    to subscribe to. What you receive is defined by the trigger clause you write, not by a fixed list
    of event names.
  delivery: HTTP POST of a JSON document to the destination URL
  retries: Not documented.
  signing: >-
    No signature header, shared secret, or replay-protection scheme is documented. Custom headers can
    be set on a webhook destination, so a caller may add their own bearer token.
  ordering: Not documented.
  repeat_control: rule.repeat_interval (seconds) suppresses repeat notifications for the same rule.
trigger_types:
  - id: event
    description: Clause query over event fields (severity, status, source, and any event field).
    docs: https://docs.zenoss.io/actions/how-to/add-event-trigger.html
  - id: metric
    description: Threshold condition on a metric.
    docs: https://docs.zenoss.io/actions/how-to/add-metric-trigger.html
  - id: anomaly
    description: Fires on detected anomalies.
    docs: https://docs.zenoss.io/actions/how-to/add-anomaly-trigger.html
  - id: maintenance
    description: Fires on maintenance window state.
    docs: https://docs.zenoss.io/actions/how-to/add-maintenance-trigger.html
  - id: stale-data
    description: Fires when expected data stops arriving.
    docs: https://docs.zenoss.io/actions/how-to/add-stale-data-trigger.html
destinations:
  - id: webhook
    description: 'Generic HTTP receiver. Fields: URL, Headers, Custom payload toggle, JSON payload.'
    custom_payload: true
  - id: slack
    docs: https://docs.zenoss.io/actions/reference/slack-app.html
  - id: microsoft-365
    description: Office 365 connector card / Microsoft Teams incoming webhook URL.
    docs: https://docs.zenoss.io/actions/reference/o365-connector-card.html
  - id: pagerduty
    description: Accepts the same JSON message format as a webhook destination.
  - id: servicenow
    description: ServiceNow ITOM instance, authenticated with OAuth credentials stored in the credentials service.
  - id: email
  - id: zoom
payload:
  content_type: application/json
  documented_example: https://docs.zenoss.io/actions/reference/webhook.html
  top_level_fields:
    - name: id
      description: Notification identifier (opaque base64).
    - name: tenant
      description: Tenant name.
    - name: timestamp
      description: Epoch milliseconds.
    - name: rule
      description: The rule that fired — name, trigger_names[], destination_names[], message, enabled, repeat_interval.
    - name: trigger
      description: >-
        The trigger definition, including its full nested clause tree (And/Or/Equals over event
        fields such as severity, status and source).
    - name: event
      description: >-
        The matched event — summary, severity (integer), status (integer), and a fields map that
        includes Zenoss internal keys such as _zen_clientid, _zen_direct_entity_id and _zen_entityIds.
  note: >-
    The payload embeds the whole trigger definition alongside the event, so a receiver gets the rule
    that fired as well as the fact that fired it. Severity and status arrive as integers, not labels.
  templating:
    supported: true
    docs: https://docs.zenoss.io/actions/reference/templates.html
    default_messages: https://docs.zenoss.io/actions/reference/default-messages.html
inbound_streaming:
  note: >-
    The inbound (ingest) side is genuinely streaming and is contract-backed, but by gRPC rather than
    AsyncAPI — DataReceiverService exposes client-streaming PutEvent/PutMetric/PutModel and
    CollectionConfigService exposes bidirectional config streams. See grpc/. OTLP metric export is
    documented at https://api.zenoss.io:443.
gaps:
  - No AsyncAPI document is published for either the inbound or outbound event surface.
  - No webhook signature or verification scheme, so a receiver cannot authenticate the sender.
  - No documented retry, backoff or delivery-guarantee semantics.
  - No catalog of event types; the shape of what you receive depends entirely on the trigger clause.

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.
All 92 tools →

Call it yourself

curl for this page
This AsyncAPI spec
curl "https://apis.io/api/v1/asyncapis/zenoss-webhooks"
All asyncapi
curl "https://apis.io/api/v1/asyncapis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.