{"library":"pygerduty","title":"Pygerduty Python Client for PagerDuty","description":"Pygerduty is a Python client library for interacting with PagerDuty's REST API and Events API. Originally designed for PagerDuty API v1, it includes some updates for v2 compatibility in a separate module. The latest version is 0.38.3, released in April 2020.","language":"python","status":"deprecated","last_verified":"Sat May 16","install":{"commands":["pip install pygerduty"],"cli":{"name":"pygerduty","version":"sh: 1: pygerduty: not found"}},"imports":["import pygerduty\npager = pygerduty.PagerDuty(\"your_subdomain\", \"your_api_key\")","import pygerduty.v2\npager_v2 = pygerduty.v2.PagerDuty(\"your_subdomain\", \"your_api_key\")"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import os\nimport pygerduty\n\n# Ensure your PagerDuty subdomain and API key are set as environment variables\nPD_SUBDOMAIN = os.environ.get('PD_SUBDOMAIN', 'your_subdomain_here')\nPD_API_KEY = os.environ.get('PD_API_KEY', 'YOUR_API_KEY_HERE')\n\nif not PD_SUBDOMAIN or not PD_API_KEY:\n    print(\"Please set PD_SUBDOMAIN and PD_API_KEY environment variables.\")\nelse:\n    try:\n        # Instantiate a PagerDuty client (targets v1 API by default)\n        pager = pygerduty.PagerDuty(PD_SUBDOMAIN, PD_API_KEY)\n\n        # List schedules (example using v1 API pattern)\n        print(f\"Fetching schedules for subdomain: {PD_SUBDOMAIN}\")\n        for schedule in pager.schedules.list():\n            print(f\"  - ID: {schedule.id}, Name: {schedule.name}\")\n\n        # For PagerDuty API v2 interactions (if implemented in your version/fork)\n        # import pygerduty.v2\n        # pager_v2 = pygerduty.v2.PagerDuty(PD_SUBDOMAIN, PD_API_KEY)\n        # print(\"\\nFetching users via v2 API (if supported by your client config):\")\n        # for user in pager_v2.users.list():\n        #     print(f\"  - ID: {user.id}, Name: {user.name}, Email: {user.email}\")\n\n    except Exception as e:\n        print(f\"An error occurred: {e}\")\n        print(\"Please check your PagerDuty subdomain, API key, and network connectivity.\")","lang":"python","description":"This quickstart demonstrates how to instantiate a `pygerduty` client for the PagerDuty v1 API (default behavior) and fetch a list of schedules. It uses environment variables for authentication credentials.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-16","installed_version":"0.38.3","pypi_latest":"0.38.3","is_stale":false,"summary":{"python_range":"3.10–3.9","success_rate":100,"avg_install_s":1.6,"avg_import_s":0.02,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"pygerduty","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.02,"mem_mb":1,"disk_size":"18.0M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"pygerduty","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.6,"import_time_s":0.01,"mem_mb":1,"disk_size":"18M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"pygerduty","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.04,"mem_mb":1.1,"disk_size":"19.9M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"pygerduty","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.6,"import_time_s":0.03,"mem_mb":1.1,"disk_size":"20M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"pygerduty","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.02,"mem_mb":0.6,"disk_size":"11.8M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"pygerduty","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.5,"import_time_s":0.02,"mem_mb":0.6,"disk_size":"12M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"pygerduty","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.02,"mem_mb":0.8,"disk_size":"11.5M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"pygerduty","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.4,"import_time_s":0.02,"mem_mb":0.6,"disk_size":"12M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"pygerduty","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.02,"mem_mb":1.4,"disk_size":"17.5M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"pygerduty","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.8,"import_time_s":0.02,"mem_mb":1.4,"disk_size":"18M"}]}}