SolarWinds Orion
EvoHub receives SolarWinds Orion (SolarWinds Platform) alerts through the Send a GET or POST Request to a Web Server action. The same body goes on the alert's trigger action and its reset action; the reset resolves the EvoHub alert.
Set it up
Create the integration
In EvoHub, go to On-Call → Integrations → + Add Integration, choose SolarWinds Orion, pick an Escalation Policy and click Create Integration. Copy the Webhook URL.
{"state":"trigger","alert_id":"${N=Alerting;M=AlertID}","name":"${N=Alerting;M=AlertName}","message":"${N=Alerting;M=AlertMessage}","severity":"${N=Alerting;M=Severity}","object":"${N=SwisEntity;M=Caption}","url":"${N=Alerting;M=AlertDetailsURL}"}
A body whose variables are not filled in is answered with success and opens no alert. Orion inserts values without escaping them; EvoHub repairs line breaks, quotes and backslashes (a path such as D:\Data) that end up inside values. A body that still cannot be read is not refused — see Integrations overview.
What EvoHub reads
| EvoHub alert | Taken from |
|---|---|
| Title | name on object, for example Node is down on edge-rtr-03. |
| Description | message. |
| Labels | alert_id, object, url. |
Severity
| Orion severity | EvoHub severity |
|---|---|
| Critical | critical |
| Serious | high |
| Warning | medium |
| Notice | low |
| Informational | info |
Resolve and deduplication
An alert is identified by the alert definition and the object it fired on, so each node or interface is its own EvoHub alert. "state":"reset" resolves it.
SolarWinds Observability (SaaS) uses its own payload variables, not Orion's. A fully custom webhook payload with the same keys is read the same way; without a "state":"reset" delivery, those alerts are resolved in EvoHub.

