Monitoring integrations
Push alert-worthy events to a webhook, a syslog/CEF collector or an SNMP trap receiver - payload shape, signing, and what is delivered.
Monitoring > Integrations connects aethercert to a monitoring system, SIEM or SNMP receiver you already run. There are two independent halves: push integrations aethercert sends alerts to as they happen, covered here, and a metrics endpoint your own tooling pulls from.
Both require the Pro plan or an MSP tier. Configuring them is an admin or owner action, the same as a deploy target - a member can see what is configured but not change it.
The three sinks
| Type | Delivery | Best for |
|---|---|---|
| Webhook | An HTTP POST of a JSON body, HMAC-SHA256 signed when you set a secret | Slack-compatible endpoints, PagerDuty- or Opsgenie-style generic webhooks, custom automation |
| Syslog / CEF | An RFC 5424 syslog frame carrying a CEF body, over TCP+TLS, plain TCP or UDP | A SIEM - Splunk, QRadar, Microsoft Sentinel, Elastic - or CheckMK's Event Console |
| SNMP trap | An SNMPv2c or authenticated and encrypted SNMPv3 trap | An existing NMS trap receiver: Nagios, PRTG, SolarWinds, Zabbix |
aethercert only ever sends an SNMP trap. It runs no SNMP agent of its own, so there is nothing to poll or walk.
Webhook
One field: the http(s) URL. Set an HMAC secret and every request carries
x-aethercert-signature: sha256=<hex digest of the raw body>computed with HMAC-SHA256 over the exact bytes of the body. Verify against the raw body, not a re-serialized copy.
The URL you give is customer-supplied, so the request goes through the same SSRF guard as every other outbound fetch in the product, including a connect-time re-check against DNS rebinding.
Syslog / CEF
| Field | Notes |
|---|---|
| Host and port | Required. The form defaults to 6514, the RFC 5425 TLS syslog port. |
| Protocol | tcp-tls (recommended), tcp or udp. |
| Allow self-signed | Only meaningful for tcp-tls. Off by default, which verifies the collector's certificate. |
SNMP trap
| Field | Notes |
|---|---|
| Host and port | Required. The form defaults to 162. |
| Version | v2c or v3. |
| Community | v2c only. Stored in Vault. |
| Username, auth and privacy | v3 only. Auth protocol SHA or SHA256, privacy protocol AES or AES256. The auth passphrase must be at least 8 characters. |
The payload
Every sink formats the same canonical alert into its own wire format - JSON for a webhook, a CEF extension for syslog, varbinds for a trap.
{
"event_type": "certificate.expiring_soon",
"severity": "warning",
"occurred_at": "2026-09-06T12:00:00.000Z",
"organization_id": "<organization-id>",
"resource": { "type": "certificate", "id": "<certificate-id>" },
"message": "\"app.example.com\" expires within 14 days"
}severity is info, warning or critical. resource is null for an event that is
not about one object.
What gets delivered
A curated subset of the event log is pushed - the events worth paging on. Routine bookkeeping is not, because a feed carrying every certificate rename would bury the failures.
Alert-worthy events include: a job or a deployment failing after its retries, an agent going offline and coming back, a certificate expiring within 14 days or already expired, a certificate revoked, an agent enrolled or deleted, a certificate authority or deploy target created, changed or deleted, a CA connector denying or replaying a sign request, a CRL or CA certificate expiring or expired, an unreachable CDP, an ESC6 finding, a fleet update that failed or rolled back, and an issuance notification that exhausted its retries.
Every enabled integration receives every alert
There is no per-integration severity or event-type filter to configure today. If you
need one webhook for critical paging and another for everything else, filter on the
receiving side using severity and event_type.
Testing and delivery status
Send test delivers one synthetic alert synchronously, so you can confirm the receiver is reachable and correctly configured without waiting for a real event.
Each integration shows the outcome of its last delivery - success or failure, when, and a short error. A failed delivery is not retried. A persistent failure is worth checking: wrong host, an expired collector certificate, a revoked credential. Delivery runs after the event is already recorded, so a slow or broken receiver never delays or fails the operation that produced the event.
No published source IP range
Syslog, SNMP-trap and webhook deliveries originate from aethercert's cloud infrastructure, which does not publish a stable outbound IP range. If your collector requires source-IP allow-listing rather than just an open port, ask support for the current egress range before relying on IP-based filtering.
Email notifications
Send an email through your own Microsoft 365 or SMTP infrastructure the moment a certificate is issued - mail apps, recipients, retries and history.
Monitoring API
The Prometheus-format metrics endpoint: issuing a key, every metric it exposes, and pointing CheckMK, Prometheus, Grafana or Zabbix at it.