APIClarity · AsyncAPI Specification

Apiclarity Notifications Webhooks

Version

View Spec View on GitHub API ObservabilityAPI SecurityAPI Traffic AnalysisCiscoKubernetesOpen-SourceOpenAPI ReconstructionOpenClarityService MeshShadow APIsAsyncAPIEvents

AsyncAPI Specification

Raw ↑
generated: '2026-09-04'
method: searched
source: https://raw.githubusercontent.com/openclarity/apiclarity/master/api3/notifications/openapi.gen.yaml
spec_file: openapi/apiclarity-notifications-openapi.yml
docs: https://github.com/openclarity/apiclarity/tree/master/api3#apiclarity-notification-specification
description: >-
  APIClarity's event surface. It is a webhook catalog, not an AsyncAPI document — the project
  publishes no AsyncAPI and no broker/streaming contract, and none is authored here. What it
  does publish is an inverted OpenAPI document describing the endpoint a REGISTERED LISTENER
  must implement, which APIClarity then POSTs to. Six notification types are defined, all
  discriminated on a single polymorphic envelope.
asyncapi_published: false
asyncapi_note: >-
  No .asyncapi/asyncapi.yaml exists in the repository and no event-catalog page was ever
  published. Fabricating one would assert a contract the project does not ship.
transport: HTTP POST from APIClarity to a listener the operator registers
delivery:
  method: POST
  path: /notification/{apiID}
  path_parameter:
    name: apiID
    in: path
    type: integer
    format: int64
    required: true
  content_type: application/json
  request_body_schema: APIClarityNotification
  expected_response: '200 with a JSON string body'
  direction: outbound — APIClarity is the client, the operator's listener is the server
  retries: not documented
  signing: not documented
  authentication: not documented
envelope:
  schema: APIClarityNotification
  style: oneOf with a discriminator
  discriminator_property: notificationType
  base_schema: BaseNotification
  base_required_fields:
  - notificationType
  note: >-
    By upstream convention the discriminator value equals the schema name — a
    TestReportNotification carries notificationType "TestReportNotification". The aggregator
    tool that builds this document depends on that convention.
events:
- name: NewDiscoveredAPINotification
  trigger: APIClarity observes traffic to a host/port it has not seen before.
  payload: BaseNotification + ApiInfo
  payload_fields:
  - id
  - name
  - port
  - hasProvidedSpec
  - hasReconstructedSpec
  - destinationNamespace
  - traceSourceId
  producer: core
- name: SpecDiffsNotification
  trigger: Observed traffic diverges from the provided or reconstructed specification — the shadow/zombie/drift signal.
  payload: BaseNotification + SpecDiffs (APIDiffs)
  producer: spec_differ module
- name: ApiFindingsNotification
  trigger: A module raises security findings against an API.
  payload: BaseNotification + APIFindings (items[] of APIFinding)
  payload_fields:
  - type
  - source
  - name
  - description
  - severity
  - reconstructed_spec_location
  - provided_spec_location
  producer: traceanalyzer, bfla and fuzzer modules
- name: AuthorizationModelNotification
  trigger: The BFLA authorization model for an API changes — learned, updated, approved or denied.
  payload: BaseNotification + AuthorizationModel (specType, operations[], learning)
  producer: bfla module
- name: TestProgressNotification
  trigger: A fuzz test advances.
  payload: BaseNotification + ShortTestProgress (apiID, progress 0-100, starttime)
  producer: fuzzer module
- name: TestReportNotification
  trigger: A fuzz test completes.
  payload: BaseNotification + ShortTestReport (apiID, starttime, status, statusMessage, highestSeverity, tags[])
  producer: fuzzer module
event_count: 6
subscription_management:
  documented: false
  note: >-
    The specification defines what a listener receives, not how a listener registers. No
    subscription endpoint appears in the core or module contracts; registration is a
    deployment-side configuration concern the published docs do not cover.
gaps:
- No AsyncAPI document.
- No delivery guarantees, retry policy, backoff or dead-letter behaviour documented.
- No payload signing or shared secret documented, on a channel that carries security findings.
- No documented way to register or list listeners.

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/apiclarity-notifications-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.