types.go (7605B)
1 package main 2 3 import "time" 4 5 type WebhookMinimalEvent struct { 6 Event struct { 7 EventType string `json:"event_type,omitempty"` 8 ResourceType string `json:"resource_type,omitempty"` 9 } `json:"event,omitempty"` 10 } 11 12 type WebhookIncidentTriggered struct { 13 Event struct { 14 ID string `json:"id,omitempty"` 15 EventType string `json:"event_type,omitempty"` 16 ResourceType string `json:"resource_type,omitempty"` 17 OccurredAt time.Time `json:"occurred_at,omitempty"` 18 Agent struct { 19 HTMLURL string `json:"html_url,omitempty"` 20 ID string `json:"id,omitempty"` 21 Self string `json:"self,omitempty"` 22 Summary string `json:"summary,omitempty"` 23 Type string `json:"type,omitempty"` 24 } `json:"agent,omitempty"` 25 Client any `json:"client,omitempty"` 26 Data struct { 27 ID string `json:"id,omitempty"` 28 Type string `json:"type,omitempty"` 29 Self string `json:"self,omitempty"` 30 HTMLURL string `json:"html_url,omitempty"` 31 Number int `json:"number,omitempty"` 32 Status string `json:"status,omitempty"` 33 IncidentKey string `json:"incident_key,omitempty"` 34 CreatedAt time.Time `json:"created_at,omitempty"` 35 Title string `json:"title,omitempty"` 36 Description string `json:"description,omitempty"` 37 Service struct { 38 HTMLURL string `json:"html_url,omitempty"` 39 ID string `json:"id,omitempty"` 40 Self string `json:"self,omitempty"` 41 Summary string `json:"summary,omitempty"` 42 Type string `json:"type,omitempty"` 43 } `json:"service,omitempty"` 44 Assignees []struct { 45 HTMLURL string `json:"html_url,omitempty"` 46 ID string `json:"id,omitempty"` 47 Self string `json:"self,omitempty"` 48 Summary string `json:"summary,omitempty"` 49 Type string `json:"type,omitempty"` 50 } `json:"assignees,omitempty"` 51 EscalationPolicy struct { 52 HTMLURL string `json:"html_url,omitempty"` 53 ID string `json:"id,omitempty"` 54 Self string `json:"self,omitempty"` 55 Summary string `json:"summary,omitempty"` 56 Type string `json:"type,omitempty"` 57 } `json:"escalation_policy,omitempty"` 58 Teams []any `json:"teams,omitempty"` 59 Priority struct { 60 HTMLURL string `json:"html_url,omitempty"` 61 ID string `json:"id,omitempty"` 62 Self string `json:"self,omitempty"` 63 Summary string `json:"summary,omitempty"` 64 Type string `json:"type,omitempty"` 65 } `json:"priority,omitempty"` 66 Urgency string `json:"urgency,omitempty"` 67 ConferenceBridge any `json:"conference_bridge,omitempty"` 68 ResolveReason any `json:"resolve_reason,omitempty"` 69 IncidentType any `json:"incident_type,omitempty"` 70 } `json:"data,omitempty"` 71 } `json:"event,omitempty"` 72 } 73 74 type WebhookIncidentResolved struct { 75 Event struct { 76 ID string `json:"id,omitempty"` 77 EventType string `json:"event_type,omitempty"` 78 ResourceType string `json:"resource_type,omitempty"` 79 OccurredAt time.Time `json:"occurred_at,omitempty"` 80 Agent struct { 81 HTMLURL string `json:"html_url,omitempty"` 82 ID string `json:"id,omitempty"` 83 Self string `json:"self,omitempty"` 84 Summary string `json:"summary,omitempty"` 85 Type string `json:"type,omitempty"` 86 } `json:"agent,omitempty"` 87 Client any `json:"client,omitempty"` 88 Data struct { 89 ID string `json:"id,omitempty"` 90 Type string `json:"type,omitempty"` 91 Self string `json:"self,omitempty"` 92 HTMLURL string `json:"html_url,omitempty"` 93 Number int `json:"number,omitempty"` 94 Status string `json:"status,omitempty"` 95 IncidentKey string `json:"incident_key,omitempty"` 96 CreatedAt time.Time `json:"created_at,omitempty"` 97 Title string `json:"title,omitempty"` 98 Service struct { 99 HTMLURL string `json:"html_url,omitempty"` 100 ID string `json:"id,omitempty"` 101 Self string `json:"self,omitempty"` 102 Summary string `json:"summary,omitempty"` 103 Type string `json:"type,omitempty"` 104 } `json:"service,omitempty"` 105 Assignees []any `json:"assignees,omitempty"` 106 EscalationPolicy struct { 107 HTMLURL string `json:"html_url,omitempty"` 108 ID string `json:"id,omitempty"` 109 Self string `json:"self,omitempty"` 110 Summary string `json:"summary,omitempty"` 111 Type string `json:"type,omitempty"` 112 } `json:"escalation_policy,omitempty"` 113 Teams []any `json:"teams,omitempty"` 114 Priority struct { 115 HTMLURL string `json:"html_url,omitempty"` 116 ID string `json:"id,omitempty"` 117 Self string `json:"self,omitempty"` 118 Summary string `json:"summary,omitempty"` 119 Type string `json:"type,omitempty"` 120 } `json:"priority,omitempty"` 121 Urgency string `json:"urgency,omitempty"` 122 ConferenceBridge any `json:"conference_bridge,omitempty"` 123 ResolveReason any `json:"resolve_reason,omitempty"` 124 IncidentType any `json:"incident_type,omitempty"` 125 } `json:"data,omitempty"` 126 } `json:"event,omitempty"` 127 } 128 129 type WebhookIncidentAcknowledged struct { 130 Event struct { 131 ID string `json:"id,omitempty"` 132 EventType string `json:"event_type,omitempty"` 133 ResourceType string `json:"resource_type,omitempty"` 134 OccurredAt time.Time `json:"occurred_at,omitempty"` 135 Agent struct { 136 HTMLURL string `json:"html_url,omitempty"` 137 ID string `json:"id,omitempty"` 138 Self string `json:"self,omitempty"` 139 Summary string `json:"summary,omitempty"` 140 Type string `json:"type,omitempty"` 141 } `json:"agent,omitempty"` 142 Client any `json:"client,omitempty"` 143 Data struct { 144 ID string `json:"id,omitempty"` 145 Type string `json:"type,omitempty"` 146 Self string `json:"self,omitempty"` 147 HTMLURL string `json:"html_url,omitempty"` 148 Number int `json:"number,omitempty"` 149 Status string `json:"status,omitempty"` 150 IncidentKey string `json:"incident_key,omitempty"` 151 CreatedAt time.Time `json:"created_at,omitempty"` 152 Title string `json:"title,omitempty"` 153 Service struct { 154 HTMLURL string `json:"html_url,omitempty"` 155 ID string `json:"id,omitempty"` 156 Self string `json:"self,omitempty"` 157 Summary string `json:"summary,omitempty"` 158 Type string `json:"type,omitempty"` 159 } `json:"service,omitempty"` 160 Assignees []struct { 161 HTMLURL string `json:"html_url,omitempty"` 162 ID string `json:"id,omitempty"` 163 Self string `json:"self,omitempty"` 164 Summary string `json:"summary,omitempty"` 165 Type string `json:"type,omitempty"` 166 } `json:"assignees,omitempty"` 167 EscalationPolicy struct { 168 HTMLURL string `json:"html_url,omitempty"` 169 ID string `json:"id,omitempty"` 170 Self string `json:"self,omitempty"` 171 Summary string `json:"summary,omitempty"` 172 Type string `json:"type,omitempty"` 173 } `json:"escalation_policy,omitempty"` 174 Teams []any `json:"teams,omitempty"` 175 Priority struct { 176 HTMLURL string `json:"html_url,omitempty"` 177 ID string `json:"id,omitempty"` 178 Self string `json:"self,omitempty"` 179 Summary string `json:"summary,omitempty"` 180 Type string `json:"type,omitempty"` 181 } `json:"priority,omitempty"` 182 Urgency string `json:"urgency,omitempty"` 183 ConferenceBridge any `json:"conference_bridge,omitempty"` 184 ResolveReason any `json:"resolve_reason,omitempty"` 185 IncidentType any `json:"incident_type,omitempty"` 186 } `json:"data,omitempty"` 187 } `json:"event,omitempty"` 188 }