FireHydrant · AsyncAPI Specification
Firehydrant Webhooks
Version
View Spec
View on GitHub
AIOpsIncident ManagementOn-CallAlertingStatus PagesRunbooksSite Reliability EngineeringObservabilityRetrospectivesDevOpsAsyncAPIEvents
AsyncAPI Specification
generated: '2026-08-29'
method: searched
source: https://docs.firehydrant.com/docs/webhooks
spec_type: none
asyncapi_published: false
note: >-
FireHydrant ships a real, documented webhook surface — with configuration CRUD in the REST API,
HMAC request signing, a delivery history endpoint, and published example payloads — but publishes
NO AsyncAPI document and no event-schema registry. The event catalog below is transcribed from
the webhooks documentation and the OpenAPI; nothing here is invented. Emitting `type: Webhooks`,
not `type: AsyncAPI`.
delivery:
transport: http-post
destination: one endpoint URL per webhook configuration
fan_out: >-
Each webhook configuration sends to exactly one destination; multiple destinations require
multiple configurations.
status: Active | Inactive (inactivating preserves the config without delivering)
security:
signature_header: fh-signature
algorithm: HMAC-SHA256
encoding: hex digest
signed_content: raw request body
secret: per-webhook shared secret set at configuration time
docs: https://docs.firehydrant.com/docs/webhooks
event_subscriptions:
- name: Change Events
description: Fires whenever a new Change Event is created within FireHydrant.
- name: Incidents
description: Fires whenever any change occurs on any public incident.
- name: Incidents (Private)
description: Same as Incidents, but for private incidents.
- name: Signals
status: BETA
description: Fires on any Signals/alert activity, including alert state changes.
incident_triggering_events:
- name: Chat events
description: A new chat message posted into the FireHydrant timeline from the web UI or an incident channel.
- name: Follow-up updates
description: Follow-ups created or updated (e.g. marked done) on incidents.
- name: General updates
description: Any change to any field on an incident, including custom fields.
- name: Milestone changes
description: Any change to the current milestone.
- name: Milestone timestamp changes
description: Edits to any milestone timestamp, regardless of the current milestone.
- name: Notes and infrastructure updates
description: Posting incident notes or changing impacted infrastructure.
- name: Role assignments
description: Users assigned or de-assigned roles on an incident.
- name: Task updates
description: Tasks created or updated on an incident.
- name: Team assignments
description: Teams assigned or unassigned from an incident.
payload:
envelope: '{ "data": { "incident": { ... } } }'
example_published: true
example_url: https://docs.firehydrant.com/docs/webhooks
incident_fields:
- id
- number
- name
- description
- summary
- current_milestone
- milestones[] (type, occurred_at, duration, updated_by_id, updated_by_type)
- severity (slug, description, type)
- priority (slug, description)
- customer_impact_summary
- incident_channels[] (source, name, url, status)
- conference_bridges[]
- role_assignments[]
- tasks[]
- follow_ups[]
- impacts[]
- labels[]
- tags[]
- counts (starred_events, starred_messages)
- created_at
- started_at
- private_status_page_url
management_api:
operations:
- listWebhooks
- createWebhook
- getWebhook
- updateWebhook
- deleteWebhook
- listWebhookDeliveries
paths:
- /v1/webhooks
- /v1/webhooks/{webhook_id}
- /v1/webhooks/{webhook_id}/deliveries
source: openapi/firehydrant-api-openapi.yml
signals_targets:
description: >-
Signals additionally supports its own webhook alert TARGETS — outbound destinations an alert can
page — configured through a separate resource.
operations:
- listSignalWebhookTargets
- createSignalWebhookTarget
- getSignalsWebhookTarget
- updateSignalsWebhookTarget
- deleteSignalsWebhookTarget
path: /v1/signals/webhook_targets
docs: https://docs.firehydrant.com/docs/signals-webhook-alert-targets
inbound_events:
description: >-
FireHydrant is also an event CONSUMER — Signals ingests alerts from 20+ named event sources
(Alertmanager, AWS CloudWatch, Datadog, Grafana, Honeycomb, Sentry, PagerDuty, Pingdom,
Dynatrace, Chronosphere, CircleCI, Cloudflare, Azure Monitor, MongoDB Atlas, SignalFX,
Site24x7, StatusCake, GCP Service Health, Stackdriver, email, and a generic webhook source).
ingest_url_operation: getSignalIngestUrl
event_sources_operation: listSignalEventSources
docs: https://docs.firehydrant.com/docs/generic-webhook-event-source
gaps:
- No AsyncAPI document is published.
- No JSON Schema is published for any webhook payload; only a prose example.
- No event-type identifier appears in the payload envelope — a consumer must infer the event from the diff.
- No documented retry/backoff policy for failed deliveries, though a deliveries endpoint exists.
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/firehydrant-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.