AxonFlow Webhooks API

Webhook subscription management for real-time event notifications. Subscribe to events like policy violations, workflow completions, budget alerts, etc.

Operations 5

POST /api/v1/webhooks Create webhook subscription #
GET /api/v1/webhooks List webhook subscriptions #
GET /api/v1/webhooks/{id} Get webhook subscription #
PUT /api/v1/webhooks/{id} Update webhook subscription #
DELETE /api/v1/webhooks/{id} Delete webhook subscription #

Documentation

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-decide-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-mcpcheck-input-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-pre-check-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-client-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-decide-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-mcpcheck-output-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-audit-log-entry-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-step-gate-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-ojkaudit-export-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-approval-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-audit-action-report-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-policy-evaluation-result-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-simulate-policies-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-create-policy-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-update-policy-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-impact-report-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-apply-template-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-test-policy-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-featassessment-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-aisystem-registry-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-create-registry-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-update-assessment-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-kill-switch-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/axonflow/refs/heads/main/json-schema/axonflow-update-registry-request-schema.json

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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 API
curl "https://apis.io/api/v1/apis/axonflow:axonflow-webhooks-api"
All apis
curl "https://apis.io/api/v1/apis?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.

OpenAPI Specification

axonflow-webhooks-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Axonflow Webhooks API
  version: 11.1.0
  contact:
    name: AxonFlow Support
    url: https://getaxonflow.com/support
  license:
    name: Business Source License 1.1
    url: https://github.com/getaxonflow/axonflow/blob/main/LICENSE
  description: 'Operations tagged Webhooks across 2 of this provider''s published API definitions: axonflow-orchestrator-api.yaml, axonflow-orchestrator-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://orchestrator.getaxonflow.com
  description: Production (SaaS)
- url: http://localhost:8081
  description: Local Development
tags:
- name: Webhooks
  description: 'Webhook subscription management for real-time event notifications.

    Subscribe to events like policy violations, workflow completions, budget alerts, etc.'
paths:
  /api/v1/webhooks:
    post:
      tags:
      - Webhooks
      summary: Create webhook subscription
      description: 'Create a new webhook subscription to receive real-time event notifications.

        Events are delivered as HTTP POST requests to the specified URL with HMAC-SHA256

        signatures when a secret is provided.'
      operationId: createWebhook
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateWebhookRequest'
            example:
              url: https://example.com/webhooks/axonflow
              events:
              - policy.violation
              - workflow.completed
              - budget.exceeded
              secret: whsec_example_placeholder
              active: true
      responses:
        '201':
          description: Webhook subscription created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookSubscription'
              example:
                id: wh_abc123
                url: https://example.com/webhooks/axonflow
                events:
                - policy.violation
                - workflow.completed
                - budget.exceeded
                active: true
                tenant_id: tenant-1
                org_id: org-1
                secret: whsec_example_placeholder
                created_at: '2026-01-17T10:00:00Z'
                updated_at: '2026-01-17T10:00:00Z'
        '400':
          $ref: '#/components/responses/BadRequest'
    get:
      tags:
      - Webhooks
      summary: List webhook subscriptions
      description: List all webhook subscriptions for the current tenant
      operationId: listWebhooks
      responses:
        '200':
          description: List of webhook subscriptions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListWebhookSubscriptionsResponse'
              example:
                subscriptions:
                - id: wh_abc123
                  url: https://example.com/webhooks/axonflow
                  events:
                  - policy.violation
                  - workflow.completed
                  active: true
                  tenant_id: tenant-1
                  org_id: org-1
                  created_at: '2026-01-17T10:00:00Z'
                  updated_at: '2026-01-17T10:00:00Z'
                total: 1
    servers:
    - url: https://orchestrator.getaxonflow.com
      description: Production (SaaS)
    - url: http://localhost:8081
      description: Local Development
  /api/v1/webhooks/{id}:
    get:
      tags:
      - Webhooks
      summary: Get webhook subscription
      description: Retrieve a specific webhook subscription by ID
      operationId: getWebhook
      parameters:
      - name: id
        in: path
        required: true
        description: Webhook subscription ID
        schema:
          type: string
        example: wh_abc123
      responses:
        '200':
          description: Webhook subscription details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookSubscription'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      tags:
      - Webhooks
      summary: Update webhook subscription
      description: Update an existing webhook subscription
      operationId: updateWebhook
      parameters:
      - name: id
        in: path
        required: true
        description: Webhook subscription ID
        schema:
          type: string
        example: wh_abc123
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateWebhookRequest'
            example:
              url: https://example.com/webhooks/axonflow-v2
              events:
              - policy.violation
              - workflow.completed
              - workflow.failed
              active: true
      responses:
        '200':
          description: Webhook subscription updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookSubscription'
        '400':
          $ref: '#/components/responses/BadRequest'
        '404':
          $ref: '#/components/responses/NotFound'
    delete:
      tags:
      - Webhooks
      summary: Delete webhook subscription
      description: Delete a webhook subscription. Events will no longer be delivered to this URL.
      operationId: deleteWebhook
      parameters:
      - name: id
        in: path
        required: true
        description: Webhook subscription ID
        schema:
          type: string
        example: wh_abc123
      responses:
        '204':
          description: Webhook subscription deleted
        '404':
          $ref: '#/components/responses/NotFound'
    servers:
    - url: https://orchestrator.getaxonflow.com
      description: Production (SaaS)
    - url: http://localhost:8081
      description: Local Development
components:
  schemas:
    WebhookSubscription:
      type: object
      description: A webhook subscription for receiving event notifications
      properties:
        id:
          type: string
          description: Unique subscription identifier
          example: wh_abc123
        url:
          type: string
          format: uri
          description: URL that receives webhook event payloads
          example: https://example.com/webhooks/axonflow
        events:
          type: array
          items:
            type: string
          description: Event types this subscription listens for
          example:
          - policy.violation
          - workflow.completed
        active:
          type: boolean
          description: Whether the subscription is currently active
          example: true
        tenant_id:
          type: string
          description: Tenant ID that owns this subscription
          example: tenant-1
        org_id:
          type: string
          description: Organization ID that owns this subscription
          example: org-1
        secret:
          type: string
          description: Secret key for HMAC-SHA256 signature verification
          example: whsec_example_placeholder
        created_at:
          type: string
          format: date-time
          description: When the subscription was created
        updated_at:
          type: string
          format: date-time
          description: When the subscription was last updated
    ListWebhookSubscriptionsResponse:
      type: object
      description: List of webhook subscriptions
      properties:
        subscriptions:
          type: array
          items:
            $ref: '#/components/schemas/WebhookSubscription'
        total:
          type: integer
          description: Total number of subscriptions
    CreateWebhookRequest:
      type: object
      required:
      - url
      - events
      properties:
        url:
          type: string
          format: uri
          description: URL to receive webhook event payloads
          example: https://example.com/webhooks/axonflow
        events:
          type: array
          items:
            type: string
          description: 'List of event types to subscribe to. Available events:

            - `policy.violation` — Policy violation detected

            - `policy.created` / `policy.updated` / `policy.deleted` — Policy lifecycle

            - `workflow.completed` / `workflow.failed` / `workflow.aborted` — Workflow lifecycle

            - `workflow.approval_required` — Step requires human approval

            - `budget.threshold_reached` / `budget.exceeded` / `budget.blocked` — Budget alerts

            - `plan.completed` / `plan.failed` — Plan lifecycle

            '
          example:
          - policy.violation
          - workflow.completed
        secret:
          type: string
          description: Secret key for HMAC-SHA256 signature verification of webhook payloads
          example: whsec_example_placeholder
        active:
          type: boolean
          default: true
          description: Whether the subscription is active
    UpdateWebhookRequest:
      type: object
      properties:
        url:
          type: string
          format: uri
          description: Updated URL to receive webhook event payloads
        events:
          type: array
          items:
            type: string
          description: Updated list of event types to subscribe to
        active:
          type: boolean
          description: Whether the subscription is active
    ErrorResponse:
      type: object
      description: 'The FLAT error envelope: `{success, error}`. This is what

        `sendErrorResponse` emits, which is the orchestrator''s dominant error

        writer (240 call sites), so it is the shape of every error from the

        core request, audit, plan, workflow, execution and connector surfaces.


        It is one of THREE error SHAPES this document describes. See

        `CodedErrorResponse` and `TripletErrorResponse` for the other two, and

        the note on `components.responses` for why there is more than one.

        `LLMProviderAPIError` is a code-constrained refinement of the coded

        shape, not a fourth shape.


        This paragraph said "TWO" until issue #3941. `TripletErrorResponse` was

        added by the #3901 reconciliation and this sentence was not updated with

        it, so the document undercounted its own families — which is the same

        defect one level up as the operations that named the wrong one.

        '
      properties:
        success:
          type: boolean
          example: false
        error:
          type: string
          description: Human-readable message. There is no machine-readable code on this envelope.
      required:
      - success
      - error
  responses:
    BadRequest:
      description: Invalid request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            success: false
            error: Invalid request body
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            success: false
            error: Resource not found
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: OAuth2-style client credentials (clientId:clientSecret)
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Enterprise JWT token (see /scripts/generate-jwt.sh)
x-refined-from:
- axonflow-orchestrator-api.yaml
- axonflow-orchestrator-openapi.yml