Overview

The PagerDuty API provides a programmatic interface to PagerDuty's platform, which specializes in incident management, on-call scheduling, and automated response orchestration. Established in 2009, PagerDuty focuses on transforming digital signals into actionable insights, aiming to reduce alert fatigue and accelerate resolution times for operational incidents PagerDuty documentation. The API is designed for developers and technical buyers seeking to integrate PagerDuty's capabilities into their existing monitoring stacks, custom applications, and operational workflows.

Key use cases for the PagerDuty API include automating the creation and resolution of incidents based on events from various monitoring systems, dynamically updating on-call schedules, and synchronizing user and team data with identity management solutions. For example, an organization might use the API to automatically trigger an incident in PagerDuty when a specific error threshold is met in a logging service, ensuring that the correct on-call team is notified immediately. Conversely, the API can be used to update an external dashboard with the current status of an incident being managed within PagerDuty.

The platform's core products, accessible via the API, encompass incident management, on-call management, event intelligence, automation, and stakeholder communication. Event intelligence features leverage machine learning to correlate related alerts, suppress noise, and prioritize critical issues, which can be configured and managed through API calls. This enables organizations to build more resilient systems and streamline their incident response processes, moving towards proactive rather than reactive operations. The API supports various authentication methods, primarily API tokens, and offers comprehensive documentation with examples in languages like Python and cURL PagerDuty API reference.

PagerDuty is particularly well-suited for organizations requiring robust on-call scheduling and automation, real-time incident response, and advanced event intelligence to reduce alert noise. It shines in environments where multiple monitoring tools generate a high volume of alerts, and there's a need to consolidate, filter, and route these alerts to the right personnel efficiently. Teams can leverage the API to customize notification rules, escalation policies, and incident workflows, ensuring that critical issues are addressed promptly and effectively, minimizing downtime and business impact.

Key features

  • Incident Management: Programmatically create, update, acknowledge, resolve, and reassign incidents. This allows for automated incident lifecycles based on external system events.
  • On-Call Management: Manage on-call schedules, escalation policies, and rotations for users and teams. This enables dynamic adjustment of who is on call based on external factors or internal system changes.
  • Event Ingestion and Processing: Send events from monitoring tools and custom applications to PagerDuty for processing into alerts and incidents. The API supports various event formats.
  • User and Team Management: Create, update, and manage users, teams, and their associated services and escalation policies. This facilitates synchronization with identity providers or internal HR systems.
  • Reporting and Analytics: Retrieve data on incident response performance, service health, and team productivity. This supports custom dashboards and operational insights.
  • Automation Actions: Trigger automated diagnostic or remediation actions directly from PagerDuty incidents, often integrated with runbook automation platforms.
  • Stakeholder Communication: Automate status updates and stakeholder notifications during incidents to keep relevant parties informed without manual intervention.

Pricing

PagerDuty offers a free tier for small teams and several paid plans with varying features and user limits. Pricing is typically per user, per month, and often billed annually.

Plan Name Key Features Pricing (as of 2026-05-08)
Free Up to 5 users, basic incident management, on-call scheduling, mobile app Free
Starter Everything in Free, plus unlimited users, advanced reporting, 24/7 support $21/user/month (billed annually)
Professional Everything in Starter, plus event intelligence, automation actions, business health dashboards Contact Sales
Business Everything in Professional, plus advanced security, dedicated support, custom integrations Contact Sales
Enterprise Everything in Business, plus enterprise-grade scale, custom solutions, strategic support Contact Sales

For detailed and up-to-date pricing information, refer to the official PagerDuty pricing page.

Common integrations

  • Monitoring Tools: Integrates with systems like Datadog, New Relic, Prometheus, and AWS CloudWatch to ingest alerts and trigger incidents.
  • Ticketing Systems: Connects with Jira, ServiceNow, and Zendesk to synchronize incident status and create follow-up tickets.
  • ChatOps Platforms: Integrates with Slack and Microsoft Teams for real-time incident collaboration and command execution.
  • Cloud Providers: Direct integrations with AWS, Azure, and Google Cloud Platform for event ingestion and resource management.
  • CI/CD Pipelines: Used with Jenkins, GitLab CI, and GitHub Actions to trigger incidents on deployment failures or critical build issues.
  • Identity Management: Synchronizes user and team data with Okta, Azure AD, and other SSO providers for streamlined access control.
  • Observability Platforms: Integrates with tools like Splunk and Grafana for enhanced data correlation and visualization. For example, Splunk's VictorOps, a direct competitor, also offers robust API capabilities for incident management Splunk VictorOps documentation.

Alternatives

  • Opsgenie (Atlassian): A comprehensive incident management platform offering on-call scheduling, alerting, and reporting, tightly integrated with other Atlassian products like Jira Service Management.
  • VictorOps (Splunk): Provides incident management, on-call scheduling, and collaboration tools, with a focus on ChatOps and real-time incident resolution.
  • Rootly: An incident management platform built for modern engineering teams, emphasizing automation, Slack-native workflows, and post-incident analysis.

Getting started

To get started with the PagerDuty API, you typically need to obtain an API token from your PagerDuty account. This token authenticates your requests. The following Python example demonstrates how to list services using the PagerDuty REST API.

import requests
import os

# Replace with your PagerDuty API token and subdomain
# It's recommended to store your API token as an environment variable
API_TOKEN = os.environ.get("PAGERDUTY_API_TOKEN")
SUBDOMAIN = "your_subdomain" # e.g., 'mycompany'

if not API_TOKEN:
    print("Error: PAGERDUTY_API_TOKEN environment variable not set.")
    exit(1)

headers = {
    "Accept": "application/vnd.pagerduty+json;version=2",
    "Authorization": f"Token token={API_TOKEN}"
}

# List services
# A comprehensive API reference is available at https://developer.pagerduty.com/api-reference/
url = f"https://api.pagerduty.com/services"

try:
    response = requests.get(url, headers=headers)
    response.raise_for_status() # Raise an HTTPError for bad responses (4xx or 5xx)
    services_data = response.json()

    print("PagerDuty Services:")
    for service in services_data.get("services", []):
        print(f"- Name: {service['name']}, ID: {service['id']}, Status: {service['status']}")

except requests.exceptions.HTTPError as http_err:
    print(f"HTTP error occurred: {http_err} - {response.text}")
except requests.exceptions.ConnectionError as conn_err:
    print(f"Connection error occurred: {conn_err}")
except requests.exceptions.Timeout as timeout_err:
    print(f"Timeout error occurred: {timeout_err}")
except requests.exceptions.RequestException as req_err:
    print(f"An unexpected error occurred: {req_err}")

This script initializes a request with the necessary headers, including the API token for authentication. It then makes a GET request to the /services endpoint to retrieve a list of all configured services in your PagerDuty account. Error handling is included to catch common issues like network problems or API errors.

Before running, ensure you have the requests library installed (pip install requests) and set your PAGERDUTY_API_TOKEN environment variable. Replace "your_subdomain" with your actual PagerDuty subdomain if your API calls require it, though for the core API, api.pagerduty.com is the standard endpoint.