diff --git a/incident.go b/incident.go index 92b0fb5f..1b470f73 100644 --- a/incident.go +++ b/incident.go @@ -24,10 +24,25 @@ type Assignment struct { Assignee APIObject } +// AlertCounts is the data structure for the alert counts of an incident +type AlertCounts struct { + All uint `json:"all"` + Triggered uint `json:"triggered"` + Resolved uint `json:"resolved"` +} + +// AlertCounts is the data structure for the resolve reason of an incident +type ResolveReason struct { + Type string `json:"type"` + Incident APIObject `json:"incident"` +} + // Incident is a normalized, de-duplicated event generated by a PagerDuty integration. type Incident struct { APIObject IncidentNumber uint `json:"incident_number,omitempty"` + Title string `json:"title,omitempty"` + Description string `json:"description,omitempty"` CreatedAt string `json:"created_at,omitempty"` PendingActions []PendingAction `json:"pending_actions,omitempty"` IncidentKey string `json:"incident_key,omitempty"` @@ -41,6 +56,11 @@ type Incident struct { Teams []APIObject `json:"teams,omitempty"` Urgency string `json:"urgency,omitempty"` Status string `json:"status,omitempty"` + ImpactedServices []APIObject `json:"impacted_services,omitempty"` + AlertCounts AlertCounts `json:"alert_counts,omitempty"` + IsMergeable bool `json:"is_mergeable,omitempty"` + Importance string `json:"importance,omitempty"` + ResolveReason ResolveReason `json:"resolve_reason,omitempty"` } // ListIncidentsResponse is the response structure when calling the ListIncident API endpoint.