BlameTrail
IntegrationsAlert Ingestion

Provider Setup

Configure Prometheus, Datadog, CloudWatch, and generic alerting tools to send alerts to BlameTrail.

Provider Setup

Each provider has a dedicated endpoint that accepts its native webhook format. All endpoints require an X-Alert-Token header.

Prometheus / AlertManager

Configure AlertManager to send webhooks to BlameTrail:

# alertmanager.yml
receivers:
  - name: blametrail
    webhook_configs:
      - url: https://blametrail.com/api/alerts/ingest/prometheus
        http_config:
          headers:
            X-Alert-Token: "alt_your_token_here"

BlameTrail accepts the standard AlertManager webhook payload with alerts[] containing status, labels, annotations, startsAt, endsAt, and generatorURL.

Datadog

Configure a Datadog webhook integration:

  1. In Datadog, go to Integrations > Webhooks
  2. Create a new webhook with:
    • URL: https://blametrail.com/api/alerts/ingest/datadog
    • Custom Headers: X-Alert-Token: alt_your_token_here
  3. Use the webhook in your monitor notification with @webhook-blametrail

Signature verification (optional)

For additional security, you can configure HMAC-SHA256 signature verification:

  1. Add a signing secret to your BlameTrail ingest token via Settings > Integrations > Alert Ingestion
  2. Configure Datadog to sign payloads using the same secret
  3. BlameTrail verifies the X-Datadog-Signature header using timing-safe comparison

AWS CloudWatch

CloudWatch alerts are delivered via SNS notifications:

  1. Create an SNS topic in AWS
  2. Add an HTTPS subscription with the endpoint: https://blametrail.com/api/alerts/ingest/cloudwatch
  3. Include X-Alert-Token in the subscription's HTTP headers
  4. BlameTrail automatically confirms the SNS subscription
  5. Configure CloudWatch Alarms to publish to the SNS topic

BlameTrail validates that SNS subscription confirmation URLs use HTTPS and originate from *.amazonaws.com domains.

Generic

The generic endpoint accepts a simple JSON payload for any alerting tool not listed above:

{
  "title": "High CPU Usage",
  "description": "CPU usage exceeded 90% for 5 minutes",
  "severity": "warning",
  "status": "firing",
  "source": "custom-monitor",
  "labels": {
    "host": "web-01",
    "region": "us-east-1"
  }
}

Supported fields:

FieldRequiredDescription
titleYesAlert title
descriptionNoDetailed description
severityNocritical, error, warning, or info (default: warning)
statusNofiring or resolved (default: firing)
sourceNoSource identifier for fingerprinting
labelsNoKey-value pairs for grouping and deduplication
fingerprintNoCustom fingerprint (auto-generated from title + source + labels if omitted)

On this page