Skip to main content
Triggering a workflow starts the execution of a notification pipeline in Novu. A workflow is triggered when an event is sent to Novu. When a workflow is triggered, Novu resolves the target subscribers, evaluates workflow logic, and executes each configured step to deliver notifications across the selected channels. Trigger requests can include payload data, context, or target a topic, allowing you to control both who receives the notification and what data is available during execution.

Test with a real subscriber

A real subscriber already exists in the same environment, with the subscriberId your app uses and the channel fields the workflow needs, such as email.
  1. Create the subscriber on the Subscribers page, or pass their profile on the trigger.
  2. Open the workflow and click Test workflow.
  3. Select that subscriber, fill the payload, and send.
  4. Open the Activity Feed and filter by that subscriber ID.
The demo email integration only delivers to the email address on your Novu account. To reach a subscriber’s own address, connect your email provider and store that address on the subscriber. An Inbox test needs the <Inbox /> component initialized with the same application identifier and subscriberId.

Integrate a workflow trigger in my app

Open in Cursor

Trigger Event API

Trigger a workflow from your backend by sending an event to the Novu API. An event represents an action in your system, for example, an order created or a comment added, and is mapped to a workflow using the workflow’s trigger identifier. Call POST https://api.novu.co/v1/events/trigger with the environment secret key. Never put that key in frontend code. The REST field for the workflow identifier is name. The server SDKs call it workflowId. A workflow must be published before a Production trigger can run it. If the subscriber does not exist yet, passing to as an object creates them on that trigger. When you trigger an event, you specify:
  • The workflow to execute.
  • The subscriber (or subscribers) the notification is intended for.
  • The payload data used to personalize notification content.
At a minimum, triggering a workflow requires the workflow trigger identifier and a subscriber identifier.
For full request options and response details, see the Trigger Event API reference.
Once the event is received, Novu executes the workflow, evaluates step conditions, resolves variables, and delivers notifications across the configured channels. From here, you can extend event triggering by attaching context data, overriding the workflow-assigned agent, or targeting multiple subscribers using topics.

Override the assigned agent

If the workflow has an agent assigned in Configure workflow, that agent is the default for every trigger. Pass agentId on the trigger to change that for a single execution: agentId is the public agent slug, not the Mongo _id. See Workflow-assigned agents.
To skip agent routing for one run while leaving the workflow assignment in place, pass agentId: null.

Trigger a workflow with context

You can attach context data when triggering a workflow using the Event API. Context can be referenced from existing contexts created in the Novu dashboard by providing the context type and identifier or defined inline at trigger time. Any context passed with the event is available to all downstream steps and channel templates during workflow execution. When you pass a rich context object with a data field, Novu upserts the stored context data if the context already exists - similar to subscriber fields on the to object. Passing only a string identifier references the context without changing stored data. Context data is passed using the context object in the trigger request.
To learn how contexts work and how to manage them, see the Context documentation.

Trigger a workflow to a topic

Once you’ve created topics and added subscribers, you can trigger workflows to those subscribers in bulk. Triggering a workflow to a topic is Novu’s primary mechanism for broadcasting notifications to large audiences with a single API call. When you trigger a workflow using a topic key, Novu performs a fan-out: it resolves all subscribers in the topic and executes the workflow independently for each subscriber.
To learn how to create and manage Topics, see the Topics API reference.

Trigger to a single topic

The most common use case is sending a notification to all subscribers within a single topic. This is suitable for announcements, incident updates, or targeted broadcasts. To trigger a workflow to a topic, set the to field with type: "Topic" and provide the corresponding topicKey.

Trigger to multiple topics

You can broadcast a notification to multiple topics by passing an array to the to field. This is useful when your audience spans multiple groups, such as notifying both paying-customers and beta-testers. Novu automatically de-duplicates subscribers. If a subscriber belongs to more than one of the specified topics, they will receive the notification only once.

Exclude a subscriber from a topic trigger

When a workflow is triggered to a topic, all subscribers in that topic are included by default. You can exclude specific subscribers from receiving the notification for that trigger by using the exclude field. This exclusion applies only to the current trigger request and does not modify the topic membership.