Notification Dispatch Queue
Notification Dispatch Queue accepts notification requests on the notifications.topic exchange and routes them by channel, so a producer publishes once and the per-channel workers pick up only what they handle. Messages are persistent and the queue is mirrored; a message that fails delivery three times is routed to the dead-letter queue for inspection rather than being dropped.
- Service type
- AMQP / RabbitMQ
Channels
notifications.dispatch
- Exchange
notifications.topic- Routing keys
notification.email.*
Notification Dispatch Queue AsyncAPI 2.6.0 · v1.0.0
RabbitMQ topic exchange that fans customer notification requests out to the email, SMS and push delivery workers.
-
uatamqps://rabbit-uat.digitalapi.ai:5671 amqp
notification.email.*
Notification requests routed by channel from the notifications.topic exchange into the notifications.dispatch queue.
- publish
-
Publish a notification request.
NotificationRequest
message
NotificationRequest
application/json
| Field | Type | Required | Description |
|---|---|---|---|
notificationId |
string (uuid) |
yes | Caller-generated id, used for deduplication. |
channel |
string |
yes | Delivery channel. Determines the routing key. |
recipient |
string |
yes | Email address, E.164 number, or device token. |
templateKey |
string |
yes | Template to render. |
locale |
string |
no | BCP 47 locale. Falls back to the account default. |
Sample payload
Example message — placeholder values
{
"notificationId": "00000000-0000-0000-0000-000000000000",
"channel": "email",
"recipient": "string",
"templateKey": "string",
"locale": "string"
}
Inline message schema
{
"type": "object",
"properties": {
"notificationId": { "type": "string", "format": "uuid" },
"channel": { "type": "string", "enum": ["email", "sms", "push"] },
"recipient": { "type": "string" },
"templateKey": { "type": "string" },
"locale": { "type": "string" }
},
"required": ["notificationId", "channel", "recipient", "templateKey"]
}
Sample payload
Example message — placeholder values
{
"notificationId": "00000000-0000-0000-0000-000000000000",
"channel": "email",
"recipient": "string",
"templateKey": "string",
"locale": "string"
}
- Brokers
amqps://rabbit-uat.digitalapi.ai:5671- Exchange
notifications.topic- Routing keys
notification.email.*