Skip to content

Commit 31f6ab3

Browse files
devGregAclaudeMaffooch
authored
docs: add PagerDuty to the Pro Integrations tool reference (#15210)
Covers instance setup (REST API key, From user email, regional API base URL), the service ID mapping identifier, the urgency vs account-priority severity mapping modes, status mappings, and the PagerDuty-specific caveats (resolved is final; title/body cannot be edited after creation). Co-authored-by: Claude Fable 5 <noreply@anthropic.com> Co-authored-by: Cody Maffucci <46459665+Maffooch@users.noreply.github.com>
1 parent 85780ab commit 31f6ab3

2 files changed

Lines changed: 42 additions & 0 deletions

File tree

docs/content/issue_tracking/pro_integration/integrations.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ Supported Integrations:
1616
- GitHub
1717
- GitLab Boards
1818
- Jira
19+
- PagerDuty
1920
- ServiceDesk Plus
2021
- ServiceNow
2122
- Shortcut
@@ -80,6 +81,7 @@ For the complete list of requirements, please open the vendor specific pages bel
8081
- [GitHub](/issue_tracking/pro_integration/integrations_toolreference/#github)
8182
- [GitLab Boards](/issue_tracking/pro_integration/integrations_toolreference/#gitlab)
8283
- [Jira](/issue_tracking/pro_integration/integrations_toolreference/#jira)
84+
- [PagerDuty](/issue_tracking/pro_integration/integrations_toolreference/#pagerduty)
8385
- [ServiceDesk Plus](/issue_tracking/pro_integration/integrations_toolreference/#servicedesk-plus)
8486
- [ServiceNow](/issue_tracking/pro_integration/integrations_toolreference/#servicenow)
8587
- [Shortcut](/issue_tracking/pro_integration/integrations_toolreference/#shortcut)

docs/content/issue_tracking/pro_integration/integrations_toolreference.md

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -286,6 +286,46 @@ By default Jira issues use DefectDojo's built-in title and body. To customize th
286286
- **Token lifecycle (OAuth):** DefectDojo owns the whole flow — it performs the authorization-code exchange, stores the access and refresh tokens, and refreshes on demand before a push, persisting the new refresh token each time (Atlassian rotates it on every refresh).
287287
- **Credential storage:** all connection credentials (passwords, tokens, client secrets, OAuth tokens) are encrypted at rest and are never returned through the API — editing a connection shows a "leave blank to keep" placeholder for stored secrets.
288288

289+
## PagerDuty
290+
291+
The PagerDuty Integration allows you to push DefectDojo Findings and Finding Groups as PagerDuty Incidents, opened on a PagerDuty Service of your choice.
292+
293+
### Instance Setup
294+
295+
- **Label** should be the label that you want to use to identify this integration.
296+
- **Location** should be set to `https://api.pagerduty.com`. If your PagerDuty account is hosted in the EU service region, use `https://api.eu.pagerduty.com` instead.
297+
- **API Token** should be set to a PagerDuty REST API key. An account administrator can create one in the PagerDuty web app under **Integrations > API Access Keys > Create New API Key**. Leave "Read-only" unchecked - DefectDojo needs to create and update incidents.
298+
- **From Email** should be the email address of a valid user on your PagerDuty account. PagerDuty requires this address when creating or updating incidents, and it will be shown as the incident requester.
299+
300+
### Issue Tracker Mapping
301+
302+
- **Service ID** should be the ID of the PagerDuty Service that incidents will be opened on. You can find it at the end of the URL while looking at the Service in PagerDuty, for example `https://{your-subdomain}.pagerduty.com/service-directory/{service id}`.
303+
304+
### Severity Mapping Details
305+
306+
By default this maps to the PagerDuty incident **Urgency** field, which only accepts `high` or `low`:
307+
308+
- **Severity Field Name**: `Urgency`
309+
- **Info Mapping**: `low`
310+
- **Low Mapping**: `low`
311+
- **Medium Mapping**: `low`
312+
- **High Mapping**: `high`
313+
- **Critical Mapping**: `high`
314+
315+
Alternatively, if your PagerDuty account has [Priorities](https://support.pagerduty.com/main/docs/incident-priority) enabled, you can map severities to Priority names instead. Set the **Severity Field Name** to `Priority` and use your account's Priority names (for example `P1` through `P5`) as the mapping values. When mapping to Priority, the incident's Urgency is left to your Service's own urgency rules.
316+
317+
### Status Mapping Details
318+
319+
PagerDuty incidents have three statuses: `triggered`, `acknowledged`, and `resolved`.
320+
321+
- **Status Field Name**: `Status`
322+
- **Active Mapping**: `triggered`
323+
- **Closed Mapping**: `resolved`
324+
- **False Positive Mapping**: `resolved`
325+
- **Risk Accepted Mapping**: `acknowledged`
326+
327+
Note that `resolved` is a final status in PagerDuty - a resolved incident cannot be reopened. Also note that PagerDuty does not allow an incident's title or description to be edited after creation, so pushing an updated Finding will sync its status, urgency, and priority, but not content changes.
328+
289329
## ServiceNow
290330

291331
The ServiceNow Integration allows you to push DefectDojo Findings as ServiceNow Incidents.

0 commit comments

Comments
 (0)