Node.js - topic.publish()
Publish an event (push based message) to a topic.
import { topic } from '@nitric/sdk'const updates = topic('updates').allow('publish')await updates.publish({something: 'amazing happened',})
Parameters
- Name
- payload
- Required
- Required
- Type
- Record<string, any>
- Description
- The payload to publish to the topic. 
 
- Name
- opts
- Optional
- Optional
- Type
- object
- Description
- Additional options when publishing a message to the topic. - Name
- delay
- Optional
- Optional
- Type
- number
- Description
- A number of seconds to delay the delivery of this message. 
 
 
 
Examples
Publish a message
Publishing messages to a topic will push a copy of the message to each of the topic's subscribers. By default, delivery occurs without a delay.
import { topic } from '@nitric/sdk'const updates = topic('updates').allow('publish')await updates.publish({something: 'amazing happened',})
Delaying message delivery
You can delay the delivery of messages sent to a topic. The current maximum delay is 7 days (604800 seconds).
import { topic } from '@nitric/sdk'const updates = topic('updates').allow('publish')const event = { example: 'delayed' }// 10 minute delayawait updates.publish(event, { delay: 600 })
Notes
- A service may subscribe to OR publish to a topic but not both.
Last updated on Feb 4, 2025