---
title: "Test Notification Channel"
method: POST
path: "/api/notification-channels/test"
tags: ["Notification Channels"]
---

# Test Notification Channel

`POST /api/notification-channels/test`

## Request

- Base URL: `https://uptimeify.io`
- URL: `https://uptimeify.io/api/notification-channels/test`
- Auth: HTTP bearer

POST /api/notification-channels/test

## Request body

- object
  - `type` 'email' | 'sms' | 'webhook' | 'incident_management' | 'slack' | 'discord' | 'teams' | 'pagerduty' | 'pushover' | 'opsgenie' | 'matrix' | 'jira' | 'allquiet' | 'telegram' | 'googlechat' | 'mattermost' | 'rocketchat' | 'ntfy' | 'gotify' | 'ilert' | 'grafanaoncall' | 'incidentio' | 'squadcast' | 'github' | 'gitlab' | 'linear' | 'servicenow' | 'lark' | 'dingtalk' | 'wecom', required
  - `config` object
  - `dryRun` boolean: true only validates the configuration and sends nothing.
  - `organizationId` union
    - integer
    - string
  - `customerId` union
    - integer
    - string
  - `websiteId` union
    - integer
    - string

## Response `200`

Successful response

- object: Delivery problems are reported here with 200, not as an error status.
  - `success` boolean, required
  - `mode` 'validate' | 'send', required
  - `message` string, required
  - `validation` object, required
    - `ok` boolean, required
    - `errors` string[], required
    - `warnings` string[], required
  - `request` object, nullable, required
    - `url` string, nullable, required: Tokens in the URL are redacted.
    - `method` string, required
    - `timeoutSeconds` integer, required
    - `headers` object, required: Authorization, X-Api-Key and secret headers redacted.
    - `bodyPreview` string, required
    - `bodySize` integer, required
  - `response` object, nullable, required: null for dryRun and when nothing was sent.
    - `reachable` boolean, required
    - `ok` boolean, required
    - `rateLimited` boolean, required
    - `statusCode` integer, nullable, required
    - `statusText` string, nullable, required
    - `durationMs` number, nullable, required
    - `headers` object, required
    - `bodyPreview` string, nullable, required
    - `bodySize` integer, nullable, required

## Other responses

- `400`: Invalid or missing parameters.
- `401`: Missing, invalid or expired API token.
- `500`: Unexpected server error.

---

[API](https://skmtc.dev/uptimeify/apis/uptimeify-rest-api.md) · [All operations](https://skmtc.dev/uptimeify/apis/uptimeify-rest-api/llms.txt) · [OpenAPI document](https://skmtc.dev/uptimeify/apis/uptimeify-rest-api/revisions/2129a771ee7e?raw)
