Skip to main content

Custom Workflows

You can send Causely’s structured notification payload to any destination. Point notif_config_url at CauselyBot (which forwards to the endpoints you configure there) or at any URL that accepts the payload.

Routing and rules for Managed Notifications are configured in the Causely UI:
Set up notification routing in the UI

Mediator-based configuration

Enable the executor and define where to send notifications by creating a Kubernetes Secret in the causely namespace.

  1. Enable the executor and webhook in your Helm values (for example causely-values.yaml):
notifications:
webhook:
enabled: true
  1. Create a Secret that describes this notification config (use stringData so values are plain text; if you use data, values must be base64-encoded):
apiVersion: v1
kind: Secret
type: Opaque
metadata:
name: prometheus-notification-config-causelybot
namespace: causely
labels:
causely.ai/notif-config: CauselyBot
stringData:
notif_config_name: causelybot-webhook
notif_config_global: "false"
notif_config_type: CauselyBot
notif_config_url: https://causelybot.example.com/webhook # or in-cluster: http://causelybot.bot.svc.cluster.local:5000/webhook
notif_config_token: "your-optional-bearer-token" # optional; if set, sent as Authorization: Bearer <token>
notif_config_filters: "[]"
notif_config_filters_enabled: "true"
note

notif_config_token is optional. When set, Causely sends it as Authorization: Bearer <token> so your endpoint or CauselyBot can authenticate the request.

  1. Install or upgrade the agent so the executor and notification config are applied:
causely agent install --cluster-name <cluster-name> --values ./causely-values.yaml

Example: GitHub via CauselyBot

  1. Deploy CauselyBot and configure a webhook with hook_type: github, url: "owner/repo", and a GitHub token (repo and issues scope). Optionally set assignee in CauselyBot’s config.
  2. In the Secret above, set notif_config_url to CauselyBot’s webhook URL and notif_config_token to CauselyBot’s auth token.
  3. Causely sends notifications to CauselyBot; CauselyBot creates or updates GitHub issues from the payload.
tip

You can assign an issue to GitHub Copilot by setting the assignee to copilot-swe-agent, which will trigger Copilot to analyze the issue and suggest a fix in a pull request.

Example: Send straight to n8n

  1. In n8n, add a Webhook node to a workflow and activate it to get the webhook URL.
  2. Create a Secret with the same structure as above and set notif_config_url to that n8n webhook URL. Causely will POST the payload directly to n8n.
  3. In n8n, read the incoming JSON, for example name, entity, severity, description, link from the notification payload, and use it in later nodes (Slack, email, Linear, etc.).
n8n Workflow Example

Notification payload format

Causely sends the same structured JSON to all webhook destinations. For field descriptions and an example, see Notification Payload Format.