← Integrations
Built-in integrationWebhooks

PagerDuty

Securd includes a PagerDuty integration in Settings. Once connected, threat events create incidents. For custom routing, use the webhook with the Events API v2.

Integration steps for PagerDuty

Built-in integration

In the console, under Settings, Integrations, PagerDuty, connect the account and select the service.

Via webhook and Events API v2

bridge.py
import httpx
def page(routing_key: str, ev: dict) -> None:
    httpx.post("https://events.pagerduty.com/v2/enqueue", json={
        "routing_key": routing_key,
        "event_action": "trigger",
        "dedup_key": f"securd-{ev['data'].get('domain')}",
        "payload": {
            "summary": f"Securd {ev.get('event')}: {ev['data'].get('domain')} in {ev['data'].get('site_name')}",
            "severity": "warning",
            "source": "securd-agent-dns",
        },
    }, timeout=10)
Verification

Two queries: one confirms ingestion, one lists first-seen destinations by policy.

Verification

text
A threat.detected event creates an incident on the selected service.

Deduplication

text
Repeated resolutions of the same host create one incident.

Evaluate Agent DNS with your own agent traffic

Forward events from a single policy and review them with your security team.