---
title: "Communication"
description: "Audience consent, notification orchestration, outbound delivery, durable history, and verified inbound webhooks."
tags: ["packages","communication","audiences","notifications","delivery","webhooks"]
---

Communication packages separate who should receive a message, what the message means, how it leaves the application, and how provider callbacks return. Applications can adopt each boundary independently or compose the complete path.

## Audiences

| Package                                                                        | Plan                       | Responsibility                                                                 |
| ------------------------------------------------------------------------------ | -------------------------- | ------------------------------------------------------------------------------ |
| [`@playstack/audiences`](/docs/packages/communication/audiences)               | <PlanTierDot tier="pro" /> | Lists, consent evidence, subscriptions, segments, and signed preference flows. |
| [`@playstack/audiences-react`](/docs/packages/communication/audiences-react)   | <PlanTierDot tier="pro" /> | Headless subscribe and preference-center state for React.                      |
| [`@playstack/nest-audiences`](/docs/packages/communication/nest-audiences)     | <PlanTierDot tier="pro" /> | Guarded public and management routes plus remote-list workers for NestJS.      |
| [`@playstack/audiences-resend`](/docs/packages/communication/audiences-resend) | <PlanTierDot tier="pro" /> | Resend Contacts and Segments remote authority.                                 |

## Notifications and delivery

| Package                                                                              | Plan                        | Responsibility                                                     |
| ------------------------------------------------------------------------------------ | --------------------------- | ------------------------------------------------------------------ |
| [`@playstack/notifications`](/docs/packages/communication/notifications)             | <PlanTierDot tier="free" /> | Typed user-directed notifications across mail and an in-app inbox. |
| [`@playstack/notifications-react`](/docs/packages/communication/notifications-react) | <PlanTierDot tier="pro" />  | Headless React inbox state and optimistic mutations.               |
| [`@playstack/nest-notifications`](/docs/packages/communication/nest-notifications)   | <PlanTierDot tier="pro" />  | NestJS notification queue-consumer binding.                        |
| [`@playstack/delivery`](/docs/packages/communication/delivery)                       | <PlanTierDot tier="free" /> | Queued provider dispatch and shared suppression policy.            |
| [`@playstack/delivery-history`](/docs/packages/communication/delivery-history)       | <PlanTierDot tier="pro" />  | Durable provider-neutral delivery timelines.                       |
| [`@playstack/nest-delivery`](/docs/packages/communication/nest-delivery)             | <PlanTierDot tier="free" /> | NestJS delivery worker and unsubscribe endpoints.                  |
| [`@playstack/webhooks`](/docs/packages/communication/webhooks)                       | <PlanTierDot tier="free" /> | Verified, idempotent Stripe, GitHub, and custom webhook receipt.   |

## Composition rule

Audiences resolves recipients but does not compose campaigns. Notifications resolves user preferences and renders typed messages. Delivery applies suppression and selects a provider slot. Webhooks verify provider feedback at the application edge. Keeping these responsibilities separate prevents a mail vendor or framework from becoming part of the product contract.
