pagerduty
Clients for PagerDuty's Public APIs
Decision gist · record as of 2026-08-14
Yes. The package is actively maintained, has low install friction, no known vulnerabilities, and is widely used (top 5000 on PyPI). It directly solves the problem of interacting with PagerDuty's APIs from Python. The only caveat is to verify the license treatment before use, since metadata indicates it is unclear despite the description stating MIT.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later; a valid PagerDuty routing key or API token is needed for authentication.
- Low friction install with a single runtime dependency (httpx2).
- Actively maintained with a release within the last 30 days and support for modern Python versions (3.10+).
License · maintenance · safety
(unclear) — License treatment is unclear in the metadata, though the description excerpt states the code is made available under the MIT License. Verify the actual license file in the repository before relying on this for compliance.
last release 2026-07-15 (30 days) · last repo commit 2026-08-11 · 18 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 5,664,670 downloads/mo, #2,059 on PyPI
Alternatives
Verify before relying
pip install pagerduty
from pagerduty import EventsAPIV2Client
client = EventsAPIV2Client(routing_key='your-routing-key')
client.trigger(description='Network latency is high')- Whether license_spdx and license_raw being null reflects a packaging issue or genuine metadata gap in the repository
- Full scope of API endpoints and resources covered by the client abstraction layer
- Whether the CLI tool (pagerduty trigger, etc.) is feature-complete or limited to Events API v2
What it is and what it does
This is a Python client library for interacting with PagerDuty's public REST APIs. It wraps httpx2 to provide a higher-level abstraction that handles authentication, pagination, filtering, and automatic connection pooling, eliminating boilerplate code when making requests to PagerDuty. The library is designed to balance ease of use with direct access to the underlying HTTP client, so you can still inspect response headers or set custom request headers when needed.
The package includes both a programmatic API for use in Python applications and a command-line interface for triggering incidents and other Events API operations. It was built to replace code duplication in PagerDuty's own internal tooling and is the successor to the pdpyras library. It handles rate limiting with configurable cooldown and reattempt logic, and supports Python 3.10 through 3.13.
Use it for
- Trigger incidents or send events to PagerDuty from Python applications or monitoring systems
- Query incidents, users, schedules, or other PagerDuty objects with built-in pagination and filtering
- Build automation scripts that interact with PagerDuty's REST API without managing HTTP details
- Integrate PagerDuty alerting into custom Python-based incident response workflows
- Use the CLI tool to trigger incidents directly from shell scripts or cron jobs
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
The package is actively maintained, has low install friction, no known vulnerabilities, and is widely used (top 5000 on PyPI). It directly solves the problem of interacting with PagerDuty's APIs from Python. The only caveat is to verify the license treatment before use, since metadata indicates it is unclear despite the description stating MIT.
Install
pagerduty on PyPI
Before you install
Low friction install with a single runtime dependency (httpx2). Actively maintained with a release within the last 30 days and support for modern Python versions (3.10+).
Requires Python 3.10 or later; a valid PagerDuty routing key or API token is needed for authentication.
License in practice
License treatment is unclear in the metadata, though the description excerpt states the code is made available under the MIT License. Verify the actual license file in the repository before relying on this for compliance.
Quickstart
pip install pagerduty
from pagerduty import EventsAPIV2Client
client = EventsAPIV2Client(routing_key='your-routing-key')
client.trigger(description='Network latency is high')
Verify before relying
- Whether license_spdx and license_raw being null reflects a packaging issue or genuine metadata gap in the repository
- Full scope of API endpoints and resources covered by the client abstraction layer
- Whether the CLI tool (pagerduty trigger, etc.) is feature-complete or limited to Events API v2
Package facts
| License | Not declared unclear |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packagehttpx2 |
| Maintenance | Actively maintained 30 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 5,664,670 / month, #2,059 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
Evidence: pagerduty-7.0.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “pagerduty python library”
- pagerdutyLightweight Python client library for PagerDuty's REST API v2 and…
- pygerdutyPygerduty is a Python client library for PagerDuty's REST API and…
- pdpyrasA REST API client library for PagerDuty that wraps the Requests…
Give your agent the search over MCP, or paste the wish link into any chat.
More WWW/HTTP packages
urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.
Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.
h11 is a pure-Python HTTP/1.1 protocol implementation that handles parsing and serializing HTTP messages without any built-in I/O, letting you integrate it with any network layer you choose.
HTTPX is a fully featured HTTP client library for Python that provides both sync and async APIs, with support for HTTP/1.1 and HTTP/2, plus an integrated command-line client.
Install it if you are building new projects or modernizing existing ones that rely on HTTP.
A minimal low-level HTTP client library that sends HTTP requests with thread-safe and task-safe connection pooling, supporting HTTP/1.1, HTTP/2, proxies, and both sync and async interfaces.
aiohttp is an async HTTP client and server framework built on asyncio, supporting both WebSockets and middleware-based routing for building concurrent web applications.
Install it if you need async HTTP client or server capabilities in asyncio-based applications.
See also pdpyras · pygerduty · pypd · vultr · devo-sdk · volue-insight-timeseries · pagerduty-mcp · apiclient · sailthru-client · hammock