Notifications

Send one message to multiple recipients (async)

Queues one notification per recipient. Always asynchronous: the 202 means jobs were queued, not that anything was delivered.

COMPARE total_requested WITH queued_count ON EVERY CALL. They differ when a recipient is inactive — that recipient is skipped and nothing else in the response says so. queued_recipient_uuids lists exactly who was queued, in UUIDs you can match against what you sent; the difference between that list and your input is who was silently skipped.

A request in which NOT ONE recipient could be queued is refused with 422 and code: BULK_NOTHING_QUEUED rather than answered 202 with a zero count, because "successfully queued nobody" reads as success.

Unknown, deleted or other-company UUIDs are a 422 on the request as a whole — nothing is queued, so a typo cannot half-send a batch. Follow each queued notification through GET /api/v1/notifications/{notification}/status; this endpoint returns no notification UUIDs, so find them via GET /api/v1/notifications filtered by recipient.

post/api/v1/notifications/send-bulk-async

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/notifications/send-bulk-async
  • Auth: API key in header X-API-Key

Request body

recipient_uuidsstring[] required

Recipients to notify. Every UUID must belong to this company and must not be deleted — anything else is a 422 naming the offending index, not a silent skip.

messagestring required

Text delivered to every recipient in the call.

channel_typestring required

Channel slug used for all of them: text_message, voice_message, voice_call, email, sms. Unlike the single-recipient send there is no automatic routing here — you pick the channel, and a recipient without a contact of that type simply fails on delivery.

providerstring required

Provider slug for that channel: telegram, platform_asterisk, smtp, … The valid pairs are the ones in the capabilities endpoint.

audio_filestring nullable

Audio to play, for voice channels only.

priority'low' | 'normal' | 'high' | 'critical'

Defaults to normal.

queuestring nullable

Named queue to dispatch onto. Defaults to default; leave it alone unless you have a reason.

Example request

{
  "channel_type": "text_message",
  "provider": "telegram"
}

Response

At least one notification was queued.

successboolean
queuedboolean
messagestring
total_requestedinteger

How many UUIDs you sent.

queued_countinteger

How many were actually queued. Lower than total_requested means inactive recipients were skipped — compare the two.

queued_recipient_uuidsstring[]

The recipients that were queued, by UUID. Diff against your input to see who was skipped.

queuestring

Example response

{
  "success": true,
  "queued": true
}

Changes

No recorded changes to this operation across all 1 revision of this API.