# Recipient List

> Send one message to multiple recipients at once — controlled multicast.

- **Category**: Integration
- **Subcategory**: Message Routing
- **Canonical URL**: https://designpattern.fyi/patterns/recipient_list/

---

## Description
Clean, reusable architecture pattern.


## Use Cases
Notification dispatch — a NotificationTriggered message specifies recipientIds=[user1, user2, user5]. Recipient List router sends to email-channel, push-channel, and sms-channel based on each user's registered preferences. Three different delivery paths from one message.





## Trade-offs


### Advantages

- Targeted delivery — only intended recipients get the message

- More precise than Pub-Sub broadcast for dynamic recipient sets

- List can be computed at runtime from a registry or message content

- Pairs naturally with Scatter-Gather for collect-all-responses flows




### Considerations & Drawbacks

- N recipients = N message copies — increases broker traffic

- Recipient list computation adds latency to routing

- List registry becomes a critical dependency

- Error on one recipient delivery does not automatically retry others







---
**Reference**: [Original Source](https://www.enterpriseintegrationpatterns.com/patterns/messaging/RecipientList.html)

