acked. Docs Open Acked
DocsConnect

Connect sources

Receive signals from monitoring tools, email, or custom JSON.

Sources send signals into Acked

Vendor connections can route one credential across services. Direct sources stay bound to one service.

Choose a source model

ModelSource typesWhere to create itHow it selects a service
Vendor connectionDatadog, Grafana, Alertmanager, CustomIntegrations → SourcesOrdered routing rules, then a required fallback service.
Direct sourceAcked webhook, PagerDuty Events API v2, emailThe service’s Sources sectionThe credential always selects its bound service.

Open Integrations → Sources to review both models across the organization.

Create a vendor connection

Connect each monitoring vendor once, then route its payload attributes to Acked services.

  1. Open Integrations → Sources.
  2. Select Add vendor connection.
  3. Name the connection and choose its vendor.
  4. Select the fallback service for unmatched events.
  5. Add ordered routing rules when the vendor serves several services.
  6. Create the connection and copy its ingest URL.

Each routing rule is a case-sensitive exact match over an attribute and value. The first match wins. Datadog exposes values from its routing object. Grafana and Alertmanager expose each alert’s string labels. Custom mappings can output a routing object.

A payload cannot supply an Acked service ID. Stored rules select verified services. Missing, empty, and new values go to the fallback service.

Create a direct source

  1. Open Services and select the service.
  2. Find Sources and select Add source.
  3. Name the sender and choose its type.
  4. Create the source.
  5. Copy its ingest URL, email address, or routing key.

Keep every source credential secret. Anyone who holds one can create alerts through that source.

Webhook source

Use Webhook when the sender can send Acked JSON. Send the request to the ingest URL shown after source creation. The Alert API guide explains the native payload and response.

curl -X POST "<YOUR-INGEST-URL>" \
  -H "content-type: application/json" \
  -d '{
    "event_key": "checkout-latency",
    "title": "Checkout latency above 2 seconds",
    "priority": "high"
  }'

Send "action":"resolve" with the same event key when the condition clears.

Datadog

  1. Create a Datadog vendor connection under Integrations → Sources.
  2. Select a fallback service and add rules for the service, team, or environment routing attributes.
  3. Copy the ingest URL and payload shown by Acked.
  4. In Datadog, open Integrations → Webhooks → New.
  5. Use the ingest URL as the webhook URL.
  6. Paste the Acked payload into Datadog’s Payload field.
  7. Add the webhook to the monitor notification list.

The payload maps Datadog alert and recovery transitions to the Acked alert lifecycle. It maps P1 to critical, P2 to high, P3 to medium, P4 to low, and P5 to informational. Its routing attributes come from Datadog tags. The fallback service handles monitors without matching tags.

Prometheus Alertmanager

Create an Alertmanager vendor connection under Integrations → Sources. Select a fallback service and add rules over Alertmanager labels. It accepts the standard webhook format, including batches.

receivers:
  - name: acked
    webhook_configs:
      - url: <YOUR-INGEST-URL>
        send_resolved: true

Acked creates one alert for each firing item. It routes each item independently, uses its fingerprint for deduplication, and resolves recovered items.

Grafana Alerting

  1. Create a Grafana Alerting vendor connection under Integrations → Sources.
  2. Select a fallback service and add rules over Grafana alert labels.
  3. Create a Grafana contact point that uses the Acked ingest URL.
  4. Keep Grafana’s default webhook body.
  5. Send a test notification from Grafana.

Acked creates and routes one alert for each item in alerts[]. It uses the item fingerprint for deduplication and recovery.

PagerDuty Events API v2

This source is a compatibility layer. It accepts existing PagerDuty Events API v2 payloads.

  1. Open the target service and create a PagerDuty Events API v2 source.
  2. Change the sender endpoint to https://api.acked.dev/v2/enqueue.
  3. Replace the routing key with the key shown by Acked.
  4. Keep the existing event payload.

Acked accepts trigger, acknowledge, and resolve actions. It preserves the case-sensitive dedup_key.

Email

Open the target service, create an Email source, and copy its address. Each message opens a separate alert. The subject becomes the alert title, and the message becomes the details.

Email alerts use high priority and high urgency. Message content cannot override those values.

Custom payload mapping

Use a central Custom vendor connection when a vendor sends a fixed JSON shape that Acked does not support directly.

  1. Paste a representative payload into the tester.
  2. Map its values to title, event key, priority, urgency, and action.
  3. Output a routing object for attributes that should select services.
  4. Select a fallback service and add routing rules.
  5. Preview the resulting alert.
  6. Save the connection and send a vendor test.

Rotate or revoke a source

Open a vendor connection from Integrations → Sources. Open a direct source from its service. Select Reveal to show its credential. Select Rotate when the credential is exposed or must change.

Rotation replaces the credential. Revocation disables the source. The previous credential stops working within one minute. Follow the source troubleshooting steps when a sender stops working.

Update the sender before you revoke its only working credential.