There is no shared, environment-level PagerDuty routing key. If a subscriber has no PagerDuty endpoint registered, the Tool step is marked skipped for that subscriber; no incident is created and no error is raised.
Prerequisites
- A PagerDuty account with permission to add integrations to services
- A PagerDuty service to page (create one under Services → Service Directory if needed)
- Access to the Novu dashboard
Get an Events API v2 routing key
Every subscriber routes to their own PagerDuty service, so each subscriber needs a routing key from their service.1
Open the service in PagerDuty
In PagerDuty, go to Services → Service Directory and open the service you want Novu to page.
2
Add an Events API v2 integration
Open the Integrations tab, click Add another integration, choose Events API v2, and save.
3
Copy the integration key
PagerDuty generates a 32-character alphanumeric Integration Key. Copy it. This is the routing key Novu will store for the subscriber.
Add PagerDuty in Novu
1
Open the Integrations Store
In the Novu dashboard, click Integrations Store in the sidebar.
2
Add PagerDuty
Click Connect Provider, select Tool, then choose PagerDuty.
3
Create the integration
PagerDuty has no environment-level credentials, so there is nothing to paste on this screen. Click Create Integration to save it. This gives you the
integrationIdentifier you’ll reference below when registering subscribers’ routing keys.Store a subscriber’s routing key
Register each subscriber’s routing key as a channel endpoint on the PagerDuty integration. Novu encrypts the routing key at rest onChannelEndpoint.endpoint and returns the wire shape { routingKey, region } on reads (region stays plaintext).
Create the endpoint
Send the routing key as apagerduty_service endpoint. Set createSubscriberIfMissing: true so this call also provisions the Novu subscriber the first time an end user connects PagerDuty, with no separate identify call required.
- Node.js
- Python
- Go
- PHP
- .NET
- Java
- cURL
Endpoint shape
One endpoint per subscriber, per integration
A subscriber may have at most one PagerDuty endpoint per integration. A secondPOST with the same (subscriberId, integrationIdentifier) returns 409 Conflict. Rotate the routing key by PATCHing the existing endpoint instead:
Reading and disconnecting
Reads return the full wire shape (including the routing key), so you can display connection status. Mask it in your UI (the Novu dashboard shows only the last four characters).Page a subscriber from a workflow
Once a subscriber has a PagerDuty endpoint, add a Tool step with PagerDuty to your workflow and trigger it like any other workflow.1
Add a Tool step
In the workflow editor, add a step and select Tool as the channel. Choose the PagerDuty integration you created.
2
Write the incident summary
The step content becomes the incident
payload.summary in the PagerDuty Events API v2 request. Use dynamic placeholders such as {{payload.orderNumber}} or {{subscriber.firstName}}.3
Trigger the workflow
Send a trigger for a subscriber who has connected PagerDuty. Novu resolves that subscriber’s routing key and creates an incident on their PagerDuty service.
- Node.js
- Python
- Go
- PHP
- .NET
- Java
- cURL
Incident payload defaults and overrides
The deterministic
dedup_key means Novu retries for the same step will update the same PagerDuty incident instead of creating duplicates.
What happens without an endpoint
If a workflow triggers for a subscriber who has no PagerDuty endpoint on the target integration, Novu marks the step as skipped in the Activity feed for that subscriber and does not create an incident. Other subscribers on the same trigger are unaffected. Each is routed to their own PagerDuty service.Related
Create a channel endpoint
API reference for
POST /v1/channel-endpoints, including the pagerduty_service variant.Rotate a routing key
API reference for
PATCH /v1/channel-endpoints/:identifier. Use this to rotate an existing subscriber’s routing key.