@atlasauth/backend 0.34.0 → 0.36.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +21 -0
- package/README.md +65 -0
- package/dist/client/index.d.ts +2 -0
- package/dist/client/instance.d.ts +17 -0
- package/dist/client/instance.js.map +1 -1
- package/dist/client/organizations.d.ts +6 -0
- package/dist/client/organizations.js +8 -0
- package/dist/client/organizations.js.map +1 -1
- package/dist/client/sso-onboarding.d.ts +6 -0
- package/dist/client/sso-onboarding.js +8 -0
- package/dist/client/sso-onboarding.js.map +1 -1
- package/dist/csrf.d.ts +50 -0
- package/dist/csrf.js +124 -0
- package/dist/csrf.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/recent-auth.d.ts +17 -0
- package/dist/recent-auth.js +16 -0
- package/dist/recent-auth.js.map +1 -1
- package/dist/rp-sid-store.d.ts +36 -0
- package/dist/rp-sid-store.js +58 -0
- package/dist/rp-sid-store.js.map +1 -0
- package/dist/rp-testing.d.ts +38 -0
- package/dist/rp-testing.js +153 -0
- package/dist/rp-testing.js.map +1 -0
- package/dist/rp.d.ts +60 -4
- package/dist/rp.js +100 -9
- package/dist/rp.js.map +1 -1
- package/dist/sync-local-user.d.ts +59 -0
- package/dist/sync-local-user.js +82 -0
- package/dist/sync-local-user.js.map +1 -0
- package/dist/verify.d.ts +19 -0
- package/dist/verify.js.map +1 -1
- package/dist/webhook-events.d.ts +24 -0
- package/dist/webhook-events.generated.d.ts +1234 -0
- package/dist/webhook-events.generated.js +190 -0
- package/dist/webhook-events.generated.js.map +1 -0
- package/dist/webhook-events.js +29 -0
- package/dist/webhook-events.js.map +1 -0
- package/dist/webhooks-web.d.ts +3 -2
- package/dist/webhooks-web.js.map +1 -1
- package/dist/webhooks.d.ts +2 -1
- package/dist/webhooks.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,1234 @@
|
|
|
1
|
+
/** An agent access request, decision, or revocation. */
|
|
2
|
+
export type WebhookDataAgentAccess = {
|
|
3
|
+
object?: "agent_access_request" | "agent_access_revocation";
|
|
4
|
+
id?: string;
|
|
5
|
+
agent_id: string;
|
|
6
|
+
kind?: string;
|
|
7
|
+
resource?: string;
|
|
8
|
+
scopes?: string[];
|
|
9
|
+
reason?: string | null;
|
|
10
|
+
status?: string;
|
|
11
|
+
auto_approved?: boolean;
|
|
12
|
+
decided_by?: string | null;
|
|
13
|
+
/** Decided (epoch ms), or null. */
|
|
14
|
+
decided_at?: number | null;
|
|
15
|
+
/** Expires (epoch ms), or null. */
|
|
16
|
+
expires_at?: number | null;
|
|
17
|
+
/** Created (epoch ms). */
|
|
18
|
+
created_at?: number;
|
|
19
|
+
revoked?: number;
|
|
20
|
+
agent_disabled?: boolean;
|
|
21
|
+
agent?: Record<string, unknown> | null;
|
|
22
|
+
[key: string]: unknown;
|
|
23
|
+
};
|
|
24
|
+
/** An agent governance signal: an anomaly, an approaching expiry, or a sponsor change. */
|
|
25
|
+
export type WebhookDataAgentGovernance = {
|
|
26
|
+
object?: "agent_anomaly" | "agent_expiry" | "agent_sponsors";
|
|
27
|
+
agent_id: string;
|
|
28
|
+
kind?: string;
|
|
29
|
+
detail?: Record<string, unknown> | null;
|
|
30
|
+
/** Expires (epoch ms), or null. */
|
|
31
|
+
expires_at?: number | null;
|
|
32
|
+
sponsor_user_id?: string | null;
|
|
33
|
+
backup_sponsor_user_id?: string | null;
|
|
34
|
+
[key: string]: unknown;
|
|
35
|
+
};
|
|
36
|
+
/** A guest account was linked to a real one. */
|
|
37
|
+
export type WebhookDataAnonymousLink = {
|
|
38
|
+
object: "anonymous_link";
|
|
39
|
+
/** The guest, before the link. */
|
|
40
|
+
anonymous_user: {
|
|
41
|
+
object: "user";
|
|
42
|
+
id: string;
|
|
43
|
+
[key: string]: unknown;
|
|
44
|
+
};
|
|
45
|
+
/** The user the guest became. */
|
|
46
|
+
user: {
|
|
47
|
+
object: "user";
|
|
48
|
+
id: string;
|
|
49
|
+
[key: string]: unknown;
|
|
50
|
+
};
|
|
51
|
+
method?: string | null;
|
|
52
|
+
/** Linked (epoch ms). */
|
|
53
|
+
linked_at: number;
|
|
54
|
+
[key: string]: unknown;
|
|
55
|
+
};
|
|
56
|
+
/** An end-user API key's non-secret configuration. */
|
|
57
|
+
export type WebhookDataApiKey = {
|
|
58
|
+
object: "api_key";
|
|
59
|
+
id: string;
|
|
60
|
+
prefix: string;
|
|
61
|
+
subject_type: string;
|
|
62
|
+
subject_id: string;
|
|
63
|
+
enabled: boolean;
|
|
64
|
+
remaining?: number | null;
|
|
65
|
+
name?: string | null;
|
|
66
|
+
claims: Record<string, unknown>;
|
|
67
|
+
scopes?: string[] | null;
|
|
68
|
+
constraints?: Record<string, unknown>;
|
|
69
|
+
limits?: Array<Record<string, unknown>> | null;
|
|
70
|
+
max_token_lifetime_seconds?: number | null;
|
|
71
|
+
/** Expires (epoch ms), or null. */
|
|
72
|
+
expires_at?: number | null;
|
|
73
|
+
/** Revoked (epoch ms), or null. */
|
|
74
|
+
revoked_at?: number | null;
|
|
75
|
+
/** Created (epoch ms), or null. */
|
|
76
|
+
created_at?: number | null;
|
|
77
|
+
/** Updated (epoch ms), or null. */
|
|
78
|
+
updated_at?: number | null;
|
|
79
|
+
/** api_key.limit_reached: the limit that was reached. */
|
|
80
|
+
limit?: Record<string, unknown>;
|
|
81
|
+
[key: string]: unknown;
|
|
82
|
+
};
|
|
83
|
+
/** An end-user API key is close to expiry. */
|
|
84
|
+
export type WebhookDataApiKeyExpiring = {
|
|
85
|
+
object: "api_key";
|
|
86
|
+
id: string;
|
|
87
|
+
prefix: string;
|
|
88
|
+
name?: string | null;
|
|
89
|
+
subject_type: "user" | "organization" | "machine";
|
|
90
|
+
subject_id: string;
|
|
91
|
+
/** Expires (epoch ms). */
|
|
92
|
+
expires_at: number;
|
|
93
|
+
days_left?: number;
|
|
94
|
+
threshold_days?: number;
|
|
95
|
+
[key: string]: unknown;
|
|
96
|
+
};
|
|
97
|
+
/** An app role. */
|
|
98
|
+
export type WebhookDataAppRole = {
|
|
99
|
+
object: "app_role";
|
|
100
|
+
id: string;
|
|
101
|
+
key: string;
|
|
102
|
+
name: string;
|
|
103
|
+
description?: string | null;
|
|
104
|
+
permissions: string[];
|
|
105
|
+
users_count?: number;
|
|
106
|
+
/** Created (epoch ms). */
|
|
107
|
+
created_at: number;
|
|
108
|
+
/** Updated (epoch ms). */
|
|
109
|
+
updated_at: number;
|
|
110
|
+
[key: string]: unknown;
|
|
111
|
+
};
|
|
112
|
+
/** A coupon redemption. */
|
|
113
|
+
export type WebhookDataBillingCouponRedeemed = {
|
|
114
|
+
object: "billing_coupon_redemption";
|
|
115
|
+
coupon_id: string;
|
|
116
|
+
code: string;
|
|
117
|
+
subject_type: string;
|
|
118
|
+
subject_id: string;
|
|
119
|
+
plan_id: string;
|
|
120
|
+
redeemed_count?: number;
|
|
121
|
+
[key: string]: unknown;
|
|
122
|
+
};
|
|
123
|
+
/** An account-credit ledger row. */
|
|
124
|
+
export type WebhookDataBillingCredit = {
|
|
125
|
+
object: "billing_credit";
|
|
126
|
+
id: string;
|
|
127
|
+
subject_type: string;
|
|
128
|
+
subject_id: string;
|
|
129
|
+
amount: number;
|
|
130
|
+
currency: string;
|
|
131
|
+
reason?: string | null;
|
|
132
|
+
kind?: string;
|
|
133
|
+
applied?: boolean;
|
|
134
|
+
balance?: Record<string, number>;
|
|
135
|
+
[key: string]: unknown;
|
|
136
|
+
};
|
|
137
|
+
/** A dunning reminder due. */
|
|
138
|
+
export type WebhookDataBillingDunningNotice = {
|
|
139
|
+
object: "billing_subscription";
|
|
140
|
+
id: string;
|
|
141
|
+
subject_type: string;
|
|
142
|
+
subject_id: string;
|
|
143
|
+
provider?: string;
|
|
144
|
+
provider_subscription_id?: string | null;
|
|
145
|
+
provider_customer_id?: string | null;
|
|
146
|
+
plan?: string | null;
|
|
147
|
+
plan_id?: string | null;
|
|
148
|
+
status?: string;
|
|
149
|
+
interval?: string | null;
|
|
150
|
+
quantity?: number | null;
|
|
151
|
+
cancel_at_period_end?: boolean;
|
|
152
|
+
/** Current period end (epoch ms), or null. */
|
|
153
|
+
current_period_end?: number | null;
|
|
154
|
+
scheduled_plan_id?: string | null;
|
|
155
|
+
scheduled_interval?: string | null;
|
|
156
|
+
/** Scheduled change (epoch ms), or null. */
|
|
157
|
+
scheduled_change_at?: number | null;
|
|
158
|
+
/** Trial end (epoch ms), or null. */
|
|
159
|
+
trial_end?: number | null;
|
|
160
|
+
/** Canceled (epoch ms), or null. */
|
|
161
|
+
canceled_at?: number | null;
|
|
162
|
+
reason?: string;
|
|
163
|
+
previous?: Record<string, unknown> | null;
|
|
164
|
+
/** billing_trial.ended: the trial converted to a paid subscription. */
|
|
165
|
+
converted?: boolean;
|
|
166
|
+
notice?: number;
|
|
167
|
+
days_left: number;
|
|
168
|
+
/** Grace ends (epoch ms). */
|
|
169
|
+
grace_ends_at: number;
|
|
170
|
+
[key: string]: unknown;
|
|
171
|
+
};
|
|
172
|
+
/** An invoice payment failed; the subscription plus the invoice. */
|
|
173
|
+
export type WebhookDataBillingInvoiceFailed = {
|
|
174
|
+
object: "billing_subscription";
|
|
175
|
+
id: string;
|
|
176
|
+
subject_type: string;
|
|
177
|
+
subject_id: string;
|
|
178
|
+
provider?: string;
|
|
179
|
+
provider_subscription_id?: string | null;
|
|
180
|
+
provider_customer_id?: string | null;
|
|
181
|
+
plan?: string | null;
|
|
182
|
+
plan_id?: string | null;
|
|
183
|
+
status?: string;
|
|
184
|
+
interval?: string | null;
|
|
185
|
+
quantity?: number | null;
|
|
186
|
+
cancel_at_period_end?: boolean;
|
|
187
|
+
/** Current period end (epoch ms), or null. */
|
|
188
|
+
current_period_end?: number | null;
|
|
189
|
+
scheduled_plan_id?: string | null;
|
|
190
|
+
scheduled_interval?: string | null;
|
|
191
|
+
/** Scheduled change (epoch ms), or null. */
|
|
192
|
+
scheduled_change_at?: number | null;
|
|
193
|
+
/** Trial end (epoch ms), or null. */
|
|
194
|
+
trial_end?: number | null;
|
|
195
|
+
/** Canceled (epoch ms), or null. */
|
|
196
|
+
canceled_at?: number | null;
|
|
197
|
+
reason?: string;
|
|
198
|
+
previous?: Record<string, unknown> | null;
|
|
199
|
+
/** billing_trial.ended: the trial converted to a paid subscription. */
|
|
200
|
+
converted?: boolean;
|
|
201
|
+
/** The failed invoice. */
|
|
202
|
+
invoice: {
|
|
203
|
+
provider_invoice_id: string;
|
|
204
|
+
number?: string | null;
|
|
205
|
+
amount_due?: number | null;
|
|
206
|
+
currency?: string | null;
|
|
207
|
+
hosted_invoice_url?: string | null;
|
|
208
|
+
[key: string]: unknown;
|
|
209
|
+
};
|
|
210
|
+
[key: string]: unknown;
|
|
211
|
+
};
|
|
212
|
+
/** A subject's subscription to a plan you sell. */
|
|
213
|
+
export type WebhookDataBillingSubscription = {
|
|
214
|
+
object: "billing_subscription";
|
|
215
|
+
id: string;
|
|
216
|
+
subject_type: string;
|
|
217
|
+
subject_id: string;
|
|
218
|
+
provider?: string;
|
|
219
|
+
provider_subscription_id?: string | null;
|
|
220
|
+
provider_customer_id?: string | null;
|
|
221
|
+
plan?: string | null;
|
|
222
|
+
plan_id?: string | null;
|
|
223
|
+
status: string;
|
|
224
|
+
interval?: string | null;
|
|
225
|
+
quantity?: number | null;
|
|
226
|
+
cancel_at_period_end?: boolean;
|
|
227
|
+
/** Current period end (epoch ms), or null. */
|
|
228
|
+
current_period_end?: number | null;
|
|
229
|
+
scheduled_plan_id?: string | null;
|
|
230
|
+
scheduled_interval?: string | null;
|
|
231
|
+
/** Scheduled change (epoch ms), or null. */
|
|
232
|
+
scheduled_change_at?: number | null;
|
|
233
|
+
/** Trial end (epoch ms), or null. */
|
|
234
|
+
trial_end?: number | null;
|
|
235
|
+
/** Canceled (epoch ms), or null. */
|
|
236
|
+
canceled_at?: number | null;
|
|
237
|
+
reason?: string;
|
|
238
|
+
previous?: Record<string, unknown> | null;
|
|
239
|
+
/** billing_trial.ended: the trial converted to a paid subscription. */
|
|
240
|
+
converted?: boolean;
|
|
241
|
+
[key: string]: unknown;
|
|
242
|
+
};
|
|
243
|
+
/** A subscription suspended after its grace period. */
|
|
244
|
+
export type WebhookDataBillingSuspended = {
|
|
245
|
+
object: "billing_subscription";
|
|
246
|
+
id: string;
|
|
247
|
+
subject_type: string;
|
|
248
|
+
subject_id: string;
|
|
249
|
+
provider?: string;
|
|
250
|
+
provider_subscription_id?: string | null;
|
|
251
|
+
provider_customer_id?: string | null;
|
|
252
|
+
plan?: string | null;
|
|
253
|
+
plan_id?: string | null;
|
|
254
|
+
status?: string;
|
|
255
|
+
interval?: string | null;
|
|
256
|
+
quantity?: number | null;
|
|
257
|
+
cancel_at_period_end?: boolean;
|
|
258
|
+
/** Current period end (epoch ms), or null. */
|
|
259
|
+
current_period_end?: number | null;
|
|
260
|
+
scheduled_plan_id?: string | null;
|
|
261
|
+
scheduled_interval?: string | null;
|
|
262
|
+
/** Scheduled change (epoch ms), or null. */
|
|
263
|
+
scheduled_change_at?: number | null;
|
|
264
|
+
/** Trial end (epoch ms), or null. */
|
|
265
|
+
trial_end?: number | null;
|
|
266
|
+
/** Canceled (epoch ms), or null. */
|
|
267
|
+
canceled_at?: number | null;
|
|
268
|
+
reason?: string;
|
|
269
|
+
previous?: Record<string, unknown> | null;
|
|
270
|
+
/** billing_trial.ended: the trial converted to a paid subscription. */
|
|
271
|
+
converted?: boolean;
|
|
272
|
+
/** Past due since (epoch ms). */
|
|
273
|
+
past_due_since: number;
|
|
274
|
+
grace_days: number;
|
|
275
|
+
[key: string]: unknown;
|
|
276
|
+
};
|
|
277
|
+
/** A trial is about to end. */
|
|
278
|
+
export type WebhookDataBillingTrialWillEnd = {
|
|
279
|
+
object: "billing_subscription";
|
|
280
|
+
id: string;
|
|
281
|
+
subject_type: string;
|
|
282
|
+
subject_id: string;
|
|
283
|
+
provider?: string;
|
|
284
|
+
provider_subscription_id?: string | null;
|
|
285
|
+
provider_customer_id?: string | null;
|
|
286
|
+
plan?: string | null;
|
|
287
|
+
plan_id?: string | null;
|
|
288
|
+
status?: string;
|
|
289
|
+
interval?: string | null;
|
|
290
|
+
quantity?: number | null;
|
|
291
|
+
cancel_at_period_end?: boolean;
|
|
292
|
+
/** Current period end (epoch ms), or null. */
|
|
293
|
+
current_period_end?: number | null;
|
|
294
|
+
scheduled_plan_id?: string | null;
|
|
295
|
+
scheduled_interval?: string | null;
|
|
296
|
+
/** Scheduled change (epoch ms), or null. */
|
|
297
|
+
scheduled_change_at?: number | null;
|
|
298
|
+
/** Trial end (epoch ms), or null. */
|
|
299
|
+
trial_end: number | null;
|
|
300
|
+
/** Canceled (epoch ms), or null. */
|
|
301
|
+
canceled_at?: number | null;
|
|
302
|
+
reason?: string;
|
|
303
|
+
previous?: Record<string, unknown> | null;
|
|
304
|
+
/** billing_trial.ended: the trial converted to a paid subscription. */
|
|
305
|
+
converted?: boolean;
|
|
306
|
+
[key: string]: unknown;
|
|
307
|
+
};
|
|
308
|
+
/** A provider connection's token-health transition. */
|
|
309
|
+
export type WebhookDataConnection = {
|
|
310
|
+
object: "connection";
|
|
311
|
+
id: string;
|
|
312
|
+
owner: {
|
|
313
|
+
type: "organization" | "user";
|
|
314
|
+
id: string;
|
|
315
|
+
[key: string]: unknown;
|
|
316
|
+
};
|
|
317
|
+
provider: string;
|
|
318
|
+
environment?: "production" | "sandbox";
|
|
319
|
+
status: string;
|
|
320
|
+
external_id?: string | null;
|
|
321
|
+
/** The provider's own error: code (e.g. invalid_grant), description and the HTTP status of the refused call. */
|
|
322
|
+
error?: {
|
|
323
|
+
code?: string;
|
|
324
|
+
description?: string | null;
|
|
325
|
+
http_status?: number | null;
|
|
326
|
+
[key: string]: unknown;
|
|
327
|
+
} | null;
|
|
328
|
+
retryable?: boolean;
|
|
329
|
+
consecutive_failures?: number;
|
|
330
|
+
revoked_by?: "owner" | "provider" | "admin";
|
|
331
|
+
scopes?: string[];
|
|
332
|
+
scopes_added?: string[];
|
|
333
|
+
scopes_removed?: string[];
|
|
334
|
+
/** Occurred (epoch ms). */
|
|
335
|
+
occurred_at?: number;
|
|
336
|
+
[key: string]: unknown;
|
|
337
|
+
};
|
|
338
|
+
/** The delivery health of a webhook endpoint or another outbound target (state, last failure, 24-hour rate). */
|
|
339
|
+
export type WebhookDataDeliveryHealth = {
|
|
340
|
+
object: "delivery_health";
|
|
341
|
+
kind: string;
|
|
342
|
+
id: string;
|
|
343
|
+
webhook_endpoint_id?: string;
|
|
344
|
+
url?: string | null;
|
|
345
|
+
label: string;
|
|
346
|
+
/** Recovered (epoch ms). */
|
|
347
|
+
recovered_at?: number;
|
|
348
|
+
failing_since?: number | string | null;
|
|
349
|
+
failed_for_ms?: number | null;
|
|
350
|
+
/** On .disabled: how to replay what it missed. */
|
|
351
|
+
replay?: string;
|
|
352
|
+
[key: string]: unknown;
|
|
353
|
+
};
|
|
354
|
+
/** A cross-property directive imposed on a user. */
|
|
355
|
+
export type WebhookDataDirective = {
|
|
356
|
+
user_id: string;
|
|
357
|
+
/** ISO 8601. */
|
|
358
|
+
suspended_until?: string;
|
|
359
|
+
read_only?: boolean;
|
|
360
|
+
forced_logout?: boolean;
|
|
361
|
+
reason?: string;
|
|
362
|
+
[key: string]: unknown;
|
|
363
|
+
};
|
|
364
|
+
/** A transactional email was sent (never its body). */
|
|
365
|
+
export type WebhookDataEmailMessage = {
|
|
366
|
+
object: "email_message";
|
|
367
|
+
id: string;
|
|
368
|
+
to_email_address: string;
|
|
369
|
+
slug: string;
|
|
370
|
+
status: string;
|
|
371
|
+
[key: string]: unknown;
|
|
372
|
+
};
|
|
373
|
+
/** A subject's resolved entitlement changed. */
|
|
374
|
+
export type WebhookDataEntitlement = {
|
|
375
|
+
object: "entitlement";
|
|
376
|
+
subject_type: "user" | "org";
|
|
377
|
+
subject_id: string;
|
|
378
|
+
plan_id?: string | null;
|
|
379
|
+
plan?: string | null;
|
|
380
|
+
status?: string | null;
|
|
381
|
+
entitled: boolean;
|
|
382
|
+
features: string[];
|
|
383
|
+
/** The state before the change. */
|
|
384
|
+
previous: {
|
|
385
|
+
plan_id?: string | null;
|
|
386
|
+
plan?: string | null;
|
|
387
|
+
status?: string | null;
|
|
388
|
+
entitled: boolean;
|
|
389
|
+
features: string[];
|
|
390
|
+
[key: string]: unknown;
|
|
391
|
+
};
|
|
392
|
+
[key: string]: unknown;
|
|
393
|
+
};
|
|
394
|
+
/** A sales-led entitlement override. */
|
|
395
|
+
export type WebhookDataEntitlementOverride = {
|
|
396
|
+
object: "entitlement_override";
|
|
397
|
+
id: string;
|
|
398
|
+
subject_type: string;
|
|
399
|
+
subject_id: string;
|
|
400
|
+
plan: string | null;
|
|
401
|
+
features: string[] | null;
|
|
402
|
+
limits: Record<string, unknown> | null;
|
|
403
|
+
/** Expires (epoch ms), or null. */
|
|
404
|
+
expires_at: number | null;
|
|
405
|
+
created_by: string | null;
|
|
406
|
+
/** Created (epoch ms). */
|
|
407
|
+
created_at: number;
|
|
408
|
+
[key: string]: unknown;
|
|
409
|
+
};
|
|
410
|
+
/** A feature flag was created, changed or deleted. */
|
|
411
|
+
export type WebhookDataFeatureFlag = {
|
|
412
|
+
object: "feature_flag";
|
|
413
|
+
id?: string;
|
|
414
|
+
key: string;
|
|
415
|
+
change: "created" | "updated" | "deleted";
|
|
416
|
+
changed_fields?: string[];
|
|
417
|
+
type?: string;
|
|
418
|
+
enabled?: boolean;
|
|
419
|
+
previous_enabled?: boolean | null;
|
|
420
|
+
default_value?: unknown;
|
|
421
|
+
rules?: number;
|
|
422
|
+
actor?: string | null;
|
|
423
|
+
[key: string]: unknown;
|
|
424
|
+
};
|
|
425
|
+
/** An OAuth access grant that was revoked. */
|
|
426
|
+
export type WebhookDataGrant = {
|
|
427
|
+
object: "oauth_grant";
|
|
428
|
+
id: string;
|
|
429
|
+
client_id: string;
|
|
430
|
+
user_id: string;
|
|
431
|
+
organization_id: string | null;
|
|
432
|
+
session_ids?: string[];
|
|
433
|
+
[key: string]: unknown;
|
|
434
|
+
};
|
|
435
|
+
/** An instance group was created, changed or deleted (a delete carries only id and slug). */
|
|
436
|
+
export type WebhookDataGroup = {
|
|
437
|
+
object: "group";
|
|
438
|
+
id: string;
|
|
439
|
+
slug: string;
|
|
440
|
+
name?: string;
|
|
441
|
+
description?: string | null;
|
|
442
|
+
parent_id?: string | null;
|
|
443
|
+
attributes?: Record<string, unknown>;
|
|
444
|
+
app_role_keys?: string[];
|
|
445
|
+
include_in_token?: boolean;
|
|
446
|
+
dynamic_filter?: Record<string, unknown> | null;
|
|
447
|
+
sso_match?: Record<string, unknown> | null;
|
|
448
|
+
/** Created (epoch ms). */
|
|
449
|
+
created_at?: number;
|
|
450
|
+
/** Updated (epoch ms). */
|
|
451
|
+
updated_at?: number;
|
|
452
|
+
[key: string]: unknown;
|
|
453
|
+
};
|
|
454
|
+
/** A user joined or left an instance group. */
|
|
455
|
+
export type WebhookDataGroupMember = {
|
|
456
|
+
object: "group_member";
|
|
457
|
+
group_id: string;
|
|
458
|
+
user_id: string;
|
|
459
|
+
source?: "manual" | "dynamic" | "sso" | "rule";
|
|
460
|
+
[key: string]: unknown;
|
|
461
|
+
};
|
|
462
|
+
/** An identity-governance event: a request, grant, access-review campaign, separation-of-duties violation or joiner/mover/leaver change. */
|
|
463
|
+
export type WebhookDataIga = {
|
|
464
|
+
object: "iga_request" | "iga_grant" | "iga_campaign" | "iga_sod_violation" | "iga_jml" | "iga_activation";
|
|
465
|
+
id?: string;
|
|
466
|
+
user_id?: string;
|
|
467
|
+
entitlement_id?: string;
|
|
468
|
+
entitlement_key?: string | null;
|
|
469
|
+
status?: string;
|
|
470
|
+
rule_id?: string;
|
|
471
|
+
rule_name?: string;
|
|
472
|
+
request_id?: string | null;
|
|
473
|
+
beneficiary_user_id?: string;
|
|
474
|
+
approvers?: string[];
|
|
475
|
+
days_left?: number;
|
|
476
|
+
pending?: number;
|
|
477
|
+
granted?: string[];
|
|
478
|
+
revoked?: string[];
|
|
479
|
+
revoked_grants?: number;
|
|
480
|
+
cancelled_requests?: number;
|
|
481
|
+
account_closure?: Record<string, unknown> | null;
|
|
482
|
+
progress?: Record<string, unknown> | null;
|
|
483
|
+
[key: string]: unknown;
|
|
484
|
+
};
|
|
485
|
+
/** An instance invitation (POST /v1/invitations). */
|
|
486
|
+
export type WebhookDataInstanceInvitation = {
|
|
487
|
+
object: "invitation";
|
|
488
|
+
id: string;
|
|
489
|
+
email_address: string;
|
|
490
|
+
status: "pending" | "accepted" | "revoked" | "expired";
|
|
491
|
+
public_metadata: Record<string, unknown>;
|
|
492
|
+
/** invitation.accepted: the user who signed up with the invited address. Null on the other events. */
|
|
493
|
+
user_id: string | null;
|
|
494
|
+
/** Expires (epoch ms). */
|
|
495
|
+
expires_at: number;
|
|
496
|
+
/** Accepted (epoch ms), or null. */
|
|
497
|
+
accepted_at: number | null;
|
|
498
|
+
/** Created (epoch ms). */
|
|
499
|
+
created_at: number;
|
|
500
|
+
[key: string]: unknown;
|
|
501
|
+
};
|
|
502
|
+
/** An organization invitation. */
|
|
503
|
+
export type WebhookDataInvitation = {
|
|
504
|
+
object: "organization_invitation";
|
|
505
|
+
id: string;
|
|
506
|
+
organization_id: string;
|
|
507
|
+
email_address: string;
|
|
508
|
+
role_id?: string | null;
|
|
509
|
+
status: string;
|
|
510
|
+
/** Expires (epoch ms). */
|
|
511
|
+
expires_at: number;
|
|
512
|
+
/** Created (epoch ms). */
|
|
513
|
+
created_at: number;
|
|
514
|
+
[key: string]: unknown;
|
|
515
|
+
};
|
|
516
|
+
/** A machine (device). */
|
|
517
|
+
export type WebhookDataMachine = {
|
|
518
|
+
object: "machine";
|
|
519
|
+
id: string;
|
|
520
|
+
name: string;
|
|
521
|
+
organization_id?: string | null;
|
|
522
|
+
owner_user_id?: string | null;
|
|
523
|
+
data?: Record<string, unknown> | null;
|
|
524
|
+
status: string;
|
|
525
|
+
device_key?: string | null;
|
|
526
|
+
public_key_jkt?: string | null;
|
|
527
|
+
metadata?: Record<string, unknown> | null;
|
|
528
|
+
/** Enrolled (epoch ms), or null. */
|
|
529
|
+
enrolled_at?: number | null;
|
|
530
|
+
/** Created (epoch ms). */
|
|
531
|
+
created_at: number;
|
|
532
|
+
/** Updated (epoch ms). */
|
|
533
|
+
updated_at: number;
|
|
534
|
+
reason?: "superseded" | "owner_banned" | "owner_locked" | "owner_deleted";
|
|
535
|
+
[key: string]: unknown;
|
|
536
|
+
};
|
|
537
|
+
/** A pinned MCP tool changed its definition and is blocked until re-approved. */
|
|
538
|
+
export type WebhookDataMcpToolChange = {
|
|
539
|
+
object: "mcp_tool_change";
|
|
540
|
+
gateway_id: string;
|
|
541
|
+
tool: string;
|
|
542
|
+
previous_hash?: string;
|
|
543
|
+
new_hash?: string;
|
|
544
|
+
[key: string]: unknown;
|
|
545
|
+
};
|
|
546
|
+
/** A membership. */
|
|
547
|
+
export type WebhookDataMembership = {
|
|
548
|
+
object: "organization_membership";
|
|
549
|
+
id: string;
|
|
550
|
+
organization_id: string;
|
|
551
|
+
user_id: string;
|
|
552
|
+
/** The role key, when known. */
|
|
553
|
+
role?: string;
|
|
554
|
+
role_id: string | null;
|
|
555
|
+
/** Created (epoch ms). */
|
|
556
|
+
created_at: number;
|
|
557
|
+
/** organization_membership.updated only: the role key before the change. */
|
|
558
|
+
previous_role?: string;
|
|
559
|
+
/** organization_membership.updated only: the role id before the change. */
|
|
560
|
+
previous_role_id?: string;
|
|
561
|
+
/** organization_membership.updated only: what manages the role now. `scim`, `sso:<connection id>` or `ldap:<connection id>` when your identity provider's groups or roles changed it; `manual` when it was set through the API or dashboard (directory changes then leave it alone). */
|
|
562
|
+
role_source?: string | null;
|
|
563
|
+
[key: string]: unknown;
|
|
564
|
+
};
|
|
565
|
+
/** A minor's parental-consent state changed. */
|
|
566
|
+
export type WebhookDataMinorStatus = {
|
|
567
|
+
object: "minor_status";
|
|
568
|
+
user_id: string;
|
|
569
|
+
status: "consent_required" | "consented" | "declined";
|
|
570
|
+
consent_age?: number;
|
|
571
|
+
[key: string]: unknown;
|
|
572
|
+
};
|
|
573
|
+
/** An organization domain. */
|
|
574
|
+
export type WebhookDataOrgDomain = {
|
|
575
|
+
object: "organization_domain";
|
|
576
|
+
id: string;
|
|
577
|
+
organization_id: string;
|
|
578
|
+
name: string;
|
|
579
|
+
status: "pending" | "verified" | "failed";
|
|
580
|
+
enrollment_mode: "automatic_invitation" | "manual_invitation";
|
|
581
|
+
verified: boolean;
|
|
582
|
+
/** Created (epoch ms). */
|
|
583
|
+
created_at: number;
|
|
584
|
+
/** Updated (epoch ms). */
|
|
585
|
+
updated_at: number;
|
|
586
|
+
[key: string]: unknown;
|
|
587
|
+
};
|
|
588
|
+
/** An organization's SSO or SCIM setup needs its IT contacts. */
|
|
589
|
+
export type WebhookDataOrgItAlert = {
|
|
590
|
+
object: "organization_it_alert";
|
|
591
|
+
organization_id: string;
|
|
592
|
+
kind: "certificate_expiring" | "sso_failure" | "scim_error";
|
|
593
|
+
connection_id?: string | null;
|
|
594
|
+
title: string;
|
|
595
|
+
detail: string;
|
|
596
|
+
days_left?: number | null;
|
|
597
|
+
contacts_notified?: number;
|
|
598
|
+
[key: string]: unknown;
|
|
599
|
+
};
|
|
600
|
+
/** The organization. */
|
|
601
|
+
export type WebhookDataOrganization = {
|
|
602
|
+
object: "organization";
|
|
603
|
+
id: string;
|
|
604
|
+
name: string;
|
|
605
|
+
slug: string | null;
|
|
606
|
+
image_url: string | null;
|
|
607
|
+
public_metadata: Record<string, unknown> | null;
|
|
608
|
+
max_allowed_memberships: number | null;
|
|
609
|
+
/** Your own id for this organization (unique per instance), or null. */
|
|
610
|
+
external_id?: string | null;
|
|
611
|
+
/** The Atlas user seated as the first admin; null for an organization created by your backend. */
|
|
612
|
+
created_by: string | null;
|
|
613
|
+
/** Created (epoch ms). */
|
|
614
|
+
created_at: number;
|
|
615
|
+
/** Updated (epoch ms). */
|
|
616
|
+
updated_at: number;
|
|
617
|
+
[key: string]: unknown;
|
|
618
|
+
};
|
|
619
|
+
/** An organization's custom settings document after a change. */
|
|
620
|
+
export type WebhookDataOrganizationSettings = {
|
|
621
|
+
object: "organization_settings";
|
|
622
|
+
organization_id: string;
|
|
623
|
+
values: Record<string, unknown>;
|
|
624
|
+
version: number;
|
|
625
|
+
/** Updated (epoch ms). */
|
|
626
|
+
updated_at: number;
|
|
627
|
+
[key: string]: unknown;
|
|
628
|
+
};
|
|
629
|
+
/** A permission. */
|
|
630
|
+
export type WebhookDataPermission = {
|
|
631
|
+
object: "permission";
|
|
632
|
+
id: string;
|
|
633
|
+
key: string;
|
|
634
|
+
name: string;
|
|
635
|
+
description?: string | null;
|
|
636
|
+
is_system: boolean;
|
|
637
|
+
[key: string]: unknown;
|
|
638
|
+
};
|
|
639
|
+
/** A recorded policy acceptance with its evidence. */
|
|
640
|
+
export type WebhookDataPolicyAcceptance = {
|
|
641
|
+
object: "policy_acceptance";
|
|
642
|
+
id: string;
|
|
643
|
+
user_id: string;
|
|
644
|
+
policy: string;
|
|
645
|
+
version: number;
|
|
646
|
+
policy_version_id?: string | null;
|
|
647
|
+
status?: string;
|
|
648
|
+
source?: string;
|
|
649
|
+
content_sha256?: string | null;
|
|
650
|
+
display?: string | null;
|
|
651
|
+
scrolled_to_end?: boolean | null;
|
|
652
|
+
view_ms?: number | null;
|
|
653
|
+
locale?: string | null;
|
|
654
|
+
ip?: string | null;
|
|
655
|
+
user_agent?: string | null;
|
|
656
|
+
/** Accepted (epoch ms). */
|
|
657
|
+
accepted_at: number;
|
|
658
|
+
[key: string]: unknown;
|
|
659
|
+
};
|
|
660
|
+
/** A policy version was published. */
|
|
661
|
+
export type WebhookDataPolicyVersionPublished = {
|
|
662
|
+
object: "policy_version_published";
|
|
663
|
+
/** The policy. */
|
|
664
|
+
policy: {
|
|
665
|
+
object: "policy";
|
|
666
|
+
id: string;
|
|
667
|
+
key: string;
|
|
668
|
+
title?: string;
|
|
669
|
+
display?: string;
|
|
670
|
+
required?: boolean;
|
|
671
|
+
status?: string;
|
|
672
|
+
[key: string]: unknown;
|
|
673
|
+
};
|
|
674
|
+
/** A policy version. */
|
|
675
|
+
version: {
|
|
676
|
+
object: "policy_version";
|
|
677
|
+
id: string;
|
|
678
|
+
policy_id: string;
|
|
679
|
+
policy: string;
|
|
680
|
+
version: number;
|
|
681
|
+
status: string;
|
|
682
|
+
content_markdown?: string | null;
|
|
683
|
+
content_html?: string | null;
|
|
684
|
+
content_url?: string | null;
|
|
685
|
+
content_sha256: string;
|
|
686
|
+
summary_of_changes?: string | null;
|
|
687
|
+
locale?: string | null;
|
|
688
|
+
/** Published (epoch ms), or null. */
|
|
689
|
+
published_at?: number | null;
|
|
690
|
+
/** Effective (epoch ms), or null. */
|
|
691
|
+
effective_at?: number | null;
|
|
692
|
+
/** Retired (epoch ms), or null. */
|
|
693
|
+
retired_at?: number | null;
|
|
694
|
+
/** Created (epoch ms). */
|
|
695
|
+
created_at: number;
|
|
696
|
+
/** Updated (epoch ms). */
|
|
697
|
+
updated_at: number;
|
|
698
|
+
acceptance_count?: number;
|
|
699
|
+
[key: string]: unknown;
|
|
700
|
+
};
|
|
701
|
+
[key: string]: unknown;
|
|
702
|
+
};
|
|
703
|
+
/** The data-rights executor Request, camelCase as the executor protocol defines it. */
|
|
704
|
+
export type WebhookDataPrivacyRequest = {
|
|
705
|
+
object: "privacy_request";
|
|
706
|
+
id: string;
|
|
707
|
+
type: string;
|
|
708
|
+
canonicalType?: string;
|
|
709
|
+
requestedType?: string;
|
|
710
|
+
status: string;
|
|
711
|
+
subjectId: string;
|
|
712
|
+
caseId?: string | null;
|
|
713
|
+
executeAfter?: string | null;
|
|
714
|
+
eta?: string | null;
|
|
715
|
+
detail?: string | null;
|
|
716
|
+
retention?: Array<Record<string, unknown>>;
|
|
717
|
+
steps?: Array<Record<string, unknown>>;
|
|
718
|
+
trace?: string | null;
|
|
719
|
+
createdAt: string;
|
|
720
|
+
updatedAt: string;
|
|
721
|
+
completedAt?: string | null;
|
|
722
|
+
[key: string]: unknown;
|
|
723
|
+
};
|
|
724
|
+
/** An action a user owes at their next sign-in was requested, completed or withdrawn. */
|
|
725
|
+
export type WebhookDataRequiredAction = {
|
|
726
|
+
object: "required_action";
|
|
727
|
+
id: string;
|
|
728
|
+
user_id: string;
|
|
729
|
+
action: string;
|
|
730
|
+
url?: string | null;
|
|
731
|
+
reason?: string | null;
|
|
732
|
+
created_by?: string | null;
|
|
733
|
+
/** Requested (epoch ms). */
|
|
734
|
+
created_at?: number;
|
|
735
|
+
/** user.required_action_completed only: who finished it (system = it was already true). */
|
|
736
|
+
completed_by?: "user" | "system";
|
|
737
|
+
[key: string]: unknown;
|
|
738
|
+
};
|
|
739
|
+
/** A role. */
|
|
740
|
+
export type WebhookDataRole = {
|
|
741
|
+
object: "role";
|
|
742
|
+
id: string;
|
|
743
|
+
key: string;
|
|
744
|
+
name: string;
|
|
745
|
+
description?: string | null;
|
|
746
|
+
is_system: boolean;
|
|
747
|
+
organization_id?: string | null;
|
|
748
|
+
permissions: string[];
|
|
749
|
+
/** Created (epoch ms). */
|
|
750
|
+
created_at: number;
|
|
751
|
+
[key: string]: unknown;
|
|
752
|
+
};
|
|
753
|
+
/** A SCIM group of an organization's directory. */
|
|
754
|
+
export type WebhookDataScimGroup = {
|
|
755
|
+
object: "scim_group";
|
|
756
|
+
id: string;
|
|
757
|
+
organization_id: string;
|
|
758
|
+
display_name: string;
|
|
759
|
+
external_id?: string | null;
|
|
760
|
+
/** Created (epoch ms). */
|
|
761
|
+
created_at?: number;
|
|
762
|
+
/** Updated (epoch ms). */
|
|
763
|
+
updated_at?: number;
|
|
764
|
+
[key: string]: unknown;
|
|
765
|
+
};
|
|
766
|
+
/** A user joined or left a SCIM group. */
|
|
767
|
+
export type WebhookDataScimGroupMember = {
|
|
768
|
+
object: "scim_group_member";
|
|
769
|
+
group_id: string;
|
|
770
|
+
user_id: string;
|
|
771
|
+
organization_id: string;
|
|
772
|
+
[key: string]: unknown;
|
|
773
|
+
};
|
|
774
|
+
/** A SCIM token (never the token itself). */
|
|
775
|
+
export type WebhookDataScimToken = {
|
|
776
|
+
object: "scim_token";
|
|
777
|
+
id: string;
|
|
778
|
+
name: string | null;
|
|
779
|
+
organization_id?: string | null;
|
|
780
|
+
connection_id?: string | null;
|
|
781
|
+
prefix: string;
|
|
782
|
+
revoked: boolean;
|
|
783
|
+
/** Created (epoch ms). */
|
|
784
|
+
created_at: number;
|
|
785
|
+
[key: string]: unknown;
|
|
786
|
+
};
|
|
787
|
+
/** A key is close to expiry (or was revoked). */
|
|
788
|
+
export type WebhookDataSecretKeyExpiring = {
|
|
789
|
+
object: "key";
|
|
790
|
+
id: string;
|
|
791
|
+
kind: "secret_key" | "platform_key" | "account_key";
|
|
792
|
+
prefix: string;
|
|
793
|
+
name?: string | null;
|
|
794
|
+
/** Who owns the key (an email address), if recorded. */
|
|
795
|
+
owner?: string | null;
|
|
796
|
+
/** Expires (epoch ms). */
|
|
797
|
+
expires_at: number;
|
|
798
|
+
days_left?: number;
|
|
799
|
+
threshold_days?: number;
|
|
800
|
+
[key: string]: unknown;
|
|
801
|
+
};
|
|
802
|
+
/** A conditional-access, device-posture, containment or risk signal; the fields depend on the event. */
|
|
803
|
+
export type WebhookDataSecuritySignal = {
|
|
804
|
+
user_id?: string | null;
|
|
805
|
+
device_id?: string | null;
|
|
806
|
+
integration_id?: string | null;
|
|
807
|
+
pass_id?: string | null;
|
|
808
|
+
factor_id?: string | null;
|
|
809
|
+
policy_id?: string | null;
|
|
810
|
+
state?: string | null;
|
|
811
|
+
level?: string | null;
|
|
812
|
+
score?: number | null;
|
|
813
|
+
stage?: string | null;
|
|
814
|
+
would?: string | null;
|
|
815
|
+
provider?: string | null;
|
|
816
|
+
reason?: string | null;
|
|
817
|
+
actor?: string | null;
|
|
818
|
+
channel?: string | null;
|
|
819
|
+
recipient?: string | null;
|
|
820
|
+
template?: string | null;
|
|
821
|
+
limit?: number | null;
|
|
822
|
+
window?: string | null;
|
|
823
|
+
retry_after_seconds?: number | null;
|
|
824
|
+
/** At (epoch ms), or null. */
|
|
825
|
+
at?: number | null;
|
|
826
|
+
error?: string | null;
|
|
827
|
+
compliant?: boolean;
|
|
828
|
+
previous?: string | null;
|
|
829
|
+
/** Until (epoch ms), or null. */
|
|
830
|
+
until?: number | null;
|
|
831
|
+
/** Expires (epoch ms), or null. */
|
|
832
|
+
expires_at?: number | null;
|
|
833
|
+
matched?: string[];
|
|
834
|
+
checks?: string[];
|
|
835
|
+
revoked?: Record<string, unknown>;
|
|
836
|
+
[key: string]: unknown;
|
|
837
|
+
};
|
|
838
|
+
/** The session (session.created, .updated, .revoked, .pending, .expired). A session ended as a side effect carries only id, user_id and status. */
|
|
839
|
+
export type WebhookDataSession = {
|
|
840
|
+
object: "session";
|
|
841
|
+
/** The session id: the `sid` claim of the session token and of ID tokens issued in this session. session.pending: the sign-in attempt id (no session exists yet). */
|
|
842
|
+
id: string;
|
|
843
|
+
/** The user the session belongs to. Always present. */
|
|
844
|
+
user_id: string;
|
|
845
|
+
status: string;
|
|
846
|
+
last_active_organization_id?: string | null;
|
|
847
|
+
/** Last active (epoch ms). */
|
|
848
|
+
last_active_at?: number;
|
|
849
|
+
/** Expires (epoch ms). */
|
|
850
|
+
expire_at?: number;
|
|
851
|
+
/** Idle expiry (epoch ms). */
|
|
852
|
+
abandon_at?: number;
|
|
853
|
+
/** Idle expiry (epoch ms). */
|
|
854
|
+
idle_expires_at?: number;
|
|
855
|
+
/** Created (epoch ms). */
|
|
856
|
+
created_at?: number;
|
|
857
|
+
custom_data?: Record<string, unknown> | null;
|
|
858
|
+
/** session.pending: the stage the sign-in waits on. */
|
|
859
|
+
pending_status?: string;
|
|
860
|
+
strategy?: string;
|
|
861
|
+
/** session.expired: idle_expired = no activity for the idle window; expired = the absolute lifetime ran out. */
|
|
862
|
+
reason?: "idle_expired" | "expired";
|
|
863
|
+
[key: string]: unknown;
|
|
864
|
+
};
|
|
865
|
+
/** A staged signing key: published (signing_key.staged) or now signing (signing_key.activated). */
|
|
866
|
+
export type WebhookDataSigningKey = {
|
|
867
|
+
object: "signing_key";
|
|
868
|
+
kid: string;
|
|
869
|
+
alg: "RS256" | "ES256";
|
|
870
|
+
/** signing_key.staged: when the key starts signing tokens (epoch ms). */
|
|
871
|
+
activates_at?: number;
|
|
872
|
+
previous_kid?: string | null;
|
|
873
|
+
/** signing_key.activated: when the previous key leaves the JWKS (epoch ms). */
|
|
874
|
+
previous_retires_at?: number | null;
|
|
875
|
+
[key: string]: unknown;
|
|
876
|
+
};
|
|
877
|
+
/** A transactional SMS was sent (never its body). */
|
|
878
|
+
export type WebhookDataSmsMessage = {
|
|
879
|
+
object: "sms_message";
|
|
880
|
+
id: string;
|
|
881
|
+
to_phone_number: string;
|
|
882
|
+
status: string;
|
|
883
|
+
[key: string]: unknown;
|
|
884
|
+
};
|
|
885
|
+
/** An SSO connection. */
|
|
886
|
+
export type WebhookDataSsoConnection = {
|
|
887
|
+
object: "sso_connection";
|
|
888
|
+
id: string;
|
|
889
|
+
organization_id: string;
|
|
890
|
+
type: string;
|
|
891
|
+
status: string;
|
|
892
|
+
/** Created (epoch ms). */
|
|
893
|
+
created_at: number;
|
|
894
|
+
/** Updated (epoch ms). */
|
|
895
|
+
updated_at: number;
|
|
896
|
+
[key: string]: unknown;
|
|
897
|
+
};
|
|
898
|
+
/** A hosted SSO setup ticket the customer finished. */
|
|
899
|
+
export type WebhookDataSsoOnboardingTicket = {
|
|
900
|
+
object: "sso_onboarding_ticket";
|
|
901
|
+
id: string;
|
|
902
|
+
profile_id: string;
|
|
903
|
+
organization_id: string;
|
|
904
|
+
sso_connection_id?: string | null;
|
|
905
|
+
status: "completed";
|
|
906
|
+
return_url?: string | null;
|
|
907
|
+
/** Completed (epoch ms). */
|
|
908
|
+
completed_at: number;
|
|
909
|
+
[key: string]: unknown;
|
|
910
|
+
};
|
|
911
|
+
/** A status incident that matches your subscription. */
|
|
912
|
+
export type WebhookDataStatusIncident = {
|
|
913
|
+
object: "status_incident";
|
|
914
|
+
id: string;
|
|
915
|
+
kind: string;
|
|
916
|
+
title: string;
|
|
917
|
+
status: string;
|
|
918
|
+
impact: string;
|
|
919
|
+
regions?: string[];
|
|
920
|
+
component_ids?: string[];
|
|
921
|
+
affected_regions?: string[];
|
|
922
|
+
affected_component_ids?: string[];
|
|
923
|
+
/** Started (epoch ms). */
|
|
924
|
+
started_at: number;
|
|
925
|
+
/** Resolved (epoch ms), or null. */
|
|
926
|
+
resolved_at?: number | null;
|
|
927
|
+
update: Record<string, unknown>;
|
|
928
|
+
url: string;
|
|
929
|
+
[key: string]: unknown;
|
|
930
|
+
};
|
|
931
|
+
/** A data subject request (access/export or erasure). */
|
|
932
|
+
export type WebhookDataSubjectRequest = {
|
|
933
|
+
object: "data_subject_request";
|
|
934
|
+
id: string;
|
|
935
|
+
user_id: string;
|
|
936
|
+
type: string;
|
|
937
|
+
status: string;
|
|
938
|
+
reason?: string | null;
|
|
939
|
+
/** Scheduled for (epoch ms), or null. */
|
|
940
|
+
scheduled_for?: number | null;
|
|
941
|
+
canonical_type?: string;
|
|
942
|
+
/** When the purge runs (epoch ms), or null. */
|
|
943
|
+
deletion_effective_at?: number | null;
|
|
944
|
+
[key: string]: unknown;
|
|
945
|
+
};
|
|
946
|
+
/** The Atlas plan subscription of the account. */
|
|
947
|
+
export type WebhookDataSubscription = {
|
|
948
|
+
object: "subscription";
|
|
949
|
+
account_id: string;
|
|
950
|
+
plan: string;
|
|
951
|
+
status: "active" | "canceled";
|
|
952
|
+
stripe_subscription_id?: string | null;
|
|
953
|
+
[key: string]: unknown;
|
|
954
|
+
};
|
|
955
|
+
/** A team. */
|
|
956
|
+
export type WebhookDataTeam = {
|
|
957
|
+
object: "team";
|
|
958
|
+
id: string;
|
|
959
|
+
organization_id: string;
|
|
960
|
+
name: string;
|
|
961
|
+
description?: string | null;
|
|
962
|
+
members_count?: number;
|
|
963
|
+
/** Created (epoch ms). */
|
|
964
|
+
created_at: number;
|
|
965
|
+
/** Updated (epoch ms). */
|
|
966
|
+
updated_at: number;
|
|
967
|
+
[key: string]: unknown;
|
|
968
|
+
};
|
|
969
|
+
/** A user joined or left a team. */
|
|
970
|
+
export type WebhookDataTeamMembership = {
|
|
971
|
+
object: "team_membership";
|
|
972
|
+
team_id: string;
|
|
973
|
+
organization_id: string;
|
|
974
|
+
user_id: string;
|
|
975
|
+
[key: string]: unknown;
|
|
976
|
+
};
|
|
977
|
+
/** The synthetic event POST /v1/webhook_endpoints/{id}/test sends. */
|
|
978
|
+
export type WebhookDataTest = {
|
|
979
|
+
object: "webhook_test";
|
|
980
|
+
id: string;
|
|
981
|
+
note: string;
|
|
982
|
+
[key: string]: unknown;
|
|
983
|
+
};
|
|
984
|
+
/** A connection trigger fired. */
|
|
985
|
+
export type WebhookDataTriggerFired = {
|
|
986
|
+
object: "connection_trigger_event";
|
|
987
|
+
trigger_id: string;
|
|
988
|
+
connection_id: string;
|
|
989
|
+
event: string;
|
|
990
|
+
provider?: string;
|
|
991
|
+
/** The new item the poll found. */
|
|
992
|
+
item?: Record<string, unknown>;
|
|
993
|
+
[key: string]: unknown;
|
|
994
|
+
};
|
|
995
|
+
/** A user-managed-access request for a resource the owner has to approve. */
|
|
996
|
+
export type WebhookDataUmaRequest = {
|
|
997
|
+
object: "uma_access_request";
|
|
998
|
+
id: string;
|
|
999
|
+
resource_id: string;
|
|
1000
|
+
resource_name?: string;
|
|
1001
|
+
requester_user_id: string;
|
|
1002
|
+
owner_user_id: string;
|
|
1003
|
+
client_id?: string;
|
|
1004
|
+
scopes: string[];
|
|
1005
|
+
status: "pending" | "approved" | "denied";
|
|
1006
|
+
/** Created (epoch ms). */
|
|
1007
|
+
created_at?: number;
|
|
1008
|
+
/** Decided (epoch ms), or null. */
|
|
1009
|
+
decided_at?: number | null;
|
|
1010
|
+
[key: string]: unknown;
|
|
1011
|
+
};
|
|
1012
|
+
/** The user as it now stands (user.created, user.updated, user.banned, …), with their addresses. */
|
|
1013
|
+
export type WebhookDataUser = {
|
|
1014
|
+
object: "user";
|
|
1015
|
+
id: string;
|
|
1016
|
+
first_name: string | null;
|
|
1017
|
+
last_name: string | null;
|
|
1018
|
+
username: string | null;
|
|
1019
|
+
image_url: string | null;
|
|
1020
|
+
primary_email_address_id: string | null;
|
|
1021
|
+
public_metadata: Record<string, unknown> | null;
|
|
1022
|
+
unsafe_metadata: Record<string, unknown> | null;
|
|
1023
|
+
mfa_enabled: boolean;
|
|
1024
|
+
is_anonymous: boolean;
|
|
1025
|
+
banned: boolean;
|
|
1026
|
+
/** When the ban lifts (epoch ms), or null. */
|
|
1027
|
+
ban_expires_at: number | null;
|
|
1028
|
+
/** One account state, the same value as the ID token's account_status: banned (an active ban; deactivation by SCIM, directory sync or a workflow is a ban), suspended (a lock, suspension directive or sign-in lockout is in force), else active. */
|
|
1029
|
+
status: "active" | "suspended" | "banned";
|
|
1030
|
+
/** Created (epoch ms). */
|
|
1031
|
+
created_at: number;
|
|
1032
|
+
/** Last changed (epoch ms). */
|
|
1033
|
+
updated_at: number;
|
|
1034
|
+
/** Strictly increases with every change to the user; apply a delivery only if its version is higher than the one you hold. */
|
|
1035
|
+
version: number;
|
|
1036
|
+
/** Added to user.* events: the primary address. */
|
|
1037
|
+
primary_email_address?: string | null;
|
|
1038
|
+
/** Added to user.* events: every address of the user. */
|
|
1039
|
+
email_addresses?: Array<{
|
|
1040
|
+
id: string;
|
|
1041
|
+
email_address: string;
|
|
1042
|
+
verified: boolean;
|
|
1043
|
+
primary: boolean;
|
|
1044
|
+
[key: string]: unknown;
|
|
1045
|
+
}>;
|
|
1046
|
+
/** Referral attribution, when the instance has referrals on. */
|
|
1047
|
+
referral?: Record<string, unknown> | null;
|
|
1048
|
+
/** Added to user.* events: every linked provider identity (sign-in, connect or import), as on GET /v1/users/{id}. */
|
|
1049
|
+
external_accounts?: Array<Record<string, unknown>>;
|
|
1050
|
+
referral_code?: string | null;
|
|
1051
|
+
referral_link?: string | null;
|
|
1052
|
+
[key: string]: unknown;
|
|
1053
|
+
};
|
|
1054
|
+
/** A user's app roles after a change. */
|
|
1055
|
+
export type WebhookDataUserAppRoles = {
|
|
1056
|
+
object: "user_app_roles";
|
|
1057
|
+
user_id: string;
|
|
1058
|
+
roles: string[];
|
|
1059
|
+
permissions: string[];
|
|
1060
|
+
[key: string]: unknown;
|
|
1061
|
+
};
|
|
1062
|
+
/** A deprovisioning signal: revoke sessions and access now. */
|
|
1063
|
+
export type WebhookDataUserDeactivated = {
|
|
1064
|
+
object: "user";
|
|
1065
|
+
user_id: string;
|
|
1066
|
+
organization_id: string | null;
|
|
1067
|
+
source: "admin" | "scim" | "self";
|
|
1068
|
+
reason: string | null;
|
|
1069
|
+
/** Deactivated (epoch ms). */
|
|
1070
|
+
deactivated_at: number;
|
|
1071
|
+
[key: string]: unknown;
|
|
1072
|
+
};
|
|
1073
|
+
/** The pre-delete snapshot of the user and why they were deleted. */
|
|
1074
|
+
export type WebhookDataUserDeleted = {
|
|
1075
|
+
object: "user";
|
|
1076
|
+
id: string;
|
|
1077
|
+
first_name: string | null;
|
|
1078
|
+
last_name: string | null;
|
|
1079
|
+
username: string | null;
|
|
1080
|
+
image_url: string | null;
|
|
1081
|
+
primary_email_address_id: string | null;
|
|
1082
|
+
public_metadata: Record<string, unknown> | null;
|
|
1083
|
+
unsafe_metadata: Record<string, unknown> | null;
|
|
1084
|
+
mfa_enabled: boolean;
|
|
1085
|
+
is_anonymous: boolean;
|
|
1086
|
+
banned: boolean;
|
|
1087
|
+
/** When the ban lifts (epoch ms), or null. */
|
|
1088
|
+
ban_expires_at: number | null;
|
|
1089
|
+
/** One account state, the same value as the ID token's account_status: banned (an active ban; deactivation by SCIM, directory sync or a workflow is a ban), suspended (a lock, suspension directive or sign-in lockout is in force), else active. */
|
|
1090
|
+
status: "active" | "suspended" | "banned";
|
|
1091
|
+
/** Created (epoch ms). */
|
|
1092
|
+
created_at: number;
|
|
1093
|
+
/** Last changed (epoch ms). */
|
|
1094
|
+
updated_at: number;
|
|
1095
|
+
/** Strictly increases with every change to the user; apply a delivery only if its version is higher than the one you hold. */
|
|
1096
|
+
version: number;
|
|
1097
|
+
/** Added to user.* events: the primary address. */
|
|
1098
|
+
primary_email_address?: string | null;
|
|
1099
|
+
/** Added to user.* events: every address of the user. */
|
|
1100
|
+
email_addresses?: Array<{
|
|
1101
|
+
id: string;
|
|
1102
|
+
email_address: string;
|
|
1103
|
+
verified: boolean;
|
|
1104
|
+
primary: boolean;
|
|
1105
|
+
[key: string]: unknown;
|
|
1106
|
+
}>;
|
|
1107
|
+
/** Referral attribution, when the instance has referrals on. */
|
|
1108
|
+
referral?: Record<string, unknown> | null;
|
|
1109
|
+
/** Added to user.* events: every linked provider identity (sign-in, connect or import), as on GET /v1/users/{id}. */
|
|
1110
|
+
external_accounts?: Array<Record<string, unknown>>;
|
|
1111
|
+
referral_code?: string | null;
|
|
1112
|
+
referral_link?: string | null;
|
|
1113
|
+
deleted: true;
|
|
1114
|
+
/** Why the user was deleted. */
|
|
1115
|
+
reason: "erasure" | "admin" | "self_service" | "anonymous_expired";
|
|
1116
|
+
/** The data subject request, for an erasure. */
|
|
1117
|
+
request_id: string | null;
|
|
1118
|
+
[key: string]: unknown;
|
|
1119
|
+
};
|
|
1120
|
+
/** A graceful deletion was scheduled or canceled. */
|
|
1121
|
+
export type WebhookDataUserDeletionSchedule = {
|
|
1122
|
+
object: "user";
|
|
1123
|
+
id: string;
|
|
1124
|
+
primary_email_address_id: string | null;
|
|
1125
|
+
/** Scheduled (epoch ms), or null. */
|
|
1126
|
+
deletion_scheduled_at: number | null;
|
|
1127
|
+
/** When the purge runs (epoch ms), or null. */
|
|
1128
|
+
deletion_effective_at: number | null;
|
|
1129
|
+
/** Canceled (epoch ms), or null. */
|
|
1130
|
+
deletion_canceled_at?: number | null;
|
|
1131
|
+
data_subject_request_id?: string;
|
|
1132
|
+
primary_email_address?: string | null;
|
|
1133
|
+
email_addresses?: Array<Record<string, unknown>>;
|
|
1134
|
+
[key: string]: unknown;
|
|
1135
|
+
};
|
|
1136
|
+
/** A temporary hold was placed on the account. */
|
|
1137
|
+
export type WebhookDataUserLocked = {
|
|
1138
|
+
object: "user";
|
|
1139
|
+
user_id: string;
|
|
1140
|
+
/** Lock lifts (epoch ms). */
|
|
1141
|
+
locked_until: number;
|
|
1142
|
+
reason?: string | null;
|
|
1143
|
+
[key: string]: unknown;
|
|
1144
|
+
};
|
|
1145
|
+
/** A user merge. */
|
|
1146
|
+
export type WebhookDataUserMerged = {
|
|
1147
|
+
object: "user_merge";
|
|
1148
|
+
source_user_id: string;
|
|
1149
|
+
target_user_id: string;
|
|
1150
|
+
moved?: Record<string, unknown>;
|
|
1151
|
+
/** Merged (epoch ms). */
|
|
1152
|
+
merged_at?: number;
|
|
1153
|
+
[key: string]: unknown;
|
|
1154
|
+
};
|
|
1155
|
+
/** A dormant account was reactivated by signing in. */
|
|
1156
|
+
export type WebhookDataUserReactivation = {
|
|
1157
|
+
object: "user_reactivation";
|
|
1158
|
+
user_id: string;
|
|
1159
|
+
session_id?: string | null;
|
|
1160
|
+
sign_in_method?: string | null;
|
|
1161
|
+
/** Last activity (epoch ms), or null. */
|
|
1162
|
+
last_active_at?: number | null;
|
|
1163
|
+
inactive_days?: number | null;
|
|
1164
|
+
threshold_days?: number;
|
|
1165
|
+
step_up_required?: boolean;
|
|
1166
|
+
/** Reactivated (epoch ms). */
|
|
1167
|
+
reactivated_at: number;
|
|
1168
|
+
[key: string]: unknown;
|
|
1169
|
+
};
|
|
1170
|
+
/** A user was attributed to a referrer (or, for a Sign in with Atlas sign-up, the platform answered). */
|
|
1171
|
+
export type WebhookDataUserReferral = {
|
|
1172
|
+
object: "user_referral";
|
|
1173
|
+
user_id: string;
|
|
1174
|
+
attribution_status: string;
|
|
1175
|
+
/** Signed up (epoch ms). */
|
|
1176
|
+
signed_up_at: number;
|
|
1177
|
+
/** Updated (epoch ms). */
|
|
1178
|
+
updated_at: number;
|
|
1179
|
+
/** The referral, when found. */
|
|
1180
|
+
referral?: Record<string, unknown> | null;
|
|
1181
|
+
referral_code?: string | null;
|
|
1182
|
+
referral_link?: string | null;
|
|
1183
|
+
/** Present only for a Sign in with Atlas sign-up (`report_linked_atlas_id_signups`): the person is an Atlas ID account, not a user of the instance, and `user_id` is the `sub` the app sees. */
|
|
1184
|
+
source?: "sign_in_with_atlas";
|
|
1185
|
+
/** Sign in with Atlas sign-up: the `sub` the app sees (also the customerRef reported). */
|
|
1186
|
+
atlas_id_sub?: string;
|
|
1187
|
+
/** Sign in with Atlas sign-up: the app the person signed in to. */
|
|
1188
|
+
atlas_id_app_id?: string;
|
|
1189
|
+
[key: string]: unknown;
|
|
1190
|
+
};
|
|
1191
|
+
/** A suspension lifted. */
|
|
1192
|
+
export type WebhookDataUserUnsuspended = {
|
|
1193
|
+
user_id: string;
|
|
1194
|
+
[key: string]: unknown;
|
|
1195
|
+
};
|
|
1196
|
+
/** A waitlist entry. */
|
|
1197
|
+
export type WebhookDataWaitlistEntry = {
|
|
1198
|
+
object: "waitlist_entry";
|
|
1199
|
+
id: string;
|
|
1200
|
+
email_address: string;
|
|
1201
|
+
status: string;
|
|
1202
|
+
/** Created (epoch ms). */
|
|
1203
|
+
created_at: number;
|
|
1204
|
+
/** Updated (epoch ms). */
|
|
1205
|
+
updated_at: number;
|
|
1206
|
+
[key: string]: unknown;
|
|
1207
|
+
};
|
|
1208
|
+
/** A workflow run finished or failed, or one of its approval steps needs a decision. */
|
|
1209
|
+
export type WebhookDataWorkflow = {
|
|
1210
|
+
id: string;
|
|
1211
|
+
workflow_id: string;
|
|
1212
|
+
run_id?: string;
|
|
1213
|
+
subject?: string;
|
|
1214
|
+
error?: string | null;
|
|
1215
|
+
message?: string;
|
|
1216
|
+
status?: string;
|
|
1217
|
+
approvers?: string[];
|
|
1218
|
+
[key: string]: unknown;
|
|
1219
|
+
};
|
|
1220
|
+
/** The signed envelope of every delivery: `type` names the event, `data` is its subject. */
|
|
1221
|
+
export interface AtlasWebhookEnvelope<T extends string, D> {
|
|
1222
|
+
/** The event id (also the `atlas-id` header). */
|
|
1223
|
+
id: string;
|
|
1224
|
+
type: T;
|
|
1225
|
+
/** When it was emitted (epoch ms). */
|
|
1226
|
+
timestamp: number;
|
|
1227
|
+
instance_id: string;
|
|
1228
|
+
data: D;
|
|
1229
|
+
}
|
|
1230
|
+
/** Every canonical Atlas webhook event; narrow on `type`. */
|
|
1231
|
+
export type AtlasWebhookEvent = AtlasWebhookEnvelope<"access_policy.would_block", WebhookDataSecuritySignal> | AtlasWebhookEnvelope<"agent.access_decided", WebhookDataAgentAccess> | AtlasWebhookEnvelope<"agent.access_requested", WebhookDataAgentAccess> | AtlasWebhookEnvelope<"agent.access_revoked", WebhookDataAgentAccess> | AtlasWebhookEnvelope<"agent.anomaly", WebhookDataAgentGovernance> | AtlasWebhookEnvelope<"agent.expiring", WebhookDataAgentGovernance> | AtlasWebhookEnvelope<"agent.sponsor_changed", WebhookDataAgentGovernance> | AtlasWebhookEnvelope<"api_key.created", WebhookDataApiKey> | AtlasWebhookEnvelope<"api_key.expiring", WebhookDataApiKeyExpiring> | AtlasWebhookEnvelope<"api_key.limit_reached", WebhookDataApiKey> | AtlasWebhookEnvelope<"api_key.revoked", WebhookDataApiKey> | AtlasWebhookEnvelope<"api_key.updated", WebhookDataApiKey> | AtlasWebhookEnvelope<"app_role.created", WebhookDataAppRole> | AtlasWebhookEnvelope<"app_role.deleted", WebhookDataAppRole> | AtlasWebhookEnvelope<"app_role.updated", WebhookDataAppRole> | AtlasWebhookEnvelope<"billing_coupon.redeemed", WebhookDataBillingCouponRedeemed> | AtlasWebhookEnvelope<"billing_credit.granted", WebhookDataBillingCredit> | AtlasWebhookEnvelope<"billing_dunning.notice", WebhookDataBillingDunningNotice> | AtlasWebhookEnvelope<"billing_invoice.payment_failed", WebhookDataBillingInvoiceFailed> | AtlasWebhookEnvelope<"billing_subscription.canceled", WebhookDataBillingSubscription> | AtlasWebhookEnvelope<"billing_subscription.created", WebhookDataBillingSubscription> | AtlasWebhookEnvelope<"billing_subscription.suspended", WebhookDataBillingSuspended> | AtlasWebhookEnvelope<"billing_subscription.updated", WebhookDataBillingSubscription> | AtlasWebhookEnvelope<"billing_trial.ended", WebhookDataBillingSubscription> | AtlasWebhookEnvelope<"billing_trial.started", WebhookDataBillingSubscription> | AtlasWebhookEnvelope<"billing_trial.will_end", WebhookDataBillingTrialWillEnd> | AtlasWebhookEnvelope<"connection.reauthorization_required", WebhookDataConnection> | AtlasWebhookEnvelope<"connection.recovered", WebhookDataConnection> | AtlasWebhookEnvelope<"connection.refresh_failed", WebhookDataConnection> | AtlasWebhookEnvelope<"connection.revoked", WebhookDataConnection> | AtlasWebhookEnvelope<"connection.scopes_changed", WebhookDataConnection> | AtlasWebhookEnvelope<"connection.trigger_fired", WebhookDataTriggerFired> | AtlasWebhookEnvelope<"data_subject_request.fulfilled", WebhookDataSubjectRequest> | AtlasWebhookEnvelope<"data_subject_request.rejected", WebhookDataSubjectRequest> | AtlasWebhookEnvelope<"data_subject_request.scheduled", WebhookDataSubjectRequest> | AtlasWebhookEnvelope<"delivery_target.disabled", WebhookDataDeliveryHealth> | AtlasWebhookEnvelope<"delivery_target.failing", WebhookDataDeliveryHealth> | AtlasWebhookEnvelope<"delivery_target.recovered", WebhookDataDeliveryHealth> | AtlasWebhookEnvelope<"device.noncompliant", WebhookDataSecuritySignal> | AtlasWebhookEnvelope<"device.posture_changed", WebhookDataSecuritySignal> | AtlasWebhookEnvelope<"device_integration.sync_failed", WebhookDataSecuritySignal> | AtlasWebhookEnvelope<"email.created", WebhookDataEmailMessage> | AtlasWebhookEnvelope<"entitlement.created", WebhookDataEntitlement> | AtlasWebhookEnvelope<"entitlement.deleted", WebhookDataEntitlement> | AtlasWebhookEnvelope<"entitlement.updated", WebhookDataEntitlement> | AtlasWebhookEnvelope<"entitlement_override.created", WebhookDataEntitlementOverride> | AtlasWebhookEnvelope<"entitlement_override.deleted", WebhookDataEntitlementOverride> | AtlasWebhookEnvelope<"entitlement_override.expired", WebhookDataEntitlementOverride> | AtlasWebhookEnvelope<"feature_flag.changed", WebhookDataFeatureFlag> | AtlasWebhookEnvelope<"grant.revoked", WebhookDataGrant> | AtlasWebhookEnvelope<"group.created", WebhookDataGroup> | AtlasWebhookEnvelope<"group.deleted", WebhookDataGroup> | AtlasWebhookEnvelope<"group.member_added", WebhookDataGroupMember> | AtlasWebhookEnvelope<"group.member_removed", WebhookDataGroupMember> | AtlasWebhookEnvelope<"group.updated", WebhookDataGroup> | AtlasWebhookEnvelope<"iga_activation.started", WebhookDataIga> | AtlasWebhookEnvelope<"iga_campaign.closed", WebhookDataIga> | AtlasWebhookEnvelope<"iga_campaign.launched", WebhookDataIga> | AtlasWebhookEnvelope<"iga_campaign.reminder", WebhookDataIga> | AtlasWebhookEnvelope<"iga_grant.created", WebhookDataIga> | AtlasWebhookEnvelope<"iga_grant.revoked", WebhookDataIga> | AtlasWebhookEnvelope<"iga_request.approval_needed", WebhookDataIga> | AtlasWebhookEnvelope<"iga_request.created", WebhookDataIga> | AtlasWebhookEnvelope<"iga_request.decided", WebhookDataIga> | AtlasWebhookEnvelope<"iga_request.escalated", WebhookDataIga> | AtlasWebhookEnvelope<"iga_user.offboarded", WebhookDataIga> | AtlasWebhookEnvelope<"iga_user.reconciled", WebhookDataIga> | AtlasWebhookEnvelope<"iga_violation.detected", WebhookDataIga> | AtlasWebhookEnvelope<"invitation.accepted", WebhookDataInstanceInvitation> | AtlasWebhookEnvelope<"invitation.created", WebhookDataInstanceInvitation> | AtlasWebhookEnvelope<"invitation.revoked", WebhookDataInstanceInvitation> | AtlasWebhookEnvelope<"machine.enrolled", WebhookDataMachine> | AtlasWebhookEnvelope<"machine.revoked", WebhookDataMachine> | AtlasWebhookEnvelope<"machine.updated", WebhookDataMachine> | AtlasWebhookEnvelope<"mcp_gateway.tool_changed", WebhookDataMcpToolChange> | AtlasWebhookEnvelope<"message.rate_limited", WebhookDataSecuritySignal> | AtlasWebhookEnvelope<"mfa_factor.quarantined", WebhookDataSecuritySignal> | AtlasWebhookEnvelope<"organization.created", WebhookDataOrganization> | AtlasWebhookEnvelope<"organization.deleted", WebhookDataOrganization> | AtlasWebhookEnvelope<"organization.it_alert", WebhookDataOrgItAlert> | AtlasWebhookEnvelope<"organization.updated", WebhookDataOrganization> | AtlasWebhookEnvelope<"organization_domain.created", WebhookDataOrgDomain> | AtlasWebhookEnvelope<"organization_domain.deleted", WebhookDataOrgDomain> | AtlasWebhookEnvelope<"organization_domain.updated", WebhookDataOrgDomain> | AtlasWebhookEnvelope<"organization_invitation.accepted", WebhookDataInvitation> | AtlasWebhookEnvelope<"organization_invitation.created", WebhookDataInvitation> | AtlasWebhookEnvelope<"organization_invitation.declined", WebhookDataInvitation> | AtlasWebhookEnvelope<"organization_invitation.resent", WebhookDataInvitation> | AtlasWebhookEnvelope<"organization_invitation.revoked", WebhookDataInvitation> | AtlasWebhookEnvelope<"organization_membership.created", WebhookDataMembership> | AtlasWebhookEnvelope<"organization_membership.deleted", WebhookDataMembership> | AtlasWebhookEnvelope<"organization_membership.updated", WebhookDataMembership> | AtlasWebhookEnvelope<"organization_settings.updated", WebhookDataOrganizationSettings> | AtlasWebhookEnvelope<"permission.created", WebhookDataPermission> | AtlasWebhookEnvelope<"permission.deleted", WebhookDataPermission> | AtlasWebhookEnvelope<"permission.updated", WebhookDataPermission> | AtlasWebhookEnvelope<"policy.imposed", WebhookDataDirective> | AtlasWebhookEnvelope<"policy.version_published", WebhookDataPolicyVersionPublished> | AtlasWebhookEnvelope<"privacy_request.completed", WebhookDataPrivacyRequest> | AtlasWebhookEnvelope<"privacy_request.updated", WebhookDataPrivacyRequest> | AtlasWebhookEnvelope<"risky_user.updated", WebhookDataSecuritySignal> | AtlasWebhookEnvelope<"role.created", WebhookDataRole> | AtlasWebhookEnvelope<"role.deleted", WebhookDataRole> | AtlasWebhookEnvelope<"role.updated", WebhookDataRole> | AtlasWebhookEnvelope<"scim_group.created", WebhookDataScimGroup> | AtlasWebhookEnvelope<"scim_group.deleted", WebhookDataScimGroup> | AtlasWebhookEnvelope<"scim_group.member_added", WebhookDataScimGroupMember> | AtlasWebhookEnvelope<"scim_group.member_removed", WebhookDataScimGroupMember> | AtlasWebhookEnvelope<"scim_group.updated", WebhookDataScimGroup> | AtlasWebhookEnvelope<"scim_token.created", WebhookDataScimToken> | AtlasWebhookEnvelope<"scim_token.revoked", WebhookDataScimToken> | AtlasWebhookEnvelope<"secret_key.expiring", WebhookDataSecretKeyExpiring> | AtlasWebhookEnvelope<"secret_key.revoked", WebhookDataSecretKeyExpiring> | AtlasWebhookEnvelope<"session.created", WebhookDataSession> | AtlasWebhookEnvelope<"session.expired", WebhookDataSession> | AtlasWebhookEnvelope<"session.impersonation_started", WebhookDataSecuritySignal> | AtlasWebhookEnvelope<"session.pending", WebhookDataSession> | AtlasWebhookEnvelope<"session.revoked", WebhookDataSession> | AtlasWebhookEnvelope<"session.updated", WebhookDataSession> | AtlasWebhookEnvelope<"signing_key.activated", WebhookDataSigningKey> | AtlasWebhookEnvelope<"signing_key.staged", WebhookDataSigningKey> | AtlasWebhookEnvelope<"sms.created", WebhookDataSmsMessage> | AtlasWebhookEnvelope<"sso_connection.activated", WebhookDataSsoConnection> | AtlasWebhookEnvelope<"sso_connection.created", WebhookDataSsoConnection> | AtlasWebhookEnvelope<"sso_connection.deleted", WebhookDataSsoConnection> | AtlasWebhookEnvelope<"sso_connection.updated", WebhookDataSsoConnection> | AtlasWebhookEnvelope<"sso_onboarding_ticket.completed", WebhookDataSsoOnboardingTicket> | AtlasWebhookEnvelope<"status_incident.created", WebhookDataStatusIncident> | AtlasWebhookEnvelope<"status_incident.resolved", WebhookDataStatusIncident> | AtlasWebhookEnvelope<"status_incident.updated", WebhookDataStatusIncident> | AtlasWebhookEnvelope<"subscription.created", WebhookDataSubscription> | AtlasWebhookEnvelope<"subscription.deleted", WebhookDataSubscription> | AtlasWebhookEnvelope<"subscription.updated", WebhookDataSubscription> | AtlasWebhookEnvelope<"team.created", WebhookDataTeam> | AtlasWebhookEnvelope<"team.deleted", WebhookDataTeam> | AtlasWebhookEnvelope<"team.updated", WebhookDataTeam> | AtlasWebhookEnvelope<"team_membership.created", WebhookDataTeamMembership> | AtlasWebhookEnvelope<"team_membership.deleted", WebhookDataTeamMembership> | AtlasWebhookEnvelope<"temporary_access.issued", WebhookDataSecuritySignal> | AtlasWebhookEnvelope<"temporary_access.used", WebhookDataSecuritySignal> | AtlasWebhookEnvelope<"uma.request_decided", WebhookDataUmaRequest> | AtlasWebhookEnvelope<"uma.request_submitted", WebhookDataUmaRequest> | AtlasWebhookEnvelope<"user.anonymous_linked", WebhookDataAnonymousLink> | AtlasWebhookEnvelope<"user.app_roles_updated", WebhookDataUserAppRoles> | AtlasWebhookEnvelope<"user.banned", WebhookDataUser> | AtlasWebhookEnvelope<"user.contained", WebhookDataSecuritySignal> | AtlasWebhookEnvelope<"user.created", WebhookDataUser> | AtlasWebhookEnvelope<"user.data_export_requested", WebhookDataSubjectRequest> | AtlasWebhookEnvelope<"user.deactivated", WebhookDataUserDeactivated> | AtlasWebhookEnvelope<"user.deleted", WebhookDataUserDeleted> | AtlasWebhookEnvelope<"user.deletion_canceled", WebhookDataUserDeletionSchedule> | AtlasWebhookEnvelope<"user.deletion_requested", WebhookDataSubjectRequest> | AtlasWebhookEnvelope<"user.deletion_scheduled", WebhookDataUserDeletionSchedule> | AtlasWebhookEnvelope<"user.graduated", WebhookDataUser> | AtlasWebhookEnvelope<"user.locked", WebhookDataUserLocked> | AtlasWebhookEnvelope<"user.merged", WebhookDataUserMerged> | AtlasWebhookEnvelope<"user.parental_consent_declined", WebhookDataMinorStatus> | AtlasWebhookEnvelope<"user.parental_consent_granted", WebhookDataMinorStatus> | AtlasWebhookEnvelope<"user.parental_consent_required", WebhookDataMinorStatus> | AtlasWebhookEnvelope<"user.policy_accepted", WebhookDataPolicyAcceptance> | AtlasWebhookEnvelope<"user.reactivated", WebhookDataUserReactivation> | AtlasWebhookEnvelope<"user.referral_attributed", WebhookDataUserReferral> | AtlasWebhookEnvelope<"user.referral_resolved", WebhookDataUser> | AtlasWebhookEnvelope<"user.released", WebhookDataSecuritySignal> | AtlasWebhookEnvelope<"user.required_action_cleared", WebhookDataRequiredAction> | AtlasWebhookEnvelope<"user.required_action_completed", WebhookDataRequiredAction> | AtlasWebhookEnvelope<"user.required_action_requested", WebhookDataRequiredAction> | AtlasWebhookEnvelope<"user.suspended", WebhookDataDirective> | AtlasWebhookEnvelope<"user.unbanned", WebhookDataUser> | AtlasWebhookEnvelope<"user.unsuspended", WebhookDataUserUnsuspended> | AtlasWebhookEnvelope<"user.updated", WebhookDataUser> | AtlasWebhookEnvelope<"waitlist_entry.created", WebhookDataWaitlistEntry> | AtlasWebhookEnvelope<"waitlist_entry.updated", WebhookDataWaitlistEntry> | AtlasWebhookEnvelope<"webhook.test", WebhookDataTest> | AtlasWebhookEnvelope<"webhook_endpoint.disabled", WebhookDataDeliveryHealth> | AtlasWebhookEnvelope<"webhook_endpoint.failing", WebhookDataDeliveryHealth> | AtlasWebhookEnvelope<"webhook_endpoint.recovered", WebhookDataDeliveryHealth> | AtlasWebhookEnvelope<"workflow.approval_decided", WebhookDataWorkflow> | AtlasWebhookEnvelope<"workflow.approval_needed", WebhookDataWorkflow> | AtlasWebhookEnvelope<"workflow.run_failed", WebhookDataWorkflow> | AtlasWebhookEnvelope<"workflow.run_succeeded", WebhookDataWorkflow>;
|
|
1232
|
+
export type AtlasWebhookEventType = AtlasWebhookEvent['type'];
|
|
1233
|
+
/** The event names, sorted. */
|
|
1234
|
+
export declare const ATLAS_WEBHOOK_EVENT_TYPES: readonly ["access_policy.would_block", "agent.access_decided", "agent.access_requested", "agent.access_revoked", "agent.anomaly", "agent.expiring", "agent.sponsor_changed", "api_key.created", "api_key.expiring", "api_key.limit_reached", "api_key.revoked", "api_key.updated", "app_role.created", "app_role.deleted", "app_role.updated", "billing_coupon.redeemed", "billing_credit.granted", "billing_dunning.notice", "billing_invoice.payment_failed", "billing_subscription.canceled", "billing_subscription.created", "billing_subscription.suspended", "billing_subscription.updated", "billing_trial.ended", "billing_trial.started", "billing_trial.will_end", "connection.reauthorization_required", "connection.recovered", "connection.refresh_failed", "connection.revoked", "connection.scopes_changed", "connection.trigger_fired", "data_subject_request.fulfilled", "data_subject_request.rejected", "data_subject_request.scheduled", "delivery_target.disabled", "delivery_target.failing", "delivery_target.recovered", "device.noncompliant", "device.posture_changed", "device_integration.sync_failed", "email.created", "entitlement.created", "entitlement.deleted", "entitlement.updated", "entitlement_override.created", "entitlement_override.deleted", "entitlement_override.expired", "feature_flag.changed", "grant.revoked", "group.created", "group.deleted", "group.member_added", "group.member_removed", "group.updated", "iga_activation.started", "iga_campaign.closed", "iga_campaign.launched", "iga_campaign.reminder", "iga_grant.created", "iga_grant.revoked", "iga_request.approval_needed", "iga_request.created", "iga_request.decided", "iga_request.escalated", "iga_user.offboarded", "iga_user.reconciled", "iga_violation.detected", "invitation.accepted", "invitation.created", "invitation.revoked", "machine.enrolled", "machine.revoked", "machine.updated", "mcp_gateway.tool_changed", "message.rate_limited", "mfa_factor.quarantined", "organization.created", "organization.deleted", "organization.it_alert", "organization.updated", "organization_domain.created", "organization_domain.deleted", "organization_domain.updated", "organization_invitation.accepted", "organization_invitation.created", "organization_invitation.declined", "organization_invitation.resent", "organization_invitation.revoked", "organization_membership.created", "organization_membership.deleted", "organization_membership.updated", "organization_settings.updated", "permission.created", "permission.deleted", "permission.updated", "policy.imposed", "policy.version_published", "privacy_request.completed", "privacy_request.updated", "risky_user.updated", "role.created", "role.deleted", "role.updated", "scim_group.created", "scim_group.deleted", "scim_group.member_added", "scim_group.member_removed", "scim_group.updated", "scim_token.created", "scim_token.revoked", "secret_key.expiring", "secret_key.revoked", "session.created", "session.expired", "session.impersonation_started", "session.pending", "session.revoked", "session.updated", "signing_key.activated", "signing_key.staged", "sms.created", "sso_connection.activated", "sso_connection.created", "sso_connection.deleted", "sso_connection.updated", "sso_onboarding_ticket.completed", "status_incident.created", "status_incident.resolved", "status_incident.updated", "subscription.created", "subscription.deleted", "subscription.updated", "team.created", "team.deleted", "team.updated", "team_membership.created", "team_membership.deleted", "temporary_access.issued", "temporary_access.used", "uma.request_decided", "uma.request_submitted", "user.anonymous_linked", "user.app_roles_updated", "user.banned", "user.contained", "user.created", "user.data_export_requested", "user.deactivated", "user.deleted", "user.deletion_canceled", "user.deletion_requested", "user.deletion_scheduled", "user.graduated", "user.locked", "user.merged", "user.parental_consent_declined", "user.parental_consent_granted", "user.parental_consent_required", "user.policy_accepted", "user.reactivated", "user.referral_attributed", "user.referral_resolved", "user.released", "user.required_action_cleared", "user.required_action_completed", "user.required_action_requested", "user.suspended", "user.unbanned", "user.unsuspended", "user.updated", "waitlist_entry.created", "waitlist_entry.updated", "webhook.test", "webhook_endpoint.disabled", "webhook_endpoint.failing", "webhook_endpoint.recovered", "workflow.approval_decided", "workflow.approval_needed", "workflow.run_failed", "workflow.run_succeeded"];
|