Skip to content
A gem for talking to the pagerduty API
Ruby Shell
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Provides a simple interface for calling into the Pagerduty API.


Install pagerduty with this command:

gem install pagerduty


Pagerduty exposes three classes, Pagerduty, PagerdutyIncident and PagerdutyException. Instances of PagerdutyIncident are created and returned for every API call.

Pagerduty's constructor takes 2 arguments - your service_key and an optional argument to set the 'incident_key' You can then use the method trigger to trigger a new incident with Pagerduty:

require 'pagerduty'
p = "your_pagerduty_service_key"
incident = p.trigger "Everything went down!"

Incidents can be retriggered, acknowledged with the PagerdutyIncident#acknowledge method, and resolved with PagerdutyIncident#resolve.

Additionally, all API methods (trigger, acknowledge, resolve) take an optional second parameter details, which should be a hash containing any extra information that should be recorded with Pagerduty.

If the Pagerduty API does not return success, a PagerdutyException will be thrown which has the properties pagerduty_instance (the instance of either Pagerduty or PagerdutyException that caused the exception) and api_response, which is a hash representation of the JSON response from the Pagerduty API.


Copyright (c) 2010 Envato & Charlie Somerville. See LICENSE.txt for further details.

Something went wrong with that request. Please try again.