You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
description: The domain of the primary website the breach occurred on. This may be used for identifying other assets external systems may have for the site.
40
+
description: |
41
+
The domain of the primary website the breach occurred on.
42
+
This may be used for identifying other assets external systems may have for the site.
43
+
This value comes from HIBP. See (their API docs)[https://haveibeenpwned.com/api/v3#BreachModel] for more information.
41
44
type: string
42
45
breachDate:
43
46
description: The date (with no time) the breach originally occurred on in ISO 8601 format. This is not always accurate — frequently breaches are discovered and reported long after the original incident. Use this attribute as a guide only.
@@ -48,14 +51,17 @@ components:
48
51
type: string
49
52
format: date-time
50
53
modifiedDate:
51
-
description: The date and time (precision to the minute) the breach was modified in ISO 8601 format. This will only differ from the AddedDate attribute if other attributes represented here are changed or data in the breach itself is changed (i.e. additional data is identified and loaded). It is always either equal to or greater then the AddedDate attribute, never less than.
54
+
description: >
55
+
The date and time (precision to the minute) the breach was modified in ISO 8601 format.
56
+
This will only differ from the AddedDate attribute if other attributes represented here are changed
57
+
or data in the breach itself is changed (i.e. additional data is identified and loaded).
58
+
It is always either equal to or greater then the AddedDate attribute, never less than.
52
59
type: string
53
60
format: date-time
54
61
dataClasses:
55
-
# Question: is this data only per-breach or do we have per-user impact?
56
-
# If per-breach only, BreachResolution makes sense
57
-
# If individual user, maybe need BreachImpact or something
58
-
description: This attribute describes the nature of the data compromised in the breach and contains an alphabetically ordered string array of impacted data classes. See https://haveibeenpwned.com/api/v3/dataclasses for list of dataclasses.
62
+
description: >
63
+
This attribute describes the nature of the data compromised in the breach and contains an alphabetically
64
+
ordered string array of impacted data classes. See https://haveibeenpwned.com/api/v3/dataclasses for list of dataclasses.
59
65
type: array
60
66
items:
61
67
type: string
@@ -124,7 +130,6 @@ paths:
124
130
required: false
125
131
description: >
126
132
Filter breaches to those whose breach.dataClasses includes any (but not necessarily all) of the specified values.
127
-
Matching is performed at the breach level (not per monitored email).
128
133
schema:
129
134
type: array
130
135
items:
@@ -143,9 +148,11 @@ paths:
143
148
required: false
144
149
description: >
145
150
Filter breaches to those where one or more of the specified dataclasses
146
-
are still unresolved for the authenticated user.
151
+
are still unresolved for the authenticated user, for at least one breached account.
147
152
A breach matches if any of the specified dataclasses are unresolved
148
-
for at least one monitored email.
153
+
for at least one monitored email. Note that the breached accounts in the response are
154
+
not filtered by this parameter; the client will receive the complete set of breached account states
155
+
for the given breach.
149
156
schema:
150
157
type: array
151
158
items:
@@ -183,7 +190,7 @@ paths:
183
190
summary: Breaches found
184
191
value:
185
192
- breach:
186
-
id: 123
193
+
id: "Breach1"
187
194
domain: "example.com"
188
195
breachDate: "2023-04-10"
189
196
addedDate: "2023-05-01T12:34:00Z"
@@ -204,100 +211,6 @@ paths:
204
211
"403":
205
212
description: Not authorized
206
213
207
-
/user/breaches/{breachId}/resolutions:
208
-
post:
209
-
description: |
210
-
Upsert resolution state for one breach across one or more monitored email addresses.
211
-
212
-
This operation is idempotent per `(email, dataClass)` within the breach. Repeating the same
213
-
request results in the same stored state and does not produce an error.
214
-
215
-
If `emails` is omitted, the update applies to all monitored email addresses affected by this
216
-
breach for the authenticated user.
217
-
218
-
**Authorization and privacy**
219
-
- All `emails` provided must be monitored by the authenticated user.
220
-
- For privacy reasons, if any provided email address is not associated with the authenticated
221
-
user, the server treats the request as if the resource does not exist and returns
222
-
`404 Not Found`.
223
-
224
-
**Atomicity**
225
-
- Requests are atomic: the update is applied to all targeted emails and dataclasses, or to none.
226
-
227
-
parameters:
228
-
- name: breachId
229
-
in: path
230
-
required: true
231
-
schema:
232
-
type: integer
233
-
examples:
234
-
example:
235
-
summary: Example breach id
236
-
value: 123
237
-
requestBody:
238
-
required: true
239
-
content:
240
-
application/json:
241
-
schema:
242
-
type: object
243
-
additionalProperties: false
244
-
required:
245
-
- dataClasses
246
-
- resolved
247
-
properties:
248
-
emails:
249
-
type: array
250
-
minItems: 1
251
-
description: >
252
-
Monitored email addresses to apply the update to. If omitted, applies to all
253
-
monitored email addresses affected by this breach.
254
-
items:
255
-
type: string
256
-
format: email
257
-
dataClasses:
258
-
type: array
259
-
minItems: 1
260
-
description: Dataclasses to mark resolved/unresolved for the selected emails.
261
-
items:
262
-
type: string
263
-
resolved:
264
-
type: boolean
265
-
description: True to mark resolved; false to mark unresolved (undo).
266
-
examples:
267
-
resolvePasswordsOneEmail:
268
-
summary: Resolve Passwords for one email in this breach
269
-
value:
270
-
emails: ["alice@example.com"]
271
-
dataClasses: ["passwords"]
272
-
resolved: true
273
-
resolvePasswordsAllEmailsInBreach:
274
-
summary: Resolve Passwords for all affected emails in this breach
275
-
value:
276
-
dataClasses: ["passwords"]
277
-
resolved: true
278
-
resolveMultipleDataClassesTwoEmails:
279
-
summary: Resolve multiple dataclasses for multiple emails
280
-
value:
281
-
emails: ["alice@example.com", "bob@example.com"]
282
-
dataClasses: ["passwords", "email-addresses"]
283
-
resolved: true
284
-
undoPasswordsAllEmailsInBreach:
285
-
summary: Undo Passwords resolution for all affected emails in this breach
286
-
value:
287
-
dataClasses: ["passwords"]
288
-
resolved: false
289
-
responses:
290
-
"204":
291
-
description: Resolution state updated successfully.
0 commit comments