| list_alert_grouping_settingsA | List all alert grouping settings with optional filtering. Args:
service_ids: An array of service IDs. Only results related to these services will be returned.
limit: The number of results per page. Default 1000.
after: Cursor to retrieve next page.
before: Cursor to retrieve previous page.
total: Set to True to include total count in response.
Returns:
List of alert grouping settings matching the query parameters
|
| get_alert_grouping_settingB | Get details for a specific alert grouping setting. Args:
setting_id: The ID of the alert grouping setting to retrieve
Returns:
Alert grouping setting details
|
| list_alerts_from_incidentA | List alerts for a specific incident. Args:
incident_id: The ID of the incident
limit: Maximum number of results to return (1-1000). Default is 100.
offset: Offset for pagination. Default is 0.
Returns:
List of Alert objects for the given incident
|
| get_alert_from_incidentA | Get a specific alert from an incident. Both IDs must be known, non-empty PagerDuty IDs (e.g. "PALERT123").
If the alert ID is not known, use list_alerts_from_incident to discover
the incident's alerts instead of calling this tool with an empty or
placeholder alert_id.
Args:
incident_id: The ID of the incident
alert_id: The ID of the alert
Returns:
Alert details
|
| list_change_eventsA | List all change events with optional filtering. Change Events represent changes to systems, services, and applications that
can be correlated with incidents to provide context for troubleshooting.
Args:
since: The start of the date range over which you want to search.
until: The end of the date range over which you want to search.
limit: The number of results per page. Default 100.
offset: The offset of the first record returned.
total: Set to True to include total count in response.
team_ids: An array of team IDs. Only results related to these teams will be returned.
integration_ids: An array of integration IDs. Only results related to these integrations will be returned.
Returns:
List of ChangeEvent objects matching the query parameters
|
| get_change_eventA | Get details about a specific change event. Args:
change_event_id: The ID of the change event to retrieve
Returns:
ChangeEvent details
|
| list_service_change_eventsA | List all change events for a specific service. Args:
service_id: The ID of the service.
since: The start of the date range over which you want to search.
until: The end of the date range over which you want to search.
limit: The number of results per page. Default 100.
offset: The offset of the first record returned.
total: Set to True to include total count in response.
team_ids: An array of team IDs. Only results related to these teams will be returned.
integration_ids: An array of integration IDs. Only results related to these integrations will be returned.
Returns:
List of ChangeEvent objects associated with the service
|
| list_incident_change_eventsA | List change events related to a specific incident. Args:
incident_id: The ID of the incident
limit: Maximum number of results to return (optional)
Returns:
List of ChangeEvent objects related to the incident
|
| list_incidentsA | List incidents with optional filtering. Args:
request_scope: Scope of incidents to return: 'all', 'assigned', or 'teams'
statuses: Filter by status (e.g. triggered, acknowledged, resolved)
since: Filter incidents created after this datetime
until: Filter incidents created before this datetime
urgencies: Filter by urgency (high, low)
priorities: Filter by priority IDs (use list_priorities to resolve names to IDs)
limit: Max results to return (default 1000)
Returns:
List of Incident objects matching the query parameters
|
| get_incidentB | Get a specific incident. Args:
incident_id: The ID or number of the incident to retrieve.
query_model: Optional query parameters for additional information to include
Returns:
Incident details
|
| get_outlier_incidentA | Get Outlier Incident information for a given Incident on its Service. Outlier Incident returns incident that deviates from the expected patterns
for the same Service. This feature is currently available as part of the
Event Intelligence package or Digital Operations plan only.
Args:
incident_id: The ID of the incident to get outlier incident information for
query_model: Query parameters including date range and additional details
Returns:
Outlier incident information calculated over the same Service as the given Incident
|
| get_past_incidentsA | Get Past Incidents related to a specific incident ID. Past Incidents returns Incidents within the past 6 months that have similar
metadata and were generated on the same Service as the parent Incident.
By default, 50 Past Incidents are returned. This feature is currently available
as part of the Event Intelligence package or Digital Operations plan only.
Args:
incident_id: The ID of the incident to get past incidents for
query_model: Query parameters including limit and total flag
Returns:
List of past incidents with similarity scores
|
| get_related_incidentsA | Get Related Incidents for a specific incident ID. Returns the 20 most recent Related Incidents that are impacting other Responders
and Services. This feature is currently available as part of the Event Intelligence
package or Digital Operations plan only.
Args:
incident_id: The ID of the incident to get related incidents for
query_model: Query parameters including additional details
Returns:
List of related incidents and their relationships
|
| list_incident_notesA | List all notes for a specific incident. Args:
incident_id: The ID of the incident to retrieve notes from
Returns:
List of IncidentNote objects for the specified incident
|
| list_incident_workflowsA | List incident workflows with optional filtering. Args:
limit: Maximum number of results to return. Maximum is 100. Default 100.
query: Filters the result, showing only the records whose name matches the query.
include: Array of additional details to include. Options: 'steps', 'team'.
Returns:
List of IncidentWorkflow objects matching the query parameters
|
| get_incident_workflowC | Get a specific incident workflow. Args:
workflow_id: The ID of the incident workflow to retrieve
Returns:
IncidentWorkflow details
|
| list_servicesA | List all services. Args:
query: Filter by name
teams_ids: Filter by team IDs
limit: Max results to return
Returns:
List of services matching the query parameters
|
| get_serviceA | Get details for a specific service. Args:
service_id: The ID of the service to retrieve
Returns:
The service details
|
| get_technical_service_dependenciesB | Get dependencies for a technical service. Args:
service_id: The ID of the technical service
Returns:
JSON string with relationships list
|
| list_teamsA | List teams with optional filtering. Args:
scope: 'all' for all teams, 'my' for teams the current user belongs to
query: Filter by team name
limit: Max results to return
Returns:
List of teams.
|
| get_teamA | Get a specific team. Args:
team_id: The ID or name of the team to retrieve
Returns:
Team details
|
| list_team_membersA | List members of a team. Args:
team_id: The ID of the team
Returns:
List of UserReference objects
|
| get_user_dataA | Get the current user's data. Returns:
User: User name, role, id, and summary and teams
|
| list_usersA | List users, optionally filtering by name (query) and team IDs. Args:
query: Filters the result, showing only the records whose name matches the query.
teams_ids: Filter users by team IDs.
limit: Pagination limit. Default 100.
Returns:
List of users matching the criteria.
|
| list_schedulesA | List ALL PagerDuty schedules across BOTH scheduling systems in a single call. This returns classic layer-based (v2) schedules AND next-gen shift-based (v3) schedules
together. It is the complete, authoritative schedule list — there is no other list tool.
Each item's `kind` field ("layer_based" or "shift_based") says which system it belongs to.
If either source fails, `response_summary`/`sources` explicitly mark the list INCOMPLETE;
otherwise treat it as exhaustive. Never tell the user a schedule type is unsupported or missing.
Args:
query_model: Filters (name query, team_ids, user_ids, limit). Shift-based (v3) schedules
are filtered by name `query` and `limit` only.
enrich: When True (default), fill in names for shift-based (v3) schedules (bounded to the
returned page, max 50). Set False to skip the extra lookups; v3 names may then be null.
Returns:
The merged schedule summaries with per-source status and a `degraded` flag.
|
| get_scheduleA | Get a single schedule by ID — works for layer-based (v2) and shift-based (v3) schedules alike. You normally do not need to know the kind in advance; this resolves it automatically.
Args:
schedule_id: The ID of the schedule to retrieve.
kind: Optional hint ("layer_based" or "shift_based", taken from a prior list result) to
skip an extra lookup. A wrong or omitted hint still resolves correctly.
Returns:
The schedule details (a layer-based Schedule or a shift-based ScheduleV3).
|
| list_schedule_usersA | List users in a schedule. Args:
schedule_id: The ID of the schedule
Returns:
List of users in the schedule
|
| list_schedule_v3_rotationsA | List all rotations for a v3 schedule. Args:
schedule_id: The ID of the v3 schedule
Returns:
List of rotations for the schedule
|
| get_schedule_v3_rotationA | Get a specific rotation within a v3 schedule. Args:
schedule_id: The ID of the v3 schedule
rotation_id: The ID of the rotation
Returns:
The rotation including its events
|
| list_schedule_v3_rotation_eventsA | List all events for a rotation in a v3 schedule. Args:
schedule_id: The ID of the v3 schedule
rotation_id: The ID of the rotation
Returns:
List of events defining the on-call coverage windows and member assignments
|
| get_schedule_v3_rotation_eventC | Get a specific event within a v3 schedule rotation. Args:
schedule_id: The ID of the v3 schedule
rotation_id: The ID of the rotation
event_id: The ID of the event
Returns:
The rotation event
|
| list_schedule_v3_custom_shiftsA | List custom shifts for a v3 schedule within a time range. Custom shifts are ad-hoc one-off shifts outside of rotation events.
Args:
schedule_id: The ID of the v3 schedule
since: Start of the time range (ISO 8601, required)
until: End of the time range (ISO 8601, required)
Returns:
List of custom shifts in the specified time range
|
| get_schedule_v3_custom_shiftC | Get a specific custom shift within a v3 schedule. Args:
schedule_id: The ID of the v3 schedule
custom_shift_id: The ID of the custom shift
Returns:
The custom shift
|
| list_schedule_v3_overridesA | List overrides for a v3 schedule within a time range. Args:
schedule_id: The ID of the v3 schedule
since: Start of the time range (ISO 8601, required)
until: End of the time range (ISO 8601, required)
Returns:
List of overrides in the specified time range
|
| get_schedule_v3_overrideB | Get a specific override within a v3 schedule. Args:
schedule_id: The ID of the v3 schedule
override_id: The ID of the override
Returns:
The override
|
| list_oncallsA | List on-call schedules with optional filtering. Args:
time_zone: Time zone for date rendering (e.g. America/New_York)
user_ids: Filter by user IDs
escalation_policy_ids: Filter by escalation policy IDs
schedule_ids: Filter by schedule IDs
service_ids: Filter by service IDs. Resolves each service to its escalation policy to find on-call responders.
since: Start of time range
until: End of time range
earliest: Return only earliest oncall per user/policy combination. Defaults to True.
limit: Max results to return
Returns:
List of on-call schedules matching the query parameters
|
| list_log_entriesA | List all log entries across the account. Log entries are records of all events on your account. This function allows you
to filter log entries by time range and paginate through results.
If no time range is specified, defaults to the last 7 days.
Args:
query_model: Query parameters including since, until, limit, and offset
Returns:
List of LogEntry objects matching the query parameters
|
| get_log_entryB | Get a specific log entry by ID. Args:
log_entry_id: The ID of the log entry
Returns:
LogEntry details
|
| list_escalation_policiesA | List escalation policies with optional filtering. Args:
query: Filter by name
user_ids: Filter by user IDs
team_ids: Filter by team IDs
include: Additional details to include (e.g. services, teams)
limit: Max results to return
Returns:
List of escalation policies matching the query parameters
|
| get_escalation_policyC | Get a specific escalation policy. Args:
policy_id: The ID of the escalation policy to retrieve
Returns:
Escalation policy details
|
| list_event_orchestrationsA | List event orchestrations with optional filtering. Args:
limit: The number of results per page. Default 100.
offset: Offset to start pagination search results.
sort_by: Field and direction to sort by. Default 'name:asc'. Options:
'name:asc', 'name:desc', 'routes:asc', 'routes:desc',
'created_at:asc', 'created_at:desc'.
Returns:
List of event orchestrations matching the query parameters
|
| get_event_orchestrationB | Get details for a specific event orchestration. Args:
orchestration_id: The ID of the event orchestration to retrieve
Returns:
The event orchestration details
|
| get_event_orchestration_routerA | Get the router configuration for a specific event orchestration. Args:
orchestration_id: The ID of the event orchestration to retrieve router for
Returns:
The event orchestration router configuration
|
| get_event_orchestration_serviceA | Get the Service Orchestration configuration for a specific service. Args:
service_id: The ID of the service to retrieve the orchestration configuration for
Returns:
The service orchestration configuration
|
| get_event_orchestration_globalA | Get the Global Orchestration configuration for a specific event orchestration. Args:
orchestration_id: The ID of the event orchestration to retrieve global configuration for
Returns:
The global orchestration configuration
|
| list_status_pagesA | List Status Pages with optional filtering. Args:
query_model: Optional filtering parameters
Returns:
List of StatusPage objects matching the query parameters
|
| list_status_page_severitiesA | List Severities for a Status Page by Status Page ID. Args:
status_page_id: The ID of the Status Page
query_model: Optional filtering parameters
Returns:
List of StatusPageSeverity objects for the given Status Page
|
| list_status_page_impactsA | List Impacts for a Status Page by Status Page ID. Args:
status_page_id: The ID of the Status Page
query_model: Optional filtering parameters
Returns:
List of StatusPageImpact objects for the given Status Page
|
| list_status_page_statusesA | List Statuses for a Status Page by Status Page ID. Args:
status_page_id: The ID of the Status Page
query_model: Optional filtering parameters
Returns:
List of StatusPageStatus objects for the given Status Page
|
| get_status_page_postA | Get a Post for a Status Page by Status Page ID and Post ID. Args:
status_page_id: The ID of the Status Page
post_id: The ID of the Status Page Post
query_model: Optional query parameters (e.g., include related resources)
Returns:
StatusPagePost details
|
| list_status_page_post_updatesA | List Post Updates for a Status Page by Status Page ID and Post ID. Args:
status_page_id: The ID of the Status Page
post_id: The ID of the Status Page Post
query_model: Optional filtering parameters
Returns:
List of StatusPagePostUpdate objects for the given Post
|
| get_responder_metricsA | Get responder metrics aggregated by team from PagerDuty Analytics. Returns per-user oncall seconds, interruption counts (business hours, off hours, sleep hours),
engaged time, and incident counts for a given date range. Powered by PagerDuty's analytics
engine — oncall hours are computed authoritatively, accounting for schedule overlaps.
Args:
date_range_start: ISO8601 DateTime. Incidents with created_at before this value are omitted.
date_range_end: ISO8601 DateTime. Incidents with created_at >= this value are omitted.
team_ids: Only incidents related to these teams will be included.
responder_ids: Only incidents related to these responders will be included.
urgency: Filter by urgency: 'high' or 'low'.
time_zone: The time zone to use for results and grouping (e.g. 'America/New_York').
order: Sort order: 'asc' or 'desc'.
order_by: Field to sort results by.
Returns:
JSON string of ListResponseModel containing AnalyticsResponderMetrics objects.
|
| get_incident_metrics_by_serviceA | Get aggregated incident metrics per service from PagerDuty Analytics. Returns service-level MTTA, mean MTTR, escalation counts, incident
volume, and uptime percentage. Use this instead of list_incidents when you need
service health metrics — data is pre-aggregated by PagerDuty's analytics engine.
Args:
created_at_start: ISO8601 DateTime. Incidents created before this are omitted.
created_at_end: ISO8601 DateTime. Incidents created on/after this are omitted.
team_ids: Only incidents related to these teams will be included.
service_ids: Only incidents related to these services will be included.
urgency: Filter by urgency: 'high' or 'low'.
time_zone: The time zone for results (e.g. 'America/New_York').
order: Sort order: 'asc' or 'desc'.
order_by: Field to sort results by.
Returns:
JSON string of ListResponseModel containing AnalyticsServiceMetrics objects.
|
| get_incident_metrics_by_teamA | Get aggregated incident metrics per team from PagerDuty Analytics. Returns team-level MTTA, mean MTTR, escalation counts, incident
volume, and uptime percentage. Use for team performance comparisons and dashboards.
Args:
created_at_start: ISO8601 DateTime. Incidents created before this are omitted.
created_at_end: ISO8601 DateTime. Incidents created on/after this are omitted.
team_ids: Only incidents related to these teams will be included.
service_ids: Only incidents related to these services will be included.
urgency: Filter by urgency: 'high' or 'low'.
time_zone: The time zone for results (e.g. 'America/New_York').
order: Sort order: 'asc' or 'desc'.
order_by: Field to sort results by.
aggregate_unit: Time unit to aggregate metrics by: 'day', 'week', or 'month'.
If omitted, returns a single all-period row.
Returns:
JSON string of ListResponseModel containing AnalyticsTeamMetrics objects.
|
| get_responder_load_metricsA | Get aggregated load metrics per responder from PagerDuty Analytics. Returns per-responder on-call hours, incident count, acknowledgment count,
sleep-hour interruptions, and engaged time. Use for responder workload analysis.
Args:
date_range_start: ISO8601 DateTime. Incidents with created_at before this value are omitted.
date_range_end: ISO8601 DateTime. Incidents with created_at >= this value are omitted.
team_ids: Only incidents related to these teams will be included.
urgency: Filter by urgency: 'high' or 'low'.
time_zone: The time zone for results (e.g. 'America/New_York').
order: Sort order: 'asc' or 'desc'.
order_by: Field to sort results by.
Returns:
JSON string of ListResponseModel containing AnalyticsResponderLoad objects.
|
| get_incident_metrics_allA | Get full-period aggregated incident metrics from PagerDuty Analytics. Returns rollup metrics for the entire requested period including percentile
distributions (P50, P75, P90, P95) for ack and resolve times. These percentile
fields are ONLY available from this endpoint — not from the per-team or per-service
grouped endpoints.
Args:
created_at_start: ISO8601 DateTime. Incidents created before this are omitted.
created_at_end: ISO8601 DateTime. Incidents created on/after this are omitted.
team_ids: Only incidents related to these teams will be included.
service_ids: Only incidents related to these services will be included.
urgency: Filter by urgency: 'high' or 'low'.
time_zone: The time zone for results (e.g. 'America/New_York').
order: Sort order: 'asc' or 'desc'.
order_by: Field to sort results by.
Returns:
JSON string of AnalyticsAggregatedMetrics object.
|
| list_business_servicesB | List all business services. Returns:
JSON string of business services
|
| get_business_service_dependenciesA | Get dependencies for a business service. Args:
business_service_id: The ID of the business service
Returns:
JSON string with relationships list
|
| list_prioritiesA | List all priorities configured in the account. Returns:
JSON string of ListResponseModel containing PriorityReference objects
|
| list_webhook_subscriptionsA | List webhook subscriptions. Args:
filter_type: Filter by scope type: 'account_reference', 'service_reference', or 'team_reference'
limit: Max results to return
Returns:
List of webhook subscriptions
|
| get_webhook_subscriptionA | Get a specific webhook subscription by ID. Args:
subscription_id: The ID of the webhook subscription to retrieve
Returns:
Webhook subscription details
|
| list_extension_schemasA | List available extension schemas (extension vendors). Extension schemas describe the available extension integrations that can be
attached to PagerDuty services.
Args:
limit: Max results to return
Returns:
List of extension schemas
|
| get_extension_schemaA | Get a specific extension schema by ID. Args:
schema_id: The ID of the extension schema to retrieve
Returns:
Extension schema details
|