Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

PagerDuty connector

OAuth 2.0Developer ToolsMonitoring

Connect to PagerDuty to manage incidents, services, users, teams, escalation policies, schedules, and on-call rotations.

PagerDuty connector

  1. Terminal window
    npm install @scalekit-sdk/node

    Full SDK reference: Node.js | Python

  2. Add your Scalekit credentials to your .env file. Find values in app.scalekit.com > Developers > API Credentials.

    .env
    SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
    SCALEKIT_CLIENT_ID=<your-client-id>
    SCALEKIT_CLIENT_SECRET=<your-client-secret>
  3. quickstart.ts
    import { ScalekitClient } from '@scalekit-sdk/node'
    import 'dotenv/config'
    const scalekit = new ScalekitClient(
    process.env.SCALEKIT_ENV_URL,
    process.env.SCALEKIT_CLIENT_ID,
    process.env.SCALEKIT_CLIENT_SECRET,
    )
    const actions = scalekit.actions
    const connector = 'pagerduty'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize PagerDuty:', link)
    process.stdout.write('Press Enter after authorizing...')
    await new Promise(r => process.stdin.once('data', r))
    // Make your first call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'pagerduty_escalation_policies_list',
    toolInput: {},
    })
    console.log(result)

Connect this agent connector to let your agent:

  • List escalation policies, maintenance windows, schedules — List escalation policies in PagerDuty
  • Create service, incident note, team — Create a new service in PagerDuty
  • Delete user, schedule, escalation policy — Delete a PagerDuty user
  • Update team, incident, maintenance window — Update an existing PagerDuty team’s name or description
  • Get service, maintenance window, escalation policy — Get details of a specific PagerDuty service by its ID
  • Manage incident — Manage multiple PagerDuty incidents in bulk

Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.

pagerduty_escalation_policies_list#List escalation policies in PagerDuty. Supports filtering by query, user, team, and includes.7 params

List escalation policies in PagerDuty. Supports filtering by query, user, team, and includes.

NameTypeRequiredDescription
includestringoptionalAdditional resources to include. Options: services, teams, targets.
limitintegeroptionalThe number of results per page. Maximum 100.
offsetintegeroptionalOffset to start pagination search results.
querystringoptionalFilters the results by name.
sort_bystringoptionalUsed to specify a field to sort the response on. Options: name, name:asc, name:desc.
team_idsstringoptionalComma-separated list of team IDs to filter escalation policies by.
user_idsstringoptionalComma-separated list of user IDs to filter escalation policies for.
pagerduty_escalation_policy_create#Create a new escalation policy in PagerDuty. Escalation policies define who gets notified and in what order when an incident is triggered.7 params

Create a new escalation policy in PagerDuty. Escalation policies define who gets notified and in what order when an incident is triggered.

NameTypeRequiredDescription
namestringrequiredThe name of the escalation policy.
target_idstringrequiredThe ID of the user or schedule to notify in the first escalation rule.
descriptionstringoptionalA description of the escalation policy.
num_loopsintegeroptionalThe number of times the escalation policy will repeat after reaching the end of its escalation rules.
on_call_handoff_notificationsstringoptionalDetermines how on call handoff notifications will be sent for users on the escalation policy. Options: if_has_services, always.
rule_escalation_delay_in_minutesintegeroptionalThe number of minutes before an unacknowledged incident escalates to the next rule.
target_typestringoptionalThe type of the first escalation rule target. Options: user_reference, schedule_reference.
pagerduty_escalation_policy_delete#Delete a PagerDuty escalation policy. The policy must not be in use by any services or schedules.1 param

Delete a PagerDuty escalation policy. The policy must not be in use by any services or schedules.

NameTypeRequiredDescription
idstringrequiredThe ID of the escalation policy to delete.
pagerduty_escalation_policy_get#Get details of a specific PagerDuty escalation policy by its ID.2 params

Get details of a specific PagerDuty escalation policy by its ID.

NameTypeRequiredDescription
idstringrequiredThe ID of the escalation policy to retrieve.
includestringoptionalAdditional resources to include. Options: services, teams, targets.
pagerduty_escalation_policy_update#Update an existing PagerDuty escalation policy's name, description, or loop settings.5 params

Update an existing PagerDuty escalation policy's name, description, or loop settings.

NameTypeRequiredDescription
idstringrequiredThe ID of the escalation policy to update.
descriptionstringoptionalUpdated description of the escalation policy.
namestringoptionalThe updated name of the escalation policy.
num_loopsintegeroptionalThe number of times the escalation policy will repeat after reaching the end.
on_call_handoff_notificationsstringoptionalDetermines how on-call handoff notifications are sent. Options: if_has_services, always.
pagerduty_incident_create#Create a new incident in PagerDuty. Requires a title, service ID, and the email of the user creating the incident.8 params

Create a new incident in PagerDuty. Requires a title, service ID, and the email of the user creating the incident.

NameTypeRequiredDescription
from_emailstringrequiredThe email address of the user creating the incident. Required by PagerDuty.
service_idstringrequiredThe ID of the service the incident belongs to.
titlestringrequiredA brief description of the incident.
body_detailsstringoptionalAdditional details about the incident body (plain text).
escalation_policy_idstringoptionalThe ID of the escalation policy to assign to the incident.
incident_keystringoptionalA string that identifies the incident. Used for deduplication.
priority_idstringoptionalThe ID of the priority to assign to the incident.
urgencystringoptionalThe urgency of the incident. Options: high, low.
pagerduty_incident_get#Get details of a specific PagerDuty incident by its ID, including status, assignments, services, and timeline.1 param

Get details of a specific PagerDuty incident by its ID, including status, assignments, services, and timeline.

NameTypeRequiredDescription
idstringrequiredThe ID of the incident to retrieve.
pagerduty_incident_manage#Manage multiple PagerDuty incidents in bulk. Acknowledge, resolve, merge, or reassign multiple incidents at once.3 params

Manage multiple PagerDuty incidents in bulk. Acknowledge, resolve, merge, or reassign multiple incidents at once.

NameTypeRequiredDescription
from_emailstringrequiredThe email address of the user performing the bulk action. Required by PagerDuty.
incident_idsstringrequiredComma-separated list of incident IDs to manage.
statusstringrequiredThe status to apply to all specified incidents. Options: acknowledged, resolved.
pagerduty_incident_note_create#Add a note to a PagerDuty incident. Notes are visible to all responders on the incident.3 params

Add a note to a PagerDuty incident. Notes are visible to all responders on the incident.

NameTypeRequiredDescription
contentstringrequiredThe content of the note to add to the incident.
from_emailstringrequiredThe email address of the user creating the note. Required by PagerDuty.
idstringrequiredThe ID of the incident to add a note to.
pagerduty_incident_update#Update an existing PagerDuty incident. Can change status, urgency, title, priority, escalation policy, or reassign it.9 params

Update an existing PagerDuty incident. Can change status, urgency, title, priority, escalation policy, or reassign it.

NameTypeRequiredDescription
from_emailstringrequiredThe email address of the user making the update. Required by PagerDuty.
idstringrequiredThe ID of the incident to update.
assignee_idstringoptionalThe ID of the user to assign the incident to.
escalation_policy_idstringoptionalThe ID of the escalation policy to assign to the incident.
priority_idstringoptionalThe ID of the priority to assign to the incident.
resolutionstringoptionalThe resolution note for the incident (used when resolving).
statusstringoptionalThe new status of the incident. Options: acknowledged, resolved.
titlestringoptionalA brief description of the incident.
urgencystringoptionalThe urgency of the incident. Options: high, low.
pagerduty_incidents_list#List existing incidents in PagerDuty. Supports filtering by status, urgency, service, team, assigned user, and date range.12 params

List existing incidents in PagerDuty. Supports filtering by status, urgency, service, team, assigned user, and date range.

NameTypeRequiredDescription
date_rangestringoptionalWhen set to 'all', the since and until parameters and defaults are ignored.
includestringoptionalArray of additional resources to include. Options: acknowledgers, agents, assignees, conference_bridge, escalation_policies, first_trigger_log_entries, responders, services, teams, users.
limitintegeroptionalThe number of results to return per page. Maximum 100.
offsetintegeroptionalOffset to start pagination search results.
service_idsstringoptionalComma-separated list of service IDs to filter incidents by.
sincestringoptionalThe start of the date range to search (ISO 8601 format).
sort_bystringoptionalUsed to specify a field you would like to sort the response on. Options: incident_number, created_at, resolved_at, urgency.
statusesstringoptionalComma-separated list of statuses to filter by. Options: triggered, acknowledged, resolved.
team_idsstringoptionalComma-separated list of team IDs to filter incidents by.
untilstringoptionalThe end of the date range to search (ISO 8601 format).
urgenciesstringoptionalComma-separated list of urgencies to filter by. Options: high, low.
user_idsstringoptionalComma-separated list of user IDs to filter incidents assigned to.
pagerduty_log_entries_list#List log entries across all incidents in PagerDuty. Log entries record actions taken on incidents including notifications, acknowledgements, and assignments.8 params

List log entries across all incidents in PagerDuty. Log entries record actions taken on incidents including notifications, acknowledgements, and assignments.

NameTypeRequiredDescription
includestringoptionalAdditional resources to include. Options: incidents, services, channels, teams.
is_overviewbooleanoptionalIf true, only show log entries of type 'notify_log_entry'.
limitintegeroptionalThe number of results per page. Maximum 100.
offsetintegeroptionalOffset to start pagination search results.
sincestringoptionalThe start of the date range (ISO 8601).
team_idsstringoptionalComma-separated list of team IDs to filter log entries by.
time_zonestringoptionalTime zone for the log entries (IANA format).
untilstringoptionalThe end of the date range (ISO 8601).
pagerduty_log_entry_get#Get details of a specific PagerDuty log entry by its ID.3 params

Get details of a specific PagerDuty log entry by its ID.

NameTypeRequiredDescription
idstringrequiredThe ID of the log entry to retrieve.
includestringoptionalAdditional resources to include. Options: incidents, services, channels, teams.
time_zonestringoptionalTime zone for the log entry (IANA format).
pagerduty_maintenance_window_create#Create a new maintenance window in PagerDuty. During a maintenance window, no incidents will be created for the associated services.5 params

Create a new maintenance window in PagerDuty. During a maintenance window, no incidents will be created for the associated services.

NameTypeRequiredDescription
end_timestringrequiredThe end time of the maintenance window (ISO 8601 format).
from_emailstringrequiredThe email address of the user creating the maintenance window. Required by PagerDuty.
service_idsstringrequiredComma-separated list of service IDs to include in the maintenance window.
start_timestringrequiredThe start time of the maintenance window (ISO 8601 format).
descriptionstringoptionalA description of the maintenance window.
pagerduty_maintenance_window_delete#Delete a PagerDuty maintenance window. Only future and ongoing maintenance windows may be deleted.1 param

Delete a PagerDuty maintenance window. Only future and ongoing maintenance windows may be deleted.

NameTypeRequiredDescription
idstringrequiredThe ID of the maintenance window to delete.
pagerduty_maintenance_window_get#Get details of a specific PagerDuty maintenance window by its ID.2 params

Get details of a specific PagerDuty maintenance window by its ID.

NameTypeRequiredDescription
idstringrequiredThe ID of the maintenance window to retrieve.
includestringoptionalAdditional resources to include. Options: services, teams.
pagerduty_maintenance_window_update#Update an existing PagerDuty maintenance window's description, start time, or end time.4 params

Update an existing PagerDuty maintenance window's description, start time, or end time.

NameTypeRequiredDescription
idstringrequiredThe ID of the maintenance window to update.
descriptionstringoptionalUpdated description of the maintenance window.
end_timestringoptionalUpdated end time of the maintenance window (ISO 8601 format).
start_timestringoptionalUpdated start time of the maintenance window (ISO 8601 format).
pagerduty_maintenance_windows_list#List maintenance windows in PagerDuty. Maintenance windows disable incident notifications for services during scheduled maintenance periods.7 params

List maintenance windows in PagerDuty. Maintenance windows disable incident notifications for services during scheduled maintenance periods.

NameTypeRequiredDescription
filterstringoptionalFilter maintenance windows by time. Options: past, future, ongoing.
includestringoptionalAdditional resources to include. Options: services, teams.
limitintegeroptionalThe number of results per page. Maximum 100.
offsetintegeroptionalOffset to start pagination search results.
querystringoptionalFilters the results by description.
service_idsstringoptionalComma-separated list of service IDs to filter maintenance windows by.
team_idsstringoptionalComma-separated list of team IDs to filter maintenance windows by.
pagerduty_notifications_list#List notifications sent for incidents in a given time range. Notifications are messages sent to users when incidents are triggered, acknowledged, or resolved.7 params

List notifications sent for incidents in a given time range. Notifications are messages sent to users when incidents are triggered, acknowledged, or resolved.

NameTypeRequiredDescription
sincestringrequiredThe start of the date range (ISO 8601). Required.
untilstringrequiredThe end of the date range (ISO 8601). Required.
filterstringoptionalFilters the results by notification type. Options: sms_notification, email_notification, phone_notification, push_notification.
includestringoptionalAdditional resources to include. Options: users.
limitintegeroptionalThe number of results per page. Maximum 100.
offsetintegeroptionalOffset to start pagination search results.
time_zonestringoptionalTime zone for the notification data (IANA format).
pagerduty_oncalls_list#List who is on call right now or within a date range. Supports filtering by schedule, escalation policy, and user.10 params

List who is on call right now or within a date range. Supports filtering by schedule, escalation policy, and user.

NameTypeRequiredDescription
earliestbooleanoptionalWhen set to true, returns only the earliest on-call for each combination of escalation policy, escalation level, and user.
escalation_policy_idsstringoptionalComma-separated list of escalation policy IDs to filter by.
includestringoptionalAdditional resources to include. Options: users, schedules, escalation_policies.
limitintegeroptionalThe number of results per page. Maximum 100.
offsetintegeroptionalOffset to start pagination search results.
schedule_idsstringoptionalComma-separated list of schedule IDs to filter by.
sincestringoptionalThe start of the time range to retrieve on-call information (ISO 8601).
time_zonestringoptionalTime zone for the on-call data (IANA format).
untilstringoptionalThe end of the time range to retrieve on-call information (ISO 8601).
user_idsstringoptionalComma-separated list of user IDs to filter on-calls by.
pagerduty_priorities_list#List the priority options available for incidents in PagerDuty. Returns all configured priority levels.0 params

List the priority options available for incidents in PagerDuty. Returns all configured priority levels.

pagerduty_schedule_create#Create a new on-call schedule in PagerDuty with a single layer. Schedules determine who is on call at any given time.8 params

Create a new on-call schedule in PagerDuty with a single layer. Schedules determine who is on call at any given time.

NameTypeRequiredDescription
layer_startstringrequiredThe start time of the schedule layer (ISO 8601 format).
namestringrequiredThe name of the schedule.
rotation_virtual_startstringrequiredThe effective start time of the rotation to align turn order (ISO 8601 format).
time_zonestringrequiredThe time zone of the schedule (IANA format, e.g., America/New_York).
user_idsstringrequiredComma-separated list of user IDs to include in the rotation.
descriptionstringoptionalA description of the schedule.
layer_namestringoptionalThe name of the first schedule layer.
rotation_turn_length_secondsintegeroptionalThe duration of each on-call rotation turn in seconds (e.g., 86400 = 1 day, 604800 = 1 week).
pagerduty_schedule_delete#Delete a PagerDuty on-call schedule. The schedule must not be associated with any escalation policies.1 param

Delete a PagerDuty on-call schedule. The schedule must not be associated with any escalation policies.

NameTypeRequiredDescription
idstringrequiredThe ID of the schedule to delete.
pagerduty_schedule_get#Get details of a specific PagerDuty on-call schedule by its ID, including layers and users.4 params

Get details of a specific PagerDuty on-call schedule by its ID, including layers and users.

NameTypeRequiredDescription
idstringrequiredThe ID of the schedule to retrieve.
sincestringoptionalThe start of the date range to show schedule entries for (ISO 8601).
time_zonestringoptionalTime zone of the displayed schedule (IANA format).
untilstringoptionalThe end of the date range to show schedule entries for (ISO 8601).
pagerduty_schedule_update#Update an existing PagerDuty on-call schedule's name, description, or time zone.4 params

Update an existing PagerDuty on-call schedule's name, description, or time zone.

NameTypeRequiredDescription
idstringrequiredThe ID of the schedule to update.
descriptionstringoptionalUpdated description of the schedule.
namestringoptionalUpdated name of the schedule.
time_zonestringoptionalUpdated time zone (IANA format, e.g., America/New_York).
pagerduty_schedules_list#List on-call schedules in PagerDuty. Supports filtering by query string and pagination.4 params

List on-call schedules in PagerDuty. Supports filtering by query string and pagination.

NameTypeRequiredDescription
includestringoptionalAdditional resources to include. Options: schedule_layers, teams, users.
limitintegeroptionalThe number of results per page. Maximum 100.
offsetintegeroptionalOffset to start pagination search results.
querystringoptionalFilters the results by name.
pagerduty_service_create#Create a new service in PagerDuty. A service represents something you monitor and manage incidents for.6 params

Create a new service in PagerDuty. A service represents something you monitor and manage incidents for.

NameTypeRequiredDescription
escalation_policy_idstringrequiredThe ID of the escalation policy to assign to this service.
namestringrequiredThe name of the service.
acknowledgement_timeoutintegeroptionalTime in seconds that an incident is automatically re-triggered after being acknowledged. Set to 0 to disable.
alert_creationstringoptionalWhether a service creates only incidents or creates both incidents and alerts. Options: create_incidents, create_alerts_and_incidents.
auto_resolve_timeoutintegeroptionalTime in seconds that an incident is automatically resolved if left open. Set to 0 to disable.
descriptionstringoptionalThe user-provided description of the service.
pagerduty_service_delete#Delete an existing PagerDuty service. This action is irreversible. Only services without open incidents may be deleted.1 param

Delete an existing PagerDuty service. This action is irreversible. Only services without open incidents may be deleted.

NameTypeRequiredDescription
idstringrequiredThe ID of the service to delete.
pagerduty_service_get#Get details of a specific PagerDuty service by its ID.2 params

Get details of a specific PagerDuty service by its ID.

NameTypeRequiredDescription
idstringrequiredThe ID of the service to retrieve.
includestringoptionalAdditional resources to include. Options: escalation_policies, teams, integrations.
pagerduty_service_update#Update an existing PagerDuty service. Can change name, description, escalation policy, timeouts, and alert creation settings.8 params

Update an existing PagerDuty service. Can change name, description, escalation policy, timeouts, and alert creation settings.

NameTypeRequiredDescription
idstringrequiredThe ID of the service to update.
acknowledgement_timeoutintegeroptionalTime in seconds that an incident is automatically re-triggered after being acknowledged.
alert_creationstringoptionalWhether a service creates only incidents or also alerts. Options: create_incidents, create_alerts_and_incidents.
auto_resolve_timeoutintegeroptionalTime in seconds that an incident is automatically resolved if left open.
descriptionstringoptionalThe user-provided description of the service.
escalation_policy_idstringoptionalThe ID of the escalation policy to assign to this service.
namestringoptionalThe name of the service.
statusstringoptionalThe current state of the service. Options: active, warning, critical, maintenance, disabled.
pagerduty_services_list#List existing services in PagerDuty. Supports filtering by team, query string, and pagination.6 params

List existing services in PagerDuty. Supports filtering by team, query string, and pagination.

NameTypeRequiredDescription
includestringoptionalAdditional resources to include. Options: escalation_policies, teams, integrations, auto_pause_notifications_parameters.
limitintegeroptionalThe number of results per page. Maximum 100.
offsetintegeroptionalOffset to start pagination search results.
querystringoptionalFilters the results by name.
sort_bystringoptionalSort results by this field. Options: name, name:asc, name:desc.
team_idsstringoptionalComma-separated list of team IDs to filter services by.
pagerduty_team_create#Create a new team in PagerDuty. Teams allow grouping of users and services.2 params

Create a new team in PagerDuty. Teams allow grouping of users and services.

NameTypeRequiredDescription
namestringrequiredThe name of the team.
descriptionstringoptionalA description of the team.
pagerduty_team_delete#Delete a PagerDuty team. The team must have no associated users, services, or escalation policies before it can be deleted.1 param

Delete a PagerDuty team. The team must have no associated users, services, or escalation policies before it can be deleted.

NameTypeRequiredDescription
idstringrequiredThe ID of the team to delete.
pagerduty_team_get#Get details of a specific PagerDuty team by its ID.1 param

Get details of a specific PagerDuty team by its ID.

NameTypeRequiredDescription
idstringrequiredThe ID of the team to retrieve.
pagerduty_team_update#Update an existing PagerDuty team's name or description.3 params

Update an existing PagerDuty team's name or description.

NameTypeRequiredDescription
idstringrequiredThe ID of the team to update.
descriptionstringoptionalUpdated description of the team.
namestringoptionalThe updated name of the team.
pagerduty_teams_list#List teams in PagerDuty. Supports filtering by query string and pagination.3 params

List teams in PagerDuty. Supports filtering by query string and pagination.

NameTypeRequiredDescription
limitintegeroptionalThe number of results per page. Maximum 100.
offsetintegeroptionalOffset to start pagination search results.
querystringoptionalFilters the results by name.
pagerduty_user_create#Create a new user in PagerDuty. Requires name, email, and the creating user's email in the From header.6 params

Create a new user in PagerDuty. Requires name, email, and the creating user's email in the From header.

NameTypeRequiredDescription
emailstringrequiredThe user's email address.
from_emailstringrequiredThe email address of the admin creating this user. Required by PagerDuty.
namestringrequiredThe name of the user.
colorstringoptionalThe schedule color for the user.
rolestringoptionalThe user's role. Options: admin, limited_user, observer, owner, read_only_user, restricted_access, read_only_limited_user, user.
time_zonestringoptionalThe time zone of the user (IANA format, e.g., America/New_York).
pagerduty_user_delete#Delete a PagerDuty user. Users cannot be deleted if they are the only remaining account owner.1 param

Delete a PagerDuty user. Users cannot be deleted if they are the only remaining account owner.

NameTypeRequiredDescription
idstringrequiredThe ID of the user to delete.
pagerduty_user_get#Get details of a specific PagerDuty user by their ID.2 params

Get details of a specific PagerDuty user by their ID.

NameTypeRequiredDescription
idstringrequiredThe ID of the user to retrieve.
includestringoptionalAdditional resources to include. Options: contact_methods, notification_rules, teams.
pagerduty_user_update#Update an existing PagerDuty user's profile including name, email, role, time zone, and color.6 params

Update an existing PagerDuty user's profile including name, email, role, time zone, and color.

NameTypeRequiredDescription
idstringrequiredThe ID of the user to update.
colorstringoptionalThe schedule color for the user.
emailstringoptionalThe user's updated email address.
namestringoptionalThe updated name of the user.
rolestringoptionalThe user's role. Options: admin, limited_user, observer, owner, read_only_user, restricted_access, read_only_limited_user, user.
time_zonestringoptionalThe time zone of the user (IANA format, e.g., America/New_York).
pagerduty_users_list#List users in PagerDuty. Supports filtering by query, team, and includes.5 params

List users in PagerDuty. Supports filtering by query, team, and includes.

NameTypeRequiredDescription
includestringoptionalAdditional resources to include. Options: contact_methods, notification_rules, teams.
limitintegeroptionalThe number of results per page. Maximum 100.
offsetintegeroptionalOffset to start pagination search results.
querystringoptionalFilters the results by name.
team_idsstringoptionalComma-separated list of team IDs to filter users by.
pagerduty_vendors_list#List available PagerDuty vendors (integration types). Vendors represent the services or monitoring tools that can be integrated with PagerDuty.3 params

List available PagerDuty vendors (integration types). Vendors represent the services or monitoring tools that can be integrated with PagerDuty.

NameTypeRequiredDescription
limitintegeroptionalThe number of results per page. Maximum 100.
offsetintegeroptionalOffset to start pagination search results.
querystringoptionalFilters the results by vendor name.