Scalarr · AsyncAPI Specification

Scalarr Parallax Webhooks

Version

View Spec View on GitHub CompanyCybersecurityRuntime SecurityAI Agent SecurityContainer SecurityKubernetesEdge ComputingVulnerability ManagementComplianceNIS2Machine-LearningArtificial IntelligenceOpen-SourceFraud DetectionMobile Ad FraudAsyncAPIEvents

AsyncAPI Specification

scalarr-parallax-webhooks.yml Raw ↑
generated: '2026-08-13'
method: derived
source: >-
  https://github.com/agent-defense/parallax — README.md (Reporting configuration),
  parallax.yaml, and src/reporting/webhook.rs (the code that builds and sends the
  payload)
note: >-
  Scalarr publishes NO AsyncAPI document. It does ship one real outbound event
  surface: Parallax POSTs a decision event to an operator-configured webhook URL.
  This file is the webhook CATALOG, not a fabricated AsyncAPI — the field list is
  read verbatim from the serde_json payload constructed in
  src/reporting/webhook.rs, so it is exact rather than inferred. The AI EdgeLabs
  hosted platform publishes no webhook, event, or streaming surface at all.
  apis.yml therefore carries a Webhooks pointer and NO AsyncAPI pointer.
asyncapi_published: false
webhooks:
  published: true
  direction: outbound
  api: Parallax Evaluation API
  transport: HTTPS POST
  content_type: application/json
  delivery:
    timeout_seconds: 5
    retries: 0
    retry_note: >-
      No retry, no backoff, no dead-letter. A failed delivery is logged at warn
      (4xx/5xx) or error (transport failure) and dropped. Delivery never blocks
      or delays the evaluation pipeline — the decision is returned to the caller
      regardless.
    ordering: none
    signing:
      supported: false
      note: >-
        No HMAC signature, no shared secret, no timestamp-nonce header. A receiver
        cannot verify the sender, so the endpoint must be network-restricted.
  configuration:
    file: parallax.yaml
    keys:
      - key: reporting.webhook_url
        description: Destination URL. Absent means webhook reporting is disabled.
        example: https://siem.example.com
      - key: reporting.webhook_events
        description: Which decision actions trigger a send.
        default: [block, redact]
        allowed: [block, redact, detect, allow]
      - key: reporting.log_file
        description: Append-only JSONL audit trail written alongside the webhook.
        default: ./logs/audit.jsonl
  events:
    - name: decision
      description: >-
        One evaluation decision. Emitted after the evaluator chain resolves, only
        when the aggregated action is in reporting.webhook_events.
      trigger_actions: [block, redact]
      trigger_actions_note: Defaults; configurable to include detect and allow.
      payload:
        - field: timestamp
          type: number
          description: Unix epoch seconds of the evaluated event.
        - field: stage
          type: string
          enum: [message.before, tool.before, tool.after, params.before]
          description: Lifecycle stage the event was submitted at.
        - field: session_id
          type: string
          description: Caller-supplied session identifier.
        - field: user_id
          type: string
          description: Caller-supplied user identifier.
        - field: channel
          type: string
          description: Caller-supplied channel or conversation identifier.
        - field: tool_name
          type: string
          nullable: true
          description: Tool the agent was calling, when the stage is tool-scoped.
        - field: action
          type: string
          enum: [block, redact, detect, allow]
          description: Aggregated decision.
        - field: reasons
          type: array
          items: string
          description: Human-readable list of the rules that matched.
        - field: evaluator_count
          type: integer
          description: Number of evaluator results aggregated into this decision.
  intended_consumers:
    - SIEM
    - Slack
    - PagerDuty
  consumer_note: >-
    Named as intended destinations in parallax.yaml comments and the README. No
    packaged connector exists — the README roadmap lists Slack, PagerDuty and SIEM
    connectors as future work, so today the operator receives raw JSON on a URL
    they stand up themselves.
gaps:
  - No signature or shared secret on the delivered payload.
  - No retry or delivery guarantee.
  - No AsyncAPI, event catalog page, or schema published by the vendor.
  - The hosted AI EdgeLabs platform exposes no webhook at all.

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/scalarr-parallax-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.