Skip to main content
PagerDuty logo

Overview

Add PagerDuty to any ModuleX agent or workflow. Incident management, on-call scheduling, and alerting via the PagerDuty REST API (api.pagerduty.com).
Categories: Monitoring & Observability · Incident Management · Developer Tools & Infrastructure · Auth: OAuth2 · Actions: 4

Authentication

OAuth2 Authentication

Connect using PagerDuty OAuth (recommended)

Required Credentials

FieldDescriptionRequiredFormat
Client IDPagerDuty OAuth App Client IDYes-
Client SecretPagerDuty OAuth App Client SecretYes-

OAuth Configuration

  • Authorization URL: https://identity.pagerduty.com/oauth/authorize
  • Token URL: https://identity.pagerduty.com/oauth/token
  • Scopes: read, write

Available Actions

Parameters

title
string
required
A succinct description of the nature, symptoms, cause, or effect of the incident
service_id
string
required
The ID of the PagerDuty service to trigger the incident on
urgency
string
The urgency of the incident: high or low
body_details
string
Additional incident details
incident_key
string
A string which identifies the incident. Subsequent requests with the same key and service will be rejected if an open incident matches
escalation_policy_id
string
The ID of the escalation policy to assign
assignee_ids
array
List of user IDs to assign to the incident
conference_bridge_number
string
Phone number for the conference bridge (format: +1 415-555-1212,,,,1234#)
conference_bridge_url
string
URL for the conference bridge (e.g. a web conference or Slack channel link)

Response

{
  "$defs": {
    "IncidentSummary": {
      "additionalProperties": false,
      "description": "Core fields returned for an incident by the PagerDuty API.",
      "properties": {
        "id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Id"
        },
        "type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Type"
        },
        "summary": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Summary"
        },
        "status": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Status"
        },
        "title": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Title"
        },
        "urgency": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Urgency"
        },
        "incident_key": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Incident Key"
        },
        "html_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Html Url"
        },
        "created_at": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Created At"
        },
        "service": {
          "anyOf": [
            {
              "additionalProperties": true,
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Service"
        },
        "escalation_policy": {
          "anyOf": [
            {
              "additionalProperties": true,
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Escalation Policy"
        },
        "assignments": {
          "items": {
            "additionalProperties": true,
            "type": "object"
          },
          "title": "Assignments",
          "type": "array"
        }
      },
      "title": "IncidentSummary",
      "type": "object"
    }
  },
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "incident": {
      "anyOf": [
        {
          "$ref": "#/$defs/IncidentSummary"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    }
  },
  "required": [
    "success"
  ],
  "title": "TriggerIncidentOutput",
  "type": "object"
}

Parameters

incident_id
string
required
The ID of the incident to acknowledge

Response

{
  "$defs": {
    "IncidentSummary": {
      "additionalProperties": false,
      "description": "Core fields returned for an incident by the PagerDuty API.",
      "properties": {
        "id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Id"
        },
        "type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Type"
        },
        "summary": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Summary"
        },
        "status": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Status"
        },
        "title": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Title"
        },
        "urgency": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Urgency"
        },
        "incident_key": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Incident Key"
        },
        "html_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Html Url"
        },
        "created_at": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Created At"
        },
        "service": {
          "anyOf": [
            {
              "additionalProperties": true,
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Service"
        },
        "escalation_policy": {
          "anyOf": [
            {
              "additionalProperties": true,
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Escalation Policy"
        },
        "assignments": {
          "items": {
            "additionalProperties": true,
            "type": "object"
          },
          "title": "Assignments",
          "type": "array"
        }
      },
      "title": "IncidentSummary",
      "type": "object"
    }
  },
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "incident": {
      "anyOf": [
        {
          "$ref": "#/$defs/IncidentSummary"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    }
  },
  "required": [
    "success"
  ],
  "title": "AcknowledgeIncidentOutput",
  "type": "object"
}

Parameters

incident_id
string
required
The ID of the incident to resolve

Response

{
  "$defs": {
    "IncidentSummary": {
      "additionalProperties": false,
      "description": "Core fields returned for an incident by the PagerDuty API.",
      "properties": {
        "id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Id"
        },
        "type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Type"
        },
        "summary": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Summary"
        },
        "status": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Status"
        },
        "title": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Title"
        },
        "urgency": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Urgency"
        },
        "incident_key": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Incident Key"
        },
        "html_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Html Url"
        },
        "created_at": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Created At"
        },
        "service": {
          "anyOf": [
            {
              "additionalProperties": true,
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Service"
        },
        "escalation_policy": {
          "anyOf": [
            {
              "additionalProperties": true,
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Escalation Policy"
        },
        "assignments": {
          "items": {
            "additionalProperties": true,
            "type": "object"
          },
          "title": "Assignments",
          "type": "array"
        }
      },
      "title": "IncidentSummary",
      "type": "object"
    }
  },
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "incident": {
      "anyOf": [
        {
          "$ref": "#/$defs/IncidentSummary"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    }
  },
  "required": [
    "success"
  ],
  "title": "ResolveIncidentOutput",
  "type": "object"
}

Parameters

schedule_id
string
required
The ID of the on-call schedule
user_id
string
required
The ID of the user to search for in the schedule

Response

{
  "$defs": {
    "OncallUser": {
      "additionalProperties": false,
      "description": "A user found on-call for a schedule.",
      "properties": {
        "id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Id"
        },
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Name"
        },
        "email": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Email"
        },
        "type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Type"
        },
        "html_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Html Url"
        }
      },
      "title": "OncallUser",
      "type": "object"
    }
  },
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "found": {
      "default": false,
      "title": "Found",
      "type": "boolean"
    },
    "user": {
      "anyOf": [
        {
          "$ref": "#/$defs/OncallUser"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    }
  },
  "required": [
    "success"
  ],
  "title": "FindOncallUserOutput",
  "type": "object"
}

Limits & Quotas

  • Rate limits: PagerDuty REST API allows up to 960 requests per minute (varies by account tier).
  • Throttling: Requests exceeding the rate limit receive HTTP 429; implement client-side backoff.
  • Error model: non-2xx responses raise httpx.HTTPStatusError (Pattern A). The caller should handle retries.

Datadog

Sentry

Algolia