Tours & Events

Notifications

Send transactional WhatsApp, email, or bulk notifications

Notification endpoints fan out messages to one recipient (WhatsApp/email) or many (bulk). All endpoints require an authenticated principal that is not a guest.

Resource overview

POST/api/notifications/whatsappAPI key · SessionPermissions: notifications.send
POST/api/notifications/emailAPI key · SessionPermissions: notifications.send
POST/api/notifications/bulkAPI key · SessionPermissions: notifications.send

Send WhatsApp

POST/api/notifications/whatsappAPI key · SessionPermissions: notifications.send
NameTypeRequiredDescription
tostringRequiredE.164 phone number, e.g. `+14155551234`.
messagestringRequiredMessage body. Capped at the provider's per-message limit.
200
{ "success": true }

Send email

POST/api/notifications/emailAPI key · SessionPermissions: notifications.send
NameTypeRequiredDescription
tostringRequiredRecipient email.
subjectstringRequiredSubject line.
htmlstringRequiredHTML body.
textstringOptionalPlain-text fallback. Auto-derived from `html` when omitted.
200
{ "success": true, "messageId": "msg-uuid" }

Bulk send

POST/api/notifications/bulkAPI key · SessionPermissions: notifications.send
NameTypeRequiredDescription
typestringRequired`email`, `whatsapp`, or `both`.
recipientsstringOptional`team`, `guests`, or `all`. Default: guests
eventIdstringOptionalRequired when `recipients=guests` — scopes to that event's confirmed guests.
subjectstringOptionalRequired for `email` / `both`.
htmlstringOptionalRequired for `email` / `both`.
messagestringOptionalRequired for `whatsapp` / `both`.

Recipient resolution

  • team — every user with role admin, coordinator, or team_lead in your org.
  • guests (+ eventId) — every confirmed guest on that event.
  • all — currently a no-op; future-reserved.
200
{
  "success": true,
  "recipientCount": 42,
  "results": {
    "email":    { "guest@example.com": { "success": true } },
    "whatsapp": { "+14155551234":      { "success": true } }
  }
}

On this page