---
title: PagerDuty API Integration on Truto
slug: pagerduty
category: Incident Management
canonical: "https://truto.one/integrations/detail/pagerduty/"
---

# PagerDuty API Integration on Truto



**Category:** Incident Management  
**Status:** Generally available

## Unified APIs

### Unified User Directory API

- **Licenses** — Licenses represent concepts like user seats in apps that support them
- **Roles** — The Role object represents a role of a User.
- **Users** — The User object represents a User.

## MCP-ready AI tools

Truto exposes 157 tools for PagerDuty that AI agents can call directly.

- **list_all_pagerduty_users** — List users in PagerDuty account. Returns users' id, name, email, and role fields. Supports filtering by query parameter 'query'.
- **get_single_pagerduty_user_by_id** — Get details about a specific user in PagerDuty by id. Returns user fields including id, name, email, role, time_zone, job_title, avatar_url, description, teams, contact_methods, and notification_rules.
- **delete_a_pagerduty_user_by_id** — Delete a user by id in PagerDuty. Returns 400 if the user has assigned incidents unless offboarding feature is enabled and configured. Incident reassignment is asynchronous and not guaranteed before response.
- **update_a_pagerduty_user_by_id** — Update a user by id in PagerDuty. Requires user object with name and email. Returns updated user fields including type, name, email, time_zone, color, role, job_title, avatar_url, and description.
- **list_all_pagerduty_user_sessions** — List active sessions of a PagerDuty user by id. Returns sessions array with details of each active session. Note: active sessions exclude newly issued OAuth tokens since November 2021.
- **list_all_pagerduty_licenses** — List licenses associated with your account in PagerDuty. Returns license details including id, type, and status.
- **list_all_pagerduty_license_allocations** — List license allocations in PagerDuty. Returns licenses allocated to users within your account including user and license details.
- **list_all_pagerduty_user_licenses** — Get the license allocated to a user in PagerDuty. Requires the user id. Returns license details including license type and status.
- **list_all_pagerduty_schedules** — List on-call schedules in PagerDuty. Returns schedules array with schedule details including name and time periods users are on-call.
- **get_single_pagerduty_schedule_by_id** — Get detailed information about a schedule in PagerDuty by id. Returns id, name, description, time_zone, schedule_layers with entries, escalation_policies, users, teams, and URLs for the schedule.
- **create_a_pagerduty_schedule** — Create a new on-call schedule in PagerDuty with name, type, time_zone, description, and schedule_layers. Returns id, type, summary, self URL, html_url, escalation_policies, users, teams, schedule_layers, overrides_subschedule, and final_schedule.
- **update_a_pagerduty_schedule_by_id** — Update an existing on-call schedule in PagerDuty by id. Returns the updated schedule including id, name, time_zone, description, schedule_layers, escalation_policies, users, teams, overrides_subschedule, and final_schedule.
- **delete_a_pagerduty_schedule_by_id** — Delete a schedule by id in PagerDuty. Returns no content on success.
- **list_all_pagerduty_users_on_call** — List all users on call in a given schedule using id. Returns users array with user details for the specified schedule.
- **list_all_pagerduty_on_calls** — List all on-call entries in PagerDuty filtered by escalation_policy_ids, schedule_ids, user_ids, since, and until. Returns on-call periods with user, escalation policy, and schedule details.
- **create_a_pagerduty_incident** — Create an incident in PagerDuty with required fields: type, title, service, priority, and escalation_policy. Returns incident id, title, status, incident_number, urgency, service, priority, escalation_policy, assignments, and URLs.
- **list_all_pagerduty_incidents** — List existing incidents in PagerDuty. Returns incidents representing problems or issues that need resolution. Key response fields include incident id, status, urgency, and assigned users.
- **get_single_pagerduty_incident_by_id** — Get detailed information about a specific incident in PagerDuty by id. Returns fields including id, summary, incident_number, title, status, created_at, updated_at, service, assignments, escalation_policy, teams, urgency, and more.
- **update_a_pagerduty_incident_by_id** — Update an incident by id in PagerDuty. Returns updated incident fields including id, summary, status, title, incident_number, created_at, updated_at, service, priority, assignments, acknowledgements, resolved_at, urgency, and escalation_policy.
- **list_all_pagerduty_me** — Get details about the current user in PagerDuty. Returns user information including id, name, email, and role.
- **list_all_pagerduty_services** — List existing services in PagerDuty. Returns service id, name, description, status, escalation policies, and teams associated with each service.
- **get_single_pagerduty_service_by_id** — Get details about a specific service in PagerDuty by id. Returns fields including id, type, summary, name, status, escalation_policy, teams, integrations, incident_urgency_rule, support_hours, scheduled_actions, and auto_pause_notifications_parameters.
- **create_a_pagerduty_service** — Create a new service in PagerDuty with required escalation_policy. Returns id, name, status, escalation_policy, incident_urgency_rule, support_hours, scheduled_actions, and auto_pause_notifications_parameters.
- **update_a_pagerduty_service_by_id** — Update an existing service by id in PagerDuty. Returns updated service fields including id, name, status, escalation_policy, incident_urgency_rule, support_hours, scheduled_actions, integrations, teams, and auto_pause_notifications_parameters.
- **delete_a_pagerduty_service_by_id** — Delete a service by id in PagerDuty. Once deleted, the service is inaccessible and new incidents cannot be created for it.
- **list_all_pagerduty_incident_types** — List available incident types in PagerDuty filtered by enabled state. Returns incident_types array with details like type name and status.
- **get_single_pagerduty_incident_type_by_id** — Get detailed information about a single incident type in PagerDuty using id. Returns enabled, id, parent, name, type, description, created_at, updated_at, and display_name fields.
- **create_a_pagerduty_incident_type** — Create a new incident type in PagerDuty with required fields name, display_name, and parent_type. Returns fields enabled, id, name, parent, type, description, created_at, updated_at, and display_name.
- **update_a_pagerduty_incident_type_by_id** — Update an Incident Type by id in PagerDuty. Returns fields: id, name, created_at, updated_at, description, display_name, enabled, parent, and type.
- **list_all_pagerduty_abilities** — List all abilities available to your PagerDuty account. Returns an array of ability names such as 'teams' and 'urgencies'.
- **list_all_pagerduty_add_ons** — List all installed Add-ons in PagerDuty. Returns id, type, summary, self URL, html_url, name, and src for each Add-on.
- **get_single_pagerduty_add_on_by_id** — Get details about an existing Add-on in PagerDuty by id. Returns fields id, type, name, src, and services with service details including id, type, summary, self, and html_url.
- **create_a_pagerduty_add_on** — Install an Add-on with name and src in PagerDuty. Returns id, type, summary, self URL, html_url, name, and src of the installed Add-on. HTTPS required for src.
- **update_a_pagerduty_add_on_by_id** — Update an Add-on by id in PagerDuty. Requires id, and addon object with type, name, and src. Returns updated add-on with id, type, name, src, and services array.
- **delete_a_pagerduty_add_on_by_id** — Delete an Add-on by id in PagerDuty. Removes an existing Add-on which adds new functionality to PagerDuty's UI. Returns 204 on successful deletion.
- **list_all_pagerduty_alert_grouping_settings** — List all alert grouping settings in PagerDuty. Returns id, name, description, type, config, services, created_at, and updated_at fields for each setting.
- **get_single_pagerduty_alert_grouping_setting_by_id** — Get an Alert Grouping Setting by id in PagerDuty. Returns id, name, description, type, config, services, created_at, and updated_at fields. Note: features available only on certain plans.
- **create_a_pagerduty_alert_grouping_setting** — Create a new Alert Grouping Setting in PagerDuty. Returns id, name, description, type, config, services, created_at, and updated_at fields of the created setting.
- **update_a_pagerduty_alert_grouping_setting_by_id** — Update an Alert Grouping Setting by id in PagerDuty. Returns the updated setting including id, name, description, type, config, services, created_at, and updated_at fields.
- **delete_a_pagerduty_alert_grouping_setting_by_id** — Delete an existing Alert Grouping Setting by id in PagerDuty. Returns 204 on successful deletion.
- **list_all_pagerduty_audit_records** — List audit records matching query parameters in PagerDuty. Returns records sorted by execution_time with fields id, execution_time, method, root_resource, action, and details. Supports cursor and limit for pagination.
- **list_all_pagerduty_automation_actions** — List Automation Actions in PagerDuty filtered by optional parameters. Returns id, name, description, action_type, creation_time, modify_time, privileges, and services fields for each action.
- **get_single_pagerduty_automation_action_by_id** — Get an Automation Action by id in PagerDuty. Returns fields including id, name, description, action_type, creation_time, modify_time, invocation permissions, and associated services and teams.
- **create_a_pagerduty_automation_action** — Create an Automation Action in PagerDuty with name, description, action_type, and action_data_reference.script. Returns action id, name, description, action_type, action_data_reference.script, creation_time, modify_time, invocation permissions, services, and teams.
- **update_a_pagerduty_automation_action_by_id** — Update an Automation Action by id in PagerDuty. Returns updated action with fields id, name, description, action_type, action_data_reference.script, creation_time, modify_time, and invocation permissions.
- **delete_a_pagerduty_automation_action_by_id** — Delete an Automation Action by id in PagerDuty. Returns no content on successful deletion.
- **list_all_pagerduty_invocations** — List invocations filtered by action_id, incident_id, invocation_state, or not_invocation_state in PagerDuty. Returns id, type, action_id, action_snapshot, duration, metadata, runner_id, state, and timing for each invocation.
- **get_single_pagerduty_invocation_by_id** — Get an Automation Action Invocation by id in PagerDuty. Returns id, type, action_id, action_snapshot with name and action_type, duration, metadata with agent and incident ids, runner_id, state, and timing of state transitions.
- **create_a_pagerduty_invocation** — Create an invocation for an action in PagerDuty using id and metadata with incident_id. Returns invocation id, type, action_snapshot with name and type, runner_id, timing states, duration, state, action_id, and metadata including agent and incident details.
- **list_all_pagerduty_automation_action_runners** — List Automation Action runners in PagerDuty. Returns runners with fields id, name, description, creation_time, type, runner_type, runbook_base_uri, status, teams, and privileges. Results sorted by runner name.
- **get_single_pagerduty_automation_action_runner_by_id** — Get an Automation Action runner by id in PagerDuty. Returns runner fields including id, name, summary, type, description, creation_time, runner_type, status, teams, and privileges.
- **create_a_pagerduty_automation_action_runner** — Create an Automation Action runner with name, description, runner_type, and teams in PagerDuty. Returns runner id, name, summary, type, description, creation_time, runner_type, status, secret, teams, and privileges.
- **update_a_pagerduty_automation_action_runner_by_id** — Update an Automation Action runner by id in PagerDuty. Returns runner details including id, name, summary, type, description, creation_time, runner_type, status, teams, and privileges.
- **delete_a_pagerduty_automation_action_runner_by_id** — Delete an Automation Action runner by id in PagerDuty. Returns 204 status on successful deletion.
- **list_all_pagerduty_paused_incident_alert_reports** — Get the 5 most recent alerts triggered and 5 most recent alerts resolved after being paused in PagerDuty. Requires since and until parameters to define the reporting period. Returns id, service_id, and created_at for each alert.
- **get_single_pagerduty_paused_incident_alert_report_by_id** — Get paused incident reporting counts with parameters service_id, since, suspended_by, and until in PagerDuty. Returns paused_count, triggered_after_pause_count, and resolved_after_pause_count for the specified period.
- **list_all_pagerduty_business_services** — List existing business services in PagerDuty. Returns id, name, description, point_of_contact, summary, team, type, self, and html_url fields for each business service.
- **get_single_pagerduty_business_service_by_id** — Get details about a specific business service by id in PagerDuty. Returns id, name, description, point_of_contact, summary, team reference, and URLs for the business service.
- **create_a_pagerduty_business_service** — Create a new Business Service in PagerDuty with name, description, point_of_contact, and team id. Returns id, type, self URL, html_url, point_of_contact, name, description, summary, and team reference.
- **update_a_pagerduty_business_service_by_id** — Update a Business Service by id in PagerDuty. Returns the updated business_service object including id, name, description, point_of_contact, summary, team reference, self URL, and html_url.
- **delete_a_pagerduty_business_service_by_id** — Delete a Business Service by id in PagerDuty. Once deleted, the service is inaccessible and new incidents cannot be created for it. Returns no content on success.
- **list_all_pagerduty_business_service_subscribers** — Get a list of Notification Subscribers for a Business Service in PagerDuty by id. Returns subscriber_id and subscriber_type for each subscriber.
- **create_a_pagerduty_business_service_subscriber** — Create Business Service Subscribers for id in PagerDuty. Returns subscriptions array with subscriber_id, subscriber_type, subscribable_id, subscribable_type, account_id, and result indicating subscription status.
- **list_all_pagerduty_change_events** — List all existing Change Events in PagerDuty. Returns an array of change events with fields id, summary, timestamp, type, source, integration, services, custom_details, and links.
- **get_single_pagerduty_change_event_by_id** — Get details about a specific Change Event by id in PagerDuty. Returns fields including summary, timestamp, type, source, integration id and type, associated services, custom details, and links.
- **create_a_pagerduty_change_event** — Create a change event in PagerDuty. Requires sending event details in the request body. The response confirms event acceptance with status 202.
- **update_a_pagerduty_change_event_by_id** — Update a Change Event by id in PagerDuty. Returns the updated change_event including summary, timestamp, source, integration id and type, associated services, custom_details, and links.
- **list_all_pagerduty_escalation_policies** — List all escalation policies in PagerDuty. Returns id, name, summary, type, on_call_handoff_notifications, escalation_rules, services, num_loops, and teams for each policy.
- **get_single_pagerduty_escalation_policy_by_id** — Get information about an escalation policy by id in PagerDuty. Returns id, name, description, escalation_rules with targets and delay, services, num_loops, teams, and on_call_handoff_notifications.
- **create_a_pagerduty_escalation_policy** — Create an escalation policy with name and escalation_rules in PagerDuty. Returns id, name, escalation_rules with targets, services, num_loops, on_call_handoff_notifications, and teams.
- **update_a_pagerduty_escalation_policy_by_id** — Update an escalation policy by id in PagerDuty. Returns the updated escalation policy including id, name, description, escalation_rules, services, num_loops, on_call_handoff_notifications, and teams.
- **delete_a_pagerduty_escalation_policy_by_id** — Delete an escalation policy by id in PagerDuty. The escalation policy must not be in use by any services. Returns no content on success.
- **list_all_pagerduty_extension_schemas** — List all extension schemas in PagerDuty. Returns fields id, description, guide_url, icon_url, key, label, logo_url, send_types, and url for each extension schema.
- **get_single_pagerduty_extension_schema_by_id** — Get details about a specific extension vendor in PagerDuty by id. Returns id, summary, description, guide_url, icon_url, key, label, logo_url, send_types, and url fields.
- **list_all_pagerduty_extensions** — List existing extensions in PagerDuty. Returns fields id, name, summary, type, endpoint_url, extension_schema, and extension_objects for each extension.
- **get_single_pagerduty_extension_by_id** — Get details about an existing extension by id in PagerDuty. Returns fields including id, name, summary, endpoint_url, extension_schema, extension_objects, and temporarily_disabled status.
- **create_a_pagerduty_extension** — Create a new extension in PagerDuty with required fields name, extension_schema, and extension_objects. Returns id, name, summary, type, endpoint_url, extension_schema details, and extension_objects details.
- **update_a_pagerduty_extension_by_id** — Update an existing extension by id in PagerDuty. Returns the updated extension with fields id, name, summary, type, endpoint_url, extension_schema (id, type, summary, self), and extension_objects (id, type, summary, self, html_url).
- **delete_a_pagerduty_extension_by_id** — Delete an existing extension by id in PagerDuty. Once deleted, the extension is inaccessible and new incidents cannot be created for it.
- **pagerduty_extensions_enable** — Enable an extension by id in PagerDuty. Returns the extension's id, name, summary, type, endpoint_url, extension_schema details, and extension_objects associated with the extension.
- **list_all_pagerduty_incident_alerts** — List alerts for the specified incident in PagerDuty. Requires id. Returns alert id, summary, type, URLs, created_at, status, alert_key, service info, body details, incident id, suppressed status, severity, and integration info.
- **get_single_pagerduty_incident_alert_by_id** — Get detailed information about an alert in PagerDuty by id and alert_id. Returns alert fields including id, summary, status, severity, service, incident, and integration details.
- **update_a_pagerduty_incident_alert_by_id** — Update an alert by id and alert_id in PagerDuty. Returns the alert's type, status, associated incident id and type, and body details including contexts and custom keys.
- **pagerduty_incident_alerts_manage** — Update multiple alerts for an incident in PagerDuty by id. Returns updated alerts with fields id, summary, status, severity, service info, incident reference, and suppression status. Max 250 alerts per request.
- **list_all_pagerduty_incident_workflows** — List existing Incident Workflows in PagerDuty. Returns id, name, description, type, created_at, self URL, and html_url for each workflow.
- **get_single_pagerduty_incident_workflow_by_id** — Get an Incident Workflow by id in PagerDuty. Returns id, name, description, created_at, self URL, html_url, steps array with step details, and is_enabled status.
- **create_a_pagerduty_incident_workflow** — Create a new Incident Workflow in PagerDuty with name, description, and steps. Returns id, name, description, type, created_at, self URL, html_url, and steps with action details.
- **update_a_pagerduty_incident_workflow_by_id** — Update an Incident Workflow by id in PagerDuty. Returns the updated incident workflow including id, name, description, type, created_at, self URL, html_url, is_enabled status, team, and steps with action configurations.
- **delete_a_pagerduty_incident_workflow_by_id** — Delete an existing Incident Workflow by id in PagerDuty. Returns success confirmation upon deletion.
- **list_all_pagerduty_incident_workflows_actions** — List Incident Workflow Actions in PagerDuty. Returns actions array with id, name, description, action_type, created_at, and created_by_user_id fields. Supports keyword filtering.
- **get_single_pagerduty_incident_workflows_action_by_id** — Get an Incident Workflow Action by id in PagerDuty. Returns fields including id, name, description, action_type, version, inputs, outputs, created_at, and created_by_user_id.
- **list_all_pagerduty_incident_workflows_triggers** — List existing Incident Workflow Triggers in PagerDuty. Returns id, type, trigger_type_name, trigger_type, condition, trigger_url, workflow details, services, and subscription status.
- **get_single_pagerduty_incident_workflows_trigger_by_id** — Get an Incident Workflows Trigger by id in PagerDuty. Returns fields id, type, trigger_type_name, trigger_type, trigger_url, self, workflow details, services, is_subscribed_to_all_services, and permissions.
- **create_a_pagerduty_incident_workflows_trigger** — Create a new Incident Workflow Trigger in PagerDuty. Requires trigger_type and workflow.id. Returns trigger id, type, trigger_type_name, condition, trigger_url, workflow details, services, and subscription status.
- **update_a_pagerduty_incident_workflows_trigger_by_id** — Update an existing Incident Workflow Trigger by id in PagerDuty. Returns fields including id, trigger_type_name, condition, trigger_url, services with id and summary, and workflow details such as id, name, and description.
- **delete_a_pagerduty_incident_workflows_trigger_by_id** — Delete an existing Incident Workflow Trigger by id in PagerDuty. Returns no content on success.
- **list_all_pagerduty_log_entries** — List all incident log entries in PagerDuty. Returns id, type, summary, created_at, agent, channel, incident, teams, contexts, and event_details fields for each log entry.
- **get_single_pagerduty_log_entry_by_id** — Get details for a specific log entry by id in PagerDuty. Returns fields including id, type, summary, created_at, agent, channel, incident, teams, contexts, and event_details.
- **update_a_pagerduty_log_entry_by_id** — Update log entry channel details and type in PagerDuty. Requires id. Returns updated channel type and details.
- **list_all_pagerduty_maintenance_windows** — List maintenance windows in PagerDuty filtered by service_ids, team_ids, and filter state. Returns id, summary, type, start_time, end_time, description, services, teams, and created_by fields.
- **get_single_pagerduty_maintenance_window_by_id** — Get an existing maintenance window by id in PagerDuty. Returns id, type, summary, start_time, end_time, description, services, teams, and created_by details. The end_time must be in the future and after start_time.
- **create_a_pagerduty_maintenance_window** — Create a maintenance window with start_time, end_time, and services in PagerDuty. Returns id, summary, start_time, end_time, description, services, teams, and created_by in the response.
- **update_a_pagerduty_maintenance_window_by_id** — Update a maintenance window by id in PagerDuty. Returns the updated maintenance window including id, summary, start_time, end_time, description, services, teams, and created_by details.
- **delete_a_pagerduty_maintenance_window_by_id** — Delete or end a maintenance window by id in PagerDuty. Deletes if in the future or ends if ongoing. Cannot delete if already ended. Returns 204 on success.
- **list_all_pagerduty_notifications** — List notifications for a given time range with required parameters since and until in PagerDuty. Returns id, type, started_at, address, and user details for each notification. Date range must be less than 3 months.
- **list_all_pagerduty_priorities** — List existing priorities in PagerDuty. Returns an array of priorities with fields id, type, summary, self, name, and description representing the importance and impact of incidents.
- **list_all_pagerduty_overrides** — List overrides for a schedule with id, since, and until parameters in PagerDuty. Returns override id, start and end times, and user details including id, summary, self, and html_url.
- **create_a_pagerduty_override** — Create one or more overrides for a schedule identified by id in PagerDuty. Each override specifies start, end, and user details. The response returns status, override id, start, end, user id, summary, self URL, and html_url for each override.
- **delete_a_pagerduty_override_by_id** — Delete an override on a schedule in PagerDuty using id and override_id. Returns 200 OK if the override is truncated due to current time, otherwise 204 No Content on successful deletion. Cannot remove past overrides.
- **list_all_pagerduty_webhooks_subscriptions** — List webhook subscriptions with optional filtering by filter_type and filter_id in PagerDuty. Returns id, type, active status, delivery_method, description, events, and filter for each subscription.
- **get_single_pagerduty_webhooks_subscription_by_id** — Get details about a specific webhook subscription in PagerDuty by id. Returns id, type, active status, delivery_method with url and headers, description, events list, and filter object.
- **create_a_pagerduty_webhooks_subscription** — Create a webhook subscription with delivery_method, events, filter, and type in PagerDuty. Returns id, active status, description, events, filter, and delivery_method details including url and custom headers.
- **update_a_pagerduty_webhooks_subscription_by_id** — Update a webhook subscription by id in PagerDuty. Returns the updated webhook subscription including id, type, active status, delivery_method details, description, events, and filter.
- **delete_a_pagerduty_webhooks_subscription_by_id** — Delete a webhook subscription by id in PagerDuty. Returns no content on successful deletion.
- **pagerduty_webhooks_subscriptions_enable** — Enable a webhook subscription by id in PagerDuty. Returns the webhook_subscription object with fields id, type, active status, delivery_method details including url and temporarily_disabled status, description, events, and filter.
- **pagerduty_webhooks_subscriptions_test** — Test a webhook subscription by sending a pagey.ping event to the destination. Requires id. Returns 202 Accepted if successful.
- **list_all_pagerduty_standards** — Get all standards of an account in PagerDuty. Returns fields: id, name, description, active, type, resource_type, inclusions, and exclusions.
- **update_a_pagerduty_standard_by_id** — Update a standard by id in PagerDuty. Returns active status, description, exclusions, id, inclusions, name, resource_type, and type fields in the response.
- **list_all_pagerduty_status_dashboards** — Get all custom Status Dashboard views in PagerDuty. Returns id, url_slug, and name for each dashboard.
- **get_single_pagerduty_status_dashboard_by_id** — Get a Status Dashboard by id in PagerDuty. Returns id, url_slug, and name of the Status Dashboard.
- **list_all_pagerduty_vendors** — List all vendors in PagerDuty. Returns vendors with fields id, type, summary, self, name, website_url, logo_url, thumbnail_url, description, and integration_guide_url.
- **get_single_pagerduty_vendor_by_id** — Get details about a specific vendor by id in PagerDuty. Returns id, type, summary, self URL, name, website URL, logo URL, thumbnail URL, description, and integration guide URL.
- **list_all_pagerduty_tags** — List all tags in PagerDuty. Returns tag objects with id, label, summary, type, self URL, and html_url. Supports filtering by query.
- **get_single_pagerduty_tag_by_id** — Get details about a specific tag in PagerDuty by id. Returns fields type, summary, self URL, label, id, and html_url.
- **create_a_pagerduty_tag** — Create a tag with label in PagerDuty. Returns tag id, type, label, summary, self URL, and html_url.
- **delete_a_pagerduty_tag_by_id** — Delete a tag by id in PagerDuty. The response confirms successful deletion with no content returned.
- **list_all_pagerduty_teams** — List teams in PagerDuty. Returns id, type, summary, self URL, html_url, name, and description for each team.
- **get_single_pagerduty_team_by_id** — Get details about a specific team by id in PagerDuty. Returns fields id, type, summary, self, html_url, name, description, and default_role.
- **create_a_pagerduty_team** — Create a new team in PagerDuty with name and description. Returns id, type, summary, self URL, html_url, name, description, and base_role of the created team.
- **update_a_pagerduty_team_by_id** — Update a team by id in PagerDuty. Requires id and team object with name. Returns updated team with id, summary, self URL, html_url, name, description, and default_role.
- **delete_a_pagerduty_team_by_id** — Delete a team by id in PagerDuty. Requires id. Unresolved incidents will be reassigned to reassignment_team if specified or become account-level. Succeeds only if no associated Escalation Policies, Services, Schedules, or Subteams exist.
- **list_all_pagerduty_templates** — Get a list of all templates in PagerDuty. Returns template fields including id, name, description, template_type, created_by, updated_by, created_at, and updated_at.
- **get_single_pagerduty_template_by_id** — Get a single template by id in PagerDuty. Returns template fields including id, name, description, template_type, templated_fields (email_subject, email_body, message), created_by, updated_by, self, and type.
- **create_a_pagerduty_template** — Create a new template in PagerDuty with template_type, name, description, and templated_fields including email_subject, email_body, and message. Returns id, name, description, templated_fields, created_by, updated_by, self, and html_url.
- **update_a_pagerduty_template_by_id** — Update a template by id in PagerDuty. Requires template_type, name, description, and templated_fields including email_subject, email_body, and message. Returns updated template with id, name, description, templated_fields, created_by, updated_by, self, and html_url.
- **delete_a_pagerduty_template_by_id** — Delete a specific template by id in PagerDuty. Returns no content on success.
- **list_all_pagerduty_workflow_integrations** — List available Workflow Integrations in PagerDuty. Returns id, type, domain_name, package_name, name, description, icon_svg, tags, search_keywords, is_deprecated, entitled, application, configuration_schema, secrets_schema, html_url, self, created_at, and created_by fields.
- **get_single_pagerduty_workflow_integration_by_id** — Get details about a specific workflow integration by id in PagerDuty. Returns fields including id, type, domain_name, package_name, name, description, icon_svg, tags, search_keywords, is_deprecated, entitled, application, configuration_schema, secrets_schema, html_url, self, created_at, and created_by.
- **list_all_pagerduty_workflow_integration_connections** — List all Workflow Integration Connections in PagerDuty. Returns id, type, integration_id, name, service_url, external_id, external_id_label, health status, configuration, teams, html_url, self URL, created_at timestamp, and created_by user reference.
- **get_single_pagerduty_workflow_integration_connection_by_id** — Get details about a Workflow Integration Connection by integration_id and id in PagerDuty. Returns id, name, type, service_url, external_id, is_default, health status, configuration, teams, created_at, and created_by user info.
- **create_a_pagerduty_workflow_integration_connection** — Create a new Workflow Integration Connection with integration_id. Returns id, name, service_url, external_id, external_id_label, is_default, health status, configuration, teams, html_url, self URL, created_at timestamp, and created_by user reference in PagerDuty.
- **update_a_pagerduty_workflow_integration_connection_by_id** — Update a Workflow Integration Connection by integration_id and id in PagerDuty. Returns fields including id, name, service_url, external_id, is_default, health status, configuration, teams, created_at, and created_by user details.
- **delete_a_pagerduty_workflow_integration_connection_by_id** — Delete a Workflow Integration Connection by integration_id and id in PagerDuty. Returns no content on success.
- **list_all_pagerduty_event_orchestrations** — List all Global Event Orchestrations. Returns id, name, description, team reference, routes count, created_at, created_by, updated_at, updated_by, and version fields in the response.
- **get_single_pagerduty_event_orchestration_by_id** — Get Global Event Orchestration by id in PagerDuty. Returns id, self URL, name, description, team reference, integrations array, routes count, created_at, created_by user reference, updated_at, updated_by user reference, and version.
- **create_a_pagerduty_event_orchestration** — Create a Global Event Orchestration with name, description, and team id in PagerDuty. Returns orchestration id, name, description, team reference, integrations, routes count, creation and update metadata, and version.
- **update_a_pagerduty_event_orchestration_by_id** — Update a Global Event Orchestration by id in PagerDuty. Returns id, self URL, name, description, team reference, integrations, routes count, created_at, created_by, updated_at, updated_by, and version fields.
- **delete_a_pagerduty_event_orchestration_by_id** — Delete a Global Event Orchestration by id in PagerDuty. Once deleted, events can no longer be ingested using this Orchestration's Routing Key. Returns 204 on success.
- **list_all_pagerduty_event_orchestrations_integrations** — List integrations associated with an Event Orchestration in PagerDuty by id. Returns integration id, label, and parameters including routing_key and type.
- **get_single_pagerduty_event_orchestrations_integration_by_id** — Get an Integration for an Event Orchestration by id and integration_id in PagerDuty. Returns integration id, label, and parameters including routing_key and type.
- **create_a_pagerduty_event_orchestrations_integration** — Create an Integration for an Event Orchestration using id. Returns integration id, label, and parameters including routing_key and type.
- **update_a_pagerduty_event_orchestrations_integration_by_id** — Update an Integration for an Event Orchestration in PagerDuty using id and integration_id. Returns integration id, label, and parameters including routing_key and type.
- **delete_a_pagerduty_event_orchestrations_integration_by_id** — Delete an Integration for an Event Orchestration in PagerDuty using id and integration_id. This removes the Integration and its Routing Key, stopping all future events sent with that key.
- **list_all_pagerduty_incident_notes** — List notes for an incident in PagerDuty by incident id. Returns notes with id, user who created the note, channel of creation, content, and created_at timestamp.
- **create_a_pagerduty_incident_note** — Create a new note on an incident in PagerDuty using id. Returns note id, user info, channel, content, and created_at timestamp. Maximum 2000 notes per incident.
- **list_all_pagerduty_past_incidents** — Get past incidents for id in PagerDuty. Returns incidents within the past 6 months with similar metadata on the same service. Response includes incident id, created_at, self link, title, and similarity score. Total and limit fields reflect the number of incidents returned.
- **list_all_pagerduty_related_incidents** — Get the 20 most recent related incidents for the incident with id in PagerDuty. Returns related incidents with fields incident.id, incident.created_at, incident.self, incident.title, and relationships explaining why incidents are related.

## How it works

1. **Link your customer's PagerDuty account.** Use Truto's frontend SDK; we handle every OAuth and API key flow so you don't need to create the OAuth app.
2. **Authentication is automatic.** Truto refreshes tokens, stores credentials securely, and injects them into every API request.
3. **Call Truto's API to reach PagerDuty.** The Proxy API is a 1-to-1 mapping of the PagerDuty API.
4. **Get a unified response format.** Every response uses a single shape, with cursor-based pagination and data in the `result` field.

## Use cases

- **Trigger PagerDuty incidents from your monitoring or security platform** — If your SaaS product detects anomalies, threshold breaches, or security vulnerabilities, you can programmatically create PagerDuty incidents routed to the right service and escalation policy — and auto-resolve them when conditions normalize.
- **Sync incident status bidirectionally with your ticketing or support tool** — Customer support and ITSM platforms can create PagerDuty incidents on escalation and subscribe to webhook events so that when engineering acknowledges or resolves an incident, the linked ticket updates automatically — and vice versa.
- **Surface on-call context inside your product** — Internal developer portals, ChatOps tools, and workforce platforms can query PagerDuty schedules and on-call rosters in real time, letting users see exactly who to page without leaving your application.
- **Automate schedule overrides from workforce or HR systems** — When an employee books PTO in your HR or workforce management SaaS, you can automatically detect conflicting on-call shifts and create schedule overrides in PagerDuty to assign a backup engineer.
- **Enrich active incidents with diagnostic context** — AI-ops and observability platforms can append incident notes containing root-cause analysis, deployment logs, or forensic data directly to a PagerDuty incident timeline so responders have full context on arrival.

## What you can build

- **Automated incident creation and resolution** — Create PagerDuty incidents when your product detects a critical event and auto-resolve them via status update when the condition clears, using create and update incident endpoints.
- **Service picker for alert routing** — Let your end users browse their PagerDuty services and escalation policies inside your UI so they can map your product's resources to the correct PagerDuty routing path.
- **Live on-call roster widget** — Display who is currently on call for any service or schedule directly in your application using the on-calls and users-on-call endpoints.
- **PTO-aware schedule override automation** — Query PagerDuty schedules, detect conflicts with time-off requests from your platform, and create overrides to swap in a backup responder automatically.
- **Real-time incident webhook listener** — Create and manage webhook subscriptions so your product reacts instantly to incident state changes like triggered, acknowledged, and resolved events.
- **Incident note injection for AI-assisted triage** — Push AI-generated summaries, related logs, or runbook links as incident notes so the on-call engineer sees enriched context the moment they open the page.

## FAQs

### What authentication methods does the PagerDuty integration support?

PagerDuty supports API key (token) based authentication. Your end users provide their PagerDuty API key through Truto's managed auth flow, so you never handle raw credentials directly.

### Which PagerDuty resources can I read and write through Truto?

Truto supports full CRUD on incidents, services, schedules, escalation policies, business services, tags, teams, templates, extensions, webhook subscriptions, event orchestrations, and more. You can also list on-calls, create schedule overrides, append incident notes, manage automation actions and runners, and query audit records and log entries.

### Does Truto handle PagerDuty's pagination automatically?

Yes. Truto manages cursor and offset-based pagination across all PagerDuty list endpoints, so you receive complete result sets without implementing pagination logic yourself.

### Can I use Truto's Unified User Directory API with PagerDuty?

Yes. PagerDuty is mapped to Truto's Unified User Directory API, giving you a normalized schema for Users, Licenses, and Roles that works identically across other integrated platforms.

### How do I subscribe to real-time PagerDuty events like incident triggers or resolutions?

Use the webhook subscription endpoints — create, list, update, delete, enable, and test — to manage V3 webhook subscriptions. This lets your application react to events such as incident.triggered, incident.acknowledged, and incident.resolved in real time.

### Are there rate limit considerations when calling PagerDuty through Truto?

PagerDuty enforces rate limits on its REST API (typically around 900 requests per minute for most endpoints). Truto respects these limits and surfaces rate-limit headers so you can implement appropriate back-off strategies in your application.
