Pager Duty API Python

From UVOO Tech Wiki
Revision as of 20:08, 7 March 2022 by Busk (talk | contribs)
Jump to navigation Jump to search

https://github.com/PagerDuty/pdpyras

https://github.com/PagerDuty/API_Python_Examples/blob/master/REST_API_v2/Incidents/trigger_incident.py

https://community.pagerduty.com/forum/t/resolving-an-incident-using-pagerduty-events-v2-or-incident-api/1880

def resolve_incident(self, device_id, message):
    url = "https://events.pagerduty.com/v2/enqueue"
    print(url)

    headers = {
        "Accept": "application/vnd.pagerduty+json;version=2",
        "Authorization": "Token token={}".format(self.pagerDuty_api_key),
        "From": "xys@assa.com",
        "Content-Type": "application/json"
    }
    payload = {
        "routing_key": self.pagerDuty_integration_key,
        "dedup_key": device_id,
        "event_action": "acknowledge"
        }

    r = requests.post(url, data=json.dumps(payload), headers=headers)
    if r.status_code == 200:
        print(r.json)
        return True
    else:
        print(r.status_code)
        print(r.text)
        return False
session.rput(
    "incidents",
    json=[
      {'id':'PABC123','type':'incident_reference', 'status':'resolved'},
      {'id':'PDEF456','type':'incident_reference', 'status':'resolved'},
    ],
)