---
title: "Check notification channel availability for a recipient"
method: GET
path: "/api/v1/recipients/{recipient}/availability"
tags: ["Recipients"]
---

# Check notification channel availability for a recipient

`GET /api/v1/recipients/{recipient}/availability`

## Request

- Base URL: `https://wardenpoint.com` (the document declares no server; this is the origin it was published from)
- URL: `https://wardenpoint.com/api/v1/recipients/{recipient}/availability`
- Auth: API key in header `X-API-Key`

Every channel/provider pair this deployment knows, and whether an alert to this recipient could go out over it right now.

**Read `scope` before fixing anything.** An unavailable pair fails for one of two reasons, and they are repaired by different people in different places. `scope: "recipient"` means the person is the blocker — no contact of the required type, the contact is switched off, or the recipient itself is inactive; the account owner fixes that on the recipient. `scope: "installation"` means the deployment is the blocker — the mailer is not configured (`email_not_configured`), provider credentials are missing (`custom_asterisk_not_configured`, `sms_not_configured`), or telephony is unreachable (`asterisk_connection_failed`); the recipient's contacts may be perfectly fine and editing them changes nothing. `email_not_configured` in particular is a property of the installation, never of the person.

`reason` is a stable machine-readable code; new codes appear as channels are added, so treat an unrecognised one as "cannot fix automatically" and fall back on `scope`.

## Path parameters

- `recipient` string, uuid, required

## Response `200`

Availability check results

- object
  - `recipient_uuid` string, uuid
  - `recipient_name` string
  - `is_active` boolean: False switches every pair to unavailable with `recipient_inactive` — the contacts are not the problem.
  - `channels` object[]
    - `channel` string: Channel slug: text_message, voice_message, voice_call.
    - `provider` string: Provider slug: telegram, email, platform_asterisk, …
    - `available` boolean
    - `reason` string, nullable: Null when available. Otherwise the machine-readable blocker, e.g. `email_contact_missing`, `telegram_contact_missing`, `email_not_configured`, `sms_not_configured`, `asterisk_connection_failed`.
    - `scope` 'recipient' | 'installation', nullable: Null when available. `recipient` = fix the person (missing or disabled contact). `installation` = fix the deployment (mailer, credentials, telephony); the recipient is fine.

---

[API](https://skmtc.dev/wardenpoint/apis/wardenpoint-api.md) · [All operations](https://skmtc.dev/wardenpoint/apis/wardenpoint-api/llms.txt) · [OpenAPI document](https://skmtc.dev/wardenpoint/apis/wardenpoint-api/revisions/259ee445728e?raw)
