---
title: "Get notification channel"
method: GET
path: "/notification-channels/{channelId}"
tags: ["notifications"]
---

# Get notification channel

`GET /notification-channels/{channelId}`

Returns one notification channel. Developer, manager, or admin only.

## Path parameters

- `channelId` string, required

## Query parameters

- `remoteNode` string

## Response `200`

Notification channel

- NotificationChannel — Notification channel. Secrets are never returned.
  - `id` string, required — Stable channel ID
  - `name` string, required — Human-readable channel name
  - `type` 'email' | 'webhook' | 'slack' | 'telegram' | 'teams', required — Notification delivery provider
  - `enabled` boolean, required — Whether this channel can receive notifications
  - `email` NotificationEmailTarget — Email notification target. SMTP transport is configured in workspace notification settings.
    - `from` string — Sender address. Defaults to the workspace SMTP sender.
    - `to` string[], required — Primary recipients
    - `cc` string[] — CC recipients
    - `bcc` string[] — BCC recipients
    - `subjectPrefix` string — Subject prefix. Defaults to [DAGU].
    - `subjectTemplate` string — Optional email subject template. When set, it replaces the generated subject.
    - `bodyTemplate` string — Optional email body template. When omitted, Dagu sends the default notification body.
    - `attachLogs` boolean — Attach DAG and step logs when available
  - `webhook` NotificationWebhookTarget — Public outbound webhook target details
    - `urlConfigured` boolean, required — Whether a webhook URL is configured
    - `urlPreview` string — Redacted URL preview
    - `headers` object — Header names with redacted values
    - `hmacSecretConfigured` boolean, required — Whether an HMAC secret is configured
    - `messageTemplate` string — Optional rendered message added to the webhook JSON payload as message.
    - `bodyTemplate` string — Optional request body template that replaces the default Dagu payload.
    - `allowInsecureHttp` boolean — Whether this target allows plain HTTP webhook URLs
    - `allowPrivateNetwork` boolean — Whether this target allows loopback or private network webhook targets
  - `slack` NotificationSlackTarget — Public Slack target details
    - `webhookUrlConfigured` boolean, required — Whether a Slack incoming webhook URL is configured
    - `webhookUrlPreview` string — Redacted Slack webhook URL preview
    - `messageTemplate` string — Optional Slack message template. When omitted, Dagu sends the default notification text.
  - `telegram` NotificationTelegramTarget — Public Telegram target details
    - `botTokenConfigured` boolean, required — Whether a Telegram bot token is configured
    - `botTokenPreview` string — Redacted Telegram bot token preview
    - `chatId` string — Telegram chat ID
    - `topicId` string — Optional Telegram topic ID (message thread ID) for forum groups
    - `messageTemplate` string — Optional Telegram message template. When omitted, Dagu sends the default notification text.
  - `teams` NotificationTeamsTarget — Public Microsoft Teams target details
    - `webhookUrlConfigured` boolean, required — Whether a Microsoft Teams incoming webhook URL is configured
    - `webhookUrlPreview` string — Redacted Microsoft Teams webhook URL preview
    - `messageTemplate` string — Optional Teams message template. When omitted, Dagu sends the default notification text.
  - `createdAt` string, date-time, required
  - `updatedAt` string, date-time, required
  - `updatedBy` string — User ID that last updated the channel

## Other responses

- `403` — Forbidden - insufficient permissions
- `404` — Notification channel not found
- `default` — Unexpected error

---

[API](https://skmtc.net/dagucloud/apis/dagu.md) · [All operations](https://skmtc.net/dagucloud/apis/dagu/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/dagucloud/dagu/revisions/93cc41f2018a/schema)
