Generic webhook

Send OpenTelemetry / CloudEvents alerts to on-call with CallHeim.

CloudEvents 1.0 structured-mode JSON events (Knative, Azure Event Grid, or your own CloudEvents producer). This is not an OpenTelemetry (OTLP) receiver. CallHeim maps the payload, collapses repeats within five minutes, and pages whoever is on call for the service it belongs to.

opentelemetryalso accepts: otel, cloudevents, cloudevent, ce

Setting it up

Create an Integration in CallHeim and choose OpenTelemetry / CloudEvents from the Catalog. You get an ingest URL for that integration — paste it into OpenTelemetry / CloudEvents’s webhook configuration. The snippet beside this is the shape it expects, with {{WEBHOOK_URL}} replaced by your real URL.

If you enable request signing on this integration, CallHeim requires a valid HMAC-SHA256 signature in the X-ItOnCall-Signature or X-Hub-Signature-256 header on every request to it. Without a signing secret, the ingest URL itself is the credential.

CallHeim includes a payload mapping for OpenTelemetry / CloudEvents’s webhook format, built and tested against sample payloads.

OpenTelemetry / CloudEvents webhook documentation →

Setup snippetopentelemetry
# POST a CloudEvents 1.0 structured event:
curl -X POST "{{WEBHOOK_URL}}" \
  -H 'content-type: application/cloudevents+json' \
  -d '{"specversion":"1.0","id":"...","source":"...","type":"...",
       "subject":"...","data":{"message":"...","severity":"critical"}}'
Example shape written by us; check OpenTelemetry / CloudEvents’s current documentation.

After it arrives

What CallHeim does with OpenTelemetry / CloudEvents alerts.

Anything that can POST a JSON object can raise an alert. A no-code mapping (dot and bracket paths — a JSONPath subset, not the full spec) picks out the fields you care about, and the alert joins the same pipeline as every catalogued source.

CallHeim maps OpenTelemetry / CloudEvents’s own severity to a P1–P5 level and shows a separate, explainable severity suggestion — a published keyword ruleset plus your own resolved-incident history — that a person can apply. How severity is suggested →

Each alert source is bound to a service, and the service’s escalation policy (or its team’s) sets who is paged. Alerting and escalation →

CallHeim closes an incident on a recovery event only for sources whose recovery payload it recognises (or that you map). For the others, a person resolves the incident.

The thresholds it passes through

Dedup window
300s
Flap threshold
4 transitions / 600s
Title correlation
similarity ≥ 0.6, same source and service
Group window default
600s

All defaults are published. You can turn title correlation off or change its threshold, and set the window on your own noise rules; the dedup window and the flap settings are fixed. How alerts are processed →

CallHeim

Point OpenTelemetry / CloudEvents at CallHeim and see what it does with your alerts.

Explore the platform, connect one source, and send yourself a test page by e-mail (early access).

Early access · every workspace starts with a 14-day trial for up to 5 seats, no card required