@productcraft/heimdall 0.0.1
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/dist/index.cjs +16 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +2842 -0
- package/dist/index.d.ts +2842 -0
- package/dist/index.js +14 -0
- package/dist/index.js.map +1 -0
- package/package.json +47 -0
package/dist/index.d.cts
ADDED
|
@@ -0,0 +1,2842 @@
|
|
|
1
|
+
import { makeClient, PCClientConfig } from '@productcraft/core';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* This file was auto-generated by openapi-typescript.
|
|
5
|
+
* Do not make direct changes to the file.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
interface paths {
|
|
9
|
+
"/v1/apps": {
|
|
10
|
+
parameters: {
|
|
11
|
+
query?: never;
|
|
12
|
+
header?: never;
|
|
13
|
+
path?: never;
|
|
14
|
+
cookie?: never;
|
|
15
|
+
};
|
|
16
|
+
/** List apps the current PlatformUser is a member of */
|
|
17
|
+
get: operations["AppController_listMyApps"];
|
|
18
|
+
put?: never;
|
|
19
|
+
/** Create a new Heimdall app owned by the caller */
|
|
20
|
+
post: operations["AppController_createApp"];
|
|
21
|
+
delete?: never;
|
|
22
|
+
options?: never;
|
|
23
|
+
head?: never;
|
|
24
|
+
patch?: never;
|
|
25
|
+
trace?: never;
|
|
26
|
+
};
|
|
27
|
+
"/v1/apps/invites/accept": {
|
|
28
|
+
parameters: {
|
|
29
|
+
query?: never;
|
|
30
|
+
header?: never;
|
|
31
|
+
path?: never;
|
|
32
|
+
cookie?: never;
|
|
33
|
+
};
|
|
34
|
+
get?: never;
|
|
35
|
+
put?: never;
|
|
36
|
+
/** Accept an app invite by code */
|
|
37
|
+
post: operations["AppController_acceptInvite"];
|
|
38
|
+
delete?: never;
|
|
39
|
+
options?: never;
|
|
40
|
+
head?: never;
|
|
41
|
+
patch?: never;
|
|
42
|
+
trace?: never;
|
|
43
|
+
};
|
|
44
|
+
"/v1/apps/{appId}": {
|
|
45
|
+
parameters: {
|
|
46
|
+
query?: never;
|
|
47
|
+
header?: never;
|
|
48
|
+
path?: never;
|
|
49
|
+
cookie?: never;
|
|
50
|
+
};
|
|
51
|
+
/** Get app details */
|
|
52
|
+
get: operations["AppController_getApp"];
|
|
53
|
+
put?: never;
|
|
54
|
+
post?: never;
|
|
55
|
+
/** Delete an app permanently */
|
|
56
|
+
delete: operations["AppController_deleteApp"];
|
|
57
|
+
options?: never;
|
|
58
|
+
head?: never;
|
|
59
|
+
/** Update app display name and metadata */
|
|
60
|
+
patch: operations["AppController_updateApp"];
|
|
61
|
+
trace?: never;
|
|
62
|
+
};
|
|
63
|
+
"/v1/apps/{appId}/api-keys": {
|
|
64
|
+
parameters: {
|
|
65
|
+
query?: never;
|
|
66
|
+
header?: never;
|
|
67
|
+
path?: never;
|
|
68
|
+
cookie?: never;
|
|
69
|
+
};
|
|
70
|
+
/** List API keys for an app (no raw secret). */
|
|
71
|
+
get: operations["ApiKeyController_listApiKeys"];
|
|
72
|
+
put?: never;
|
|
73
|
+
/** Mint a new hdk_live_* API key with an explicit permission scope. The raw key is returned ONCE. */
|
|
74
|
+
post: operations["ApiKeyController_createApiKey"];
|
|
75
|
+
delete?: never;
|
|
76
|
+
options?: never;
|
|
77
|
+
head?: never;
|
|
78
|
+
patch?: never;
|
|
79
|
+
trace?: never;
|
|
80
|
+
};
|
|
81
|
+
"/v1/apps/{appId}/api-keys/{keyId}": {
|
|
82
|
+
parameters: {
|
|
83
|
+
query?: never;
|
|
84
|
+
header?: never;
|
|
85
|
+
path?: never;
|
|
86
|
+
cookie?: never;
|
|
87
|
+
};
|
|
88
|
+
get?: never;
|
|
89
|
+
put?: never;
|
|
90
|
+
post?: never;
|
|
91
|
+
/** Revoke (delete) an API key. */
|
|
92
|
+
delete: operations["ApiKeyController_deleteApiKey"];
|
|
93
|
+
options?: never;
|
|
94
|
+
head?: never;
|
|
95
|
+
patch?: never;
|
|
96
|
+
trace?: never;
|
|
97
|
+
};
|
|
98
|
+
"/v1/apps/{appId}/audit-logs": {
|
|
99
|
+
parameters: {
|
|
100
|
+
query?: never;
|
|
101
|
+
header?: never;
|
|
102
|
+
path?: never;
|
|
103
|
+
cookie?: never;
|
|
104
|
+
};
|
|
105
|
+
/** Append-only audit log for this app. Filter by `?action=` and/or `?actor_id=`. 50/page (max 200), cursor-paginated. */
|
|
106
|
+
get: operations["AppAuditController_getAuditLogs"];
|
|
107
|
+
put?: never;
|
|
108
|
+
post?: never;
|
|
109
|
+
delete?: never;
|
|
110
|
+
options?: never;
|
|
111
|
+
head?: never;
|
|
112
|
+
patch?: never;
|
|
113
|
+
trace?: never;
|
|
114
|
+
};
|
|
115
|
+
"/v1/apps/{appId}/auth-config": {
|
|
116
|
+
parameters: {
|
|
117
|
+
query?: never;
|
|
118
|
+
header?: never;
|
|
119
|
+
path?: never;
|
|
120
|
+
cookie?: never;
|
|
121
|
+
};
|
|
122
|
+
/** Get the per-app auth config (signup, signin, password policy, sessions). */
|
|
123
|
+
get: operations["AuthConfigController_getConfig"];
|
|
124
|
+
put?: never;
|
|
125
|
+
post?: never;
|
|
126
|
+
delete?: never;
|
|
127
|
+
options?: never;
|
|
128
|
+
head?: never;
|
|
129
|
+
/** Update the per-app auth config. Only fields you pass are changed. */
|
|
130
|
+
patch: operations["AuthConfigController_updateConfig"];
|
|
131
|
+
trace?: never;
|
|
132
|
+
};
|
|
133
|
+
"/v1/apps/{appId}/credentials": {
|
|
134
|
+
parameters: {
|
|
135
|
+
query?: never;
|
|
136
|
+
header?: never;
|
|
137
|
+
path?: never;
|
|
138
|
+
cookie?: never;
|
|
139
|
+
};
|
|
140
|
+
/** List M2M clients */
|
|
141
|
+
get: operations["M2mController_listClients"];
|
|
142
|
+
put?: never;
|
|
143
|
+
/** Create a new M2M client */
|
|
144
|
+
post: operations["M2mController_createClient"];
|
|
145
|
+
delete?: never;
|
|
146
|
+
options?: never;
|
|
147
|
+
head?: never;
|
|
148
|
+
patch?: never;
|
|
149
|
+
trace?: never;
|
|
150
|
+
};
|
|
151
|
+
"/v1/apps/{appId}/credentials/{clientId}": {
|
|
152
|
+
parameters: {
|
|
153
|
+
query?: never;
|
|
154
|
+
header?: never;
|
|
155
|
+
path?: never;
|
|
156
|
+
cookie?: never;
|
|
157
|
+
};
|
|
158
|
+
/** Get M2M client details */
|
|
159
|
+
get: operations["M2mController_getClient"];
|
|
160
|
+
put?: never;
|
|
161
|
+
post?: never;
|
|
162
|
+
/** Delete an M2M client */
|
|
163
|
+
delete: operations["M2mController_deleteClient"];
|
|
164
|
+
options?: never;
|
|
165
|
+
head?: never;
|
|
166
|
+
/** Update M2M client status */
|
|
167
|
+
patch: operations["M2mController_updateClient"];
|
|
168
|
+
trace?: never;
|
|
169
|
+
};
|
|
170
|
+
"/v1/apps/{appId}/credentials/{clientId}/rotate": {
|
|
171
|
+
parameters: {
|
|
172
|
+
query?: never;
|
|
173
|
+
header?: never;
|
|
174
|
+
path?: never;
|
|
175
|
+
cookie?: never;
|
|
176
|
+
};
|
|
177
|
+
get?: never;
|
|
178
|
+
put?: never;
|
|
179
|
+
/** Rotate M2M client secret */
|
|
180
|
+
post: operations["M2mController_rotateSecret"];
|
|
181
|
+
delete?: never;
|
|
182
|
+
options?: never;
|
|
183
|
+
head?: never;
|
|
184
|
+
patch?: never;
|
|
185
|
+
trace?: never;
|
|
186
|
+
};
|
|
187
|
+
"/v1/apps/{appId}/credentials/{clientId}/scopes": {
|
|
188
|
+
parameters: {
|
|
189
|
+
query?: never;
|
|
190
|
+
header?: never;
|
|
191
|
+
path?: never;
|
|
192
|
+
cookie?: never;
|
|
193
|
+
};
|
|
194
|
+
get?: never;
|
|
195
|
+
/** Set scopes for an M2M client */
|
|
196
|
+
put: operations["M2mController_setScopes"];
|
|
197
|
+
post?: never;
|
|
198
|
+
delete?: never;
|
|
199
|
+
options?: never;
|
|
200
|
+
head?: never;
|
|
201
|
+
patch?: never;
|
|
202
|
+
trace?: never;
|
|
203
|
+
};
|
|
204
|
+
"/v1/apps/{appId}/end-users": {
|
|
205
|
+
parameters: {
|
|
206
|
+
query?: never;
|
|
207
|
+
header?: never;
|
|
208
|
+
path?: never;
|
|
209
|
+
cookie?: never;
|
|
210
|
+
};
|
|
211
|
+
get: operations["EndUserController_listEndUsers"];
|
|
212
|
+
put?: never;
|
|
213
|
+
post?: never;
|
|
214
|
+
delete?: never;
|
|
215
|
+
options?: never;
|
|
216
|
+
head?: never;
|
|
217
|
+
patch?: never;
|
|
218
|
+
trace?: never;
|
|
219
|
+
};
|
|
220
|
+
"/v1/apps/{appId}/end-users/{userId}": {
|
|
221
|
+
parameters: {
|
|
222
|
+
query?: never;
|
|
223
|
+
header?: never;
|
|
224
|
+
path?: never;
|
|
225
|
+
cookie?: never;
|
|
226
|
+
};
|
|
227
|
+
get: operations["EndUserController_getEndUser"];
|
|
228
|
+
put?: never;
|
|
229
|
+
post?: never;
|
|
230
|
+
delete: operations["EndUserController_deleteEndUser"];
|
|
231
|
+
options?: never;
|
|
232
|
+
head?: never;
|
|
233
|
+
patch: operations["EndUserController_updateEndUser"];
|
|
234
|
+
trace?: never;
|
|
235
|
+
};
|
|
236
|
+
"/v1/apps/{appId}/end-users/{userId}/role": {
|
|
237
|
+
parameters: {
|
|
238
|
+
query?: never;
|
|
239
|
+
header?: never;
|
|
240
|
+
path?: never;
|
|
241
|
+
cookie?: never;
|
|
242
|
+
};
|
|
243
|
+
get?: never;
|
|
244
|
+
put?: never;
|
|
245
|
+
post?: never;
|
|
246
|
+
delete?: never;
|
|
247
|
+
options?: never;
|
|
248
|
+
head?: never;
|
|
249
|
+
patch: operations["EndUserController_updateRole"];
|
|
250
|
+
trace?: never;
|
|
251
|
+
};
|
|
252
|
+
"/v1/apps/{appId}/end-users/{userId}/sessions/revoke-all": {
|
|
253
|
+
parameters: {
|
|
254
|
+
query?: never;
|
|
255
|
+
header?: never;
|
|
256
|
+
path?: never;
|
|
257
|
+
cookie?: never;
|
|
258
|
+
};
|
|
259
|
+
get?: never;
|
|
260
|
+
put?: never;
|
|
261
|
+
post: operations["EndUserController_revokeAllSessions"];
|
|
262
|
+
delete?: never;
|
|
263
|
+
options?: never;
|
|
264
|
+
head?: never;
|
|
265
|
+
patch?: never;
|
|
266
|
+
trace?: never;
|
|
267
|
+
};
|
|
268
|
+
"/v1/apps/{appId}/end-users/{userId}/status": {
|
|
269
|
+
parameters: {
|
|
270
|
+
query?: never;
|
|
271
|
+
header?: never;
|
|
272
|
+
path?: never;
|
|
273
|
+
cookie?: never;
|
|
274
|
+
};
|
|
275
|
+
get?: never;
|
|
276
|
+
put?: never;
|
|
277
|
+
post?: never;
|
|
278
|
+
delete?: never;
|
|
279
|
+
options?: never;
|
|
280
|
+
head?: never;
|
|
281
|
+
patch: operations["EndUserController_updateStatus"];
|
|
282
|
+
trace?: never;
|
|
283
|
+
};
|
|
284
|
+
"/v1/apps/{appId}/invites": {
|
|
285
|
+
parameters: {
|
|
286
|
+
query?: never;
|
|
287
|
+
header?: never;
|
|
288
|
+
path?: never;
|
|
289
|
+
cookie?: never;
|
|
290
|
+
};
|
|
291
|
+
/** List app invites */
|
|
292
|
+
get: operations["AppController_listInvites"];
|
|
293
|
+
put?: never;
|
|
294
|
+
/** Create an app invite */
|
|
295
|
+
post: operations["AppController_createInvite"];
|
|
296
|
+
delete?: never;
|
|
297
|
+
options?: never;
|
|
298
|
+
head?: never;
|
|
299
|
+
patch?: never;
|
|
300
|
+
trace?: never;
|
|
301
|
+
};
|
|
302
|
+
"/v1/apps/{appId}/invites/{inviteId}": {
|
|
303
|
+
parameters: {
|
|
304
|
+
query?: never;
|
|
305
|
+
header?: never;
|
|
306
|
+
path?: never;
|
|
307
|
+
cookie?: never;
|
|
308
|
+
};
|
|
309
|
+
get?: never;
|
|
310
|
+
put?: never;
|
|
311
|
+
post?: never;
|
|
312
|
+
/** Revoke an app invite */
|
|
313
|
+
delete: operations["AppController_revokeInvite"];
|
|
314
|
+
options?: never;
|
|
315
|
+
head?: never;
|
|
316
|
+
patch?: never;
|
|
317
|
+
trace?: never;
|
|
318
|
+
};
|
|
319
|
+
"/v1/apps/{appId}/members": {
|
|
320
|
+
parameters: {
|
|
321
|
+
query?: never;
|
|
322
|
+
header?: never;
|
|
323
|
+
path?: never;
|
|
324
|
+
cookie?: never;
|
|
325
|
+
};
|
|
326
|
+
/** List app members (PlatformUser view of EndUser memberships) */
|
|
327
|
+
get: operations["AppController_listMembers"];
|
|
328
|
+
put?: never;
|
|
329
|
+
post?: never;
|
|
330
|
+
delete?: never;
|
|
331
|
+
options?: never;
|
|
332
|
+
head?: never;
|
|
333
|
+
patch?: never;
|
|
334
|
+
trace?: never;
|
|
335
|
+
};
|
|
336
|
+
"/v1/apps/{appId}/members/{accountId}": {
|
|
337
|
+
parameters: {
|
|
338
|
+
query?: never;
|
|
339
|
+
header?: never;
|
|
340
|
+
path?: never;
|
|
341
|
+
cookie?: never;
|
|
342
|
+
};
|
|
343
|
+
get?: never;
|
|
344
|
+
put?: never;
|
|
345
|
+
post?: never;
|
|
346
|
+
/** Remove a member from the app */
|
|
347
|
+
delete: operations["AppController_removeMember"];
|
|
348
|
+
options?: never;
|
|
349
|
+
head?: never;
|
|
350
|
+
patch?: never;
|
|
351
|
+
trace?: never;
|
|
352
|
+
};
|
|
353
|
+
"/v1/apps/{appId}/permissions": {
|
|
354
|
+
parameters: {
|
|
355
|
+
query?: never;
|
|
356
|
+
header?: never;
|
|
357
|
+
path?: never;
|
|
358
|
+
cookie?: never;
|
|
359
|
+
};
|
|
360
|
+
/** List all permissions (system + custom) */
|
|
361
|
+
get: operations["PermissionController_listPermissions"];
|
|
362
|
+
put?: never;
|
|
363
|
+
/** Create a custom permission */
|
|
364
|
+
post: operations["PermissionController_createPermission"];
|
|
365
|
+
delete?: never;
|
|
366
|
+
options?: never;
|
|
367
|
+
head?: never;
|
|
368
|
+
patch?: never;
|
|
369
|
+
trace?: never;
|
|
370
|
+
};
|
|
371
|
+
"/v1/apps/{appId}/permissions/{permissionKey}": {
|
|
372
|
+
parameters: {
|
|
373
|
+
query?: never;
|
|
374
|
+
header?: never;
|
|
375
|
+
path?: never;
|
|
376
|
+
cookie?: never;
|
|
377
|
+
};
|
|
378
|
+
get?: never;
|
|
379
|
+
put?: never;
|
|
380
|
+
post?: never;
|
|
381
|
+
/** Delete a custom permission */
|
|
382
|
+
delete: operations["PermissionController_deletePermission"];
|
|
383
|
+
options?: never;
|
|
384
|
+
head?: never;
|
|
385
|
+
patch?: never;
|
|
386
|
+
trace?: never;
|
|
387
|
+
};
|
|
388
|
+
"/v1/apps/{appId}/roles": {
|
|
389
|
+
parameters: {
|
|
390
|
+
query?: never;
|
|
391
|
+
header?: never;
|
|
392
|
+
path?: never;
|
|
393
|
+
cookie?: never;
|
|
394
|
+
};
|
|
395
|
+
/** List all roles in an app */
|
|
396
|
+
get: operations["RoleController_listRoles"];
|
|
397
|
+
put?: never;
|
|
398
|
+
/** Create a new role */
|
|
399
|
+
post: operations["RoleController_createRole"];
|
|
400
|
+
delete?: never;
|
|
401
|
+
options?: never;
|
|
402
|
+
head?: never;
|
|
403
|
+
patch?: never;
|
|
404
|
+
trace?: never;
|
|
405
|
+
};
|
|
406
|
+
"/v1/apps/{appId}/roles/assign": {
|
|
407
|
+
parameters: {
|
|
408
|
+
query?: never;
|
|
409
|
+
header?: never;
|
|
410
|
+
path?: never;
|
|
411
|
+
cookie?: never;
|
|
412
|
+
};
|
|
413
|
+
get?: never;
|
|
414
|
+
put?: never;
|
|
415
|
+
/** Assign a role to a user */
|
|
416
|
+
post: operations["RoleController_assignRole"];
|
|
417
|
+
delete?: never;
|
|
418
|
+
options?: never;
|
|
419
|
+
head?: never;
|
|
420
|
+
patch?: never;
|
|
421
|
+
trace?: never;
|
|
422
|
+
};
|
|
423
|
+
"/v1/apps/{appId}/roles/permissions": {
|
|
424
|
+
parameters: {
|
|
425
|
+
query?: never;
|
|
426
|
+
header?: never;
|
|
427
|
+
path?: never;
|
|
428
|
+
cookie?: never;
|
|
429
|
+
};
|
|
430
|
+
/** List all available permissions */
|
|
431
|
+
get: operations["RoleController_listPermissions"];
|
|
432
|
+
put?: never;
|
|
433
|
+
post?: never;
|
|
434
|
+
delete?: never;
|
|
435
|
+
options?: never;
|
|
436
|
+
head?: never;
|
|
437
|
+
patch?: never;
|
|
438
|
+
trace?: never;
|
|
439
|
+
};
|
|
440
|
+
"/v1/apps/{appId}/roles/{roleName}": {
|
|
441
|
+
parameters: {
|
|
442
|
+
query?: never;
|
|
443
|
+
header?: never;
|
|
444
|
+
path?: never;
|
|
445
|
+
cookie?: never;
|
|
446
|
+
};
|
|
447
|
+
/** Get role details with permissions */
|
|
448
|
+
get: operations["RoleController_getRole"];
|
|
449
|
+
put?: never;
|
|
450
|
+
post?: never;
|
|
451
|
+
/** Delete a custom role */
|
|
452
|
+
delete: operations["RoleController_deleteRole"];
|
|
453
|
+
options?: never;
|
|
454
|
+
head?: never;
|
|
455
|
+
/** Update role name or description */
|
|
456
|
+
patch: operations["RoleController_updateRole"];
|
|
457
|
+
trace?: never;
|
|
458
|
+
};
|
|
459
|
+
"/v1/apps/{appId}/roles/{roleName}/permissions": {
|
|
460
|
+
parameters: {
|
|
461
|
+
query?: never;
|
|
462
|
+
header?: never;
|
|
463
|
+
path?: never;
|
|
464
|
+
cookie?: never;
|
|
465
|
+
};
|
|
466
|
+
get?: never;
|
|
467
|
+
/** Set permissions for a role */
|
|
468
|
+
put: operations["RoleController_setPermissions"];
|
|
469
|
+
post?: never;
|
|
470
|
+
delete?: never;
|
|
471
|
+
options?: never;
|
|
472
|
+
head?: never;
|
|
473
|
+
patch?: never;
|
|
474
|
+
trace?: never;
|
|
475
|
+
};
|
|
476
|
+
"/v1/apps/{appId}/status": {
|
|
477
|
+
parameters: {
|
|
478
|
+
query?: never;
|
|
479
|
+
header?: never;
|
|
480
|
+
path?: never;
|
|
481
|
+
cookie?: never;
|
|
482
|
+
};
|
|
483
|
+
get?: never;
|
|
484
|
+
put?: never;
|
|
485
|
+
post?: never;
|
|
486
|
+
delete?: never;
|
|
487
|
+
options?: never;
|
|
488
|
+
head?: never;
|
|
489
|
+
/** Update app status (active, suspended, archived) */
|
|
490
|
+
patch: operations["AppController_updateAppStatus"];
|
|
491
|
+
trace?: never;
|
|
492
|
+
};
|
|
493
|
+
"/v1/idp/exchange": {
|
|
494
|
+
parameters: {
|
|
495
|
+
query?: never;
|
|
496
|
+
header?: never;
|
|
497
|
+
path?: never;
|
|
498
|
+
cookie?: never;
|
|
499
|
+
};
|
|
500
|
+
get?: never;
|
|
501
|
+
put?: never;
|
|
502
|
+
post: operations["IdpController_exchange"];
|
|
503
|
+
delete?: never;
|
|
504
|
+
options?: never;
|
|
505
|
+
head?: never;
|
|
506
|
+
patch?: never;
|
|
507
|
+
trace?: never;
|
|
508
|
+
};
|
|
509
|
+
"/v1/idp/providers": {
|
|
510
|
+
parameters: {
|
|
511
|
+
query?: never;
|
|
512
|
+
header?: never;
|
|
513
|
+
path?: never;
|
|
514
|
+
cookie?: never;
|
|
515
|
+
};
|
|
516
|
+
get: operations["IdpController_list"];
|
|
517
|
+
put?: never;
|
|
518
|
+
post?: never;
|
|
519
|
+
delete?: never;
|
|
520
|
+
options?: never;
|
|
521
|
+
head?: never;
|
|
522
|
+
patch?: never;
|
|
523
|
+
trace?: never;
|
|
524
|
+
};
|
|
525
|
+
"/v1/idp/{provider}/redirect": {
|
|
526
|
+
parameters: {
|
|
527
|
+
query?: never;
|
|
528
|
+
header?: never;
|
|
529
|
+
path?: never;
|
|
530
|
+
cookie?: never;
|
|
531
|
+
};
|
|
532
|
+
get: operations["IdpController_redirect"];
|
|
533
|
+
put?: never;
|
|
534
|
+
post?: never;
|
|
535
|
+
delete?: never;
|
|
536
|
+
options?: never;
|
|
537
|
+
head?: never;
|
|
538
|
+
patch?: never;
|
|
539
|
+
trace?: never;
|
|
540
|
+
};
|
|
541
|
+
"/v1/idp/{provider}/start": {
|
|
542
|
+
parameters: {
|
|
543
|
+
query?: never;
|
|
544
|
+
header?: never;
|
|
545
|
+
path?: never;
|
|
546
|
+
cookie?: never;
|
|
547
|
+
};
|
|
548
|
+
get?: never;
|
|
549
|
+
put?: never;
|
|
550
|
+
post: operations["IdpController_start"];
|
|
551
|
+
delete?: never;
|
|
552
|
+
options?: never;
|
|
553
|
+
head?: never;
|
|
554
|
+
patch?: never;
|
|
555
|
+
trace?: never;
|
|
556
|
+
};
|
|
557
|
+
"/v1/idp/{provider}/verify-token": {
|
|
558
|
+
parameters: {
|
|
559
|
+
query?: never;
|
|
560
|
+
header?: never;
|
|
561
|
+
path?: never;
|
|
562
|
+
cookie?: never;
|
|
563
|
+
};
|
|
564
|
+
get?: never;
|
|
565
|
+
put?: never;
|
|
566
|
+
post: operations["IdpController_verifyIdToken"];
|
|
567
|
+
delete?: never;
|
|
568
|
+
options?: never;
|
|
569
|
+
head?: never;
|
|
570
|
+
patch?: never;
|
|
571
|
+
trace?: never;
|
|
572
|
+
};
|
|
573
|
+
"/v1/stats/me": {
|
|
574
|
+
parameters: {
|
|
575
|
+
query?: never;
|
|
576
|
+
header?: never;
|
|
577
|
+
path?: never;
|
|
578
|
+
cookie?: never;
|
|
579
|
+
};
|
|
580
|
+
/**
|
|
581
|
+
* Aggregate counts for the signed-in PlatformUser
|
|
582
|
+
* @description Returns total apps the caller belongs to, end-users across those apps, and active API keys across those apps. Single round-trip; cheap. Powers the workspace Dashboard hero stats.
|
|
583
|
+
*/
|
|
584
|
+
get: operations["StatsController_getMyStats"];
|
|
585
|
+
put?: never;
|
|
586
|
+
post?: never;
|
|
587
|
+
delete?: never;
|
|
588
|
+
options?: never;
|
|
589
|
+
head?: never;
|
|
590
|
+
patch?: never;
|
|
591
|
+
trace?: never;
|
|
592
|
+
};
|
|
593
|
+
"/{appSlug}/v1/.well-known/jwks.json": {
|
|
594
|
+
parameters: {
|
|
595
|
+
query?: never;
|
|
596
|
+
header?: never;
|
|
597
|
+
path?: never;
|
|
598
|
+
cookie?: never;
|
|
599
|
+
};
|
|
600
|
+
get: operations["ConsumerJwksController_getJwks"];
|
|
601
|
+
put?: never;
|
|
602
|
+
post?: never;
|
|
603
|
+
delete?: never;
|
|
604
|
+
options?: never;
|
|
605
|
+
head?: never;
|
|
606
|
+
patch?: never;
|
|
607
|
+
trace?: never;
|
|
608
|
+
};
|
|
609
|
+
"/{appSlug}/v1/auth/logout": {
|
|
610
|
+
parameters: {
|
|
611
|
+
query?: never;
|
|
612
|
+
header?: never;
|
|
613
|
+
path?: never;
|
|
614
|
+
cookie?: never;
|
|
615
|
+
};
|
|
616
|
+
get?: never;
|
|
617
|
+
put?: never;
|
|
618
|
+
/**
|
|
619
|
+
* Revoke a refresh token
|
|
620
|
+
* @description Destroys the session that owns the refresh token. The matching access token continues to verify until its TTL expires.
|
|
621
|
+
*/
|
|
622
|
+
post: operations["ConsumerAuthController_logout"];
|
|
623
|
+
delete?: never;
|
|
624
|
+
options?: never;
|
|
625
|
+
head?: never;
|
|
626
|
+
patch?: never;
|
|
627
|
+
trace?: never;
|
|
628
|
+
};
|
|
629
|
+
"/{appSlug}/v1/auth/refresh": {
|
|
630
|
+
parameters: {
|
|
631
|
+
query?: never;
|
|
632
|
+
header?: never;
|
|
633
|
+
path?: never;
|
|
634
|
+
cookie?: never;
|
|
635
|
+
};
|
|
636
|
+
get?: never;
|
|
637
|
+
put?: never;
|
|
638
|
+
/**
|
|
639
|
+
* Exchange a refresh token for a new access token
|
|
640
|
+
* @description Rotates the refresh token on every call — the previous refresh token is revoked, and re-using it triggers session revocation.
|
|
641
|
+
*/
|
|
642
|
+
post: operations["ConsumerAuthController_refresh"];
|
|
643
|
+
delete?: never;
|
|
644
|
+
options?: never;
|
|
645
|
+
head?: never;
|
|
646
|
+
patch?: never;
|
|
647
|
+
trace?: never;
|
|
648
|
+
};
|
|
649
|
+
"/{appSlug}/v1/auth/request-reset": {
|
|
650
|
+
parameters: {
|
|
651
|
+
query?: never;
|
|
652
|
+
header?: never;
|
|
653
|
+
path?: never;
|
|
654
|
+
cookie?: never;
|
|
655
|
+
};
|
|
656
|
+
get?: never;
|
|
657
|
+
put?: never;
|
|
658
|
+
/**
|
|
659
|
+
* Request a password-reset code
|
|
660
|
+
* @description Always returns 201 to prevent account enumeration. If the email matches an EndUser, a 6-character reset code is sent.
|
|
661
|
+
*/
|
|
662
|
+
post: operations["ConsumerAuthController_requestReset"];
|
|
663
|
+
delete?: never;
|
|
664
|
+
options?: never;
|
|
665
|
+
head?: never;
|
|
666
|
+
patch?: never;
|
|
667
|
+
trace?: never;
|
|
668
|
+
};
|
|
669
|
+
"/{appSlug}/v1/auth/reset-password": {
|
|
670
|
+
parameters: {
|
|
671
|
+
query?: never;
|
|
672
|
+
header?: never;
|
|
673
|
+
path?: never;
|
|
674
|
+
cookie?: never;
|
|
675
|
+
};
|
|
676
|
+
get?: never;
|
|
677
|
+
put?: never;
|
|
678
|
+
/**
|
|
679
|
+
* Submit a reset code + new password
|
|
680
|
+
* @description Consumes the reset code (single-use). On success the password is updated and the user can sign in immediately.
|
|
681
|
+
*/
|
|
682
|
+
post: operations["ConsumerAuthController_resetPassword"];
|
|
683
|
+
delete?: never;
|
|
684
|
+
options?: never;
|
|
685
|
+
head?: never;
|
|
686
|
+
patch?: never;
|
|
687
|
+
trace?: never;
|
|
688
|
+
};
|
|
689
|
+
"/{appSlug}/v1/auth/signin": {
|
|
690
|
+
parameters: {
|
|
691
|
+
query?: never;
|
|
692
|
+
header?: never;
|
|
693
|
+
path?: never;
|
|
694
|
+
cookie?: never;
|
|
695
|
+
};
|
|
696
|
+
get?: never;
|
|
697
|
+
put?: never;
|
|
698
|
+
/**
|
|
699
|
+
* Sign in an EndUser
|
|
700
|
+
* @description Authenticate with username-or-email + password. Returns a fresh access + refresh token pair on success.
|
|
701
|
+
*/
|
|
702
|
+
post: operations["ConsumerAuthController_signin"];
|
|
703
|
+
delete?: never;
|
|
704
|
+
options?: never;
|
|
705
|
+
head?: never;
|
|
706
|
+
patch?: never;
|
|
707
|
+
trace?: never;
|
|
708
|
+
};
|
|
709
|
+
"/{appSlug}/v1/auth/signup": {
|
|
710
|
+
parameters: {
|
|
711
|
+
query?: never;
|
|
712
|
+
header?: never;
|
|
713
|
+
path?: never;
|
|
714
|
+
cookie?: never;
|
|
715
|
+
};
|
|
716
|
+
get?: never;
|
|
717
|
+
put?: never;
|
|
718
|
+
/**
|
|
719
|
+
* Sign up an EndUser
|
|
720
|
+
* @description Create an EndUser account inside the app and immediately mint a session. Subject to the app-configured signup policy (signup enabled, password policy, default role). When the app sets `signup_requires_pak: true`, the request must carry an `Authorization: Bearer <pcft_live_*>` PAK with the `heimdall.signup.create` permission — public unauthenticated signup is rejected with 401.
|
|
721
|
+
*/
|
|
722
|
+
post: operations["ConsumerAuthController_signup"];
|
|
723
|
+
delete?: never;
|
|
724
|
+
options?: never;
|
|
725
|
+
head?: never;
|
|
726
|
+
patch?: never;
|
|
727
|
+
trace?: never;
|
|
728
|
+
};
|
|
729
|
+
"/{appSlug}/v1/authorize": {
|
|
730
|
+
parameters: {
|
|
731
|
+
query?: never;
|
|
732
|
+
header?: never;
|
|
733
|
+
path?: never;
|
|
734
|
+
cookie?: never;
|
|
735
|
+
};
|
|
736
|
+
get?: never;
|
|
737
|
+
put?: never;
|
|
738
|
+
/**
|
|
739
|
+
* Verify a token + check one or more permissions
|
|
740
|
+
* @description Returns `{ authorized: boolean }`. Pass `permission` (string) for a single check, or `permissions` (array) when ALL must be held.
|
|
741
|
+
*/
|
|
742
|
+
post: operations["ConsumerVerifyController_authorize"];
|
|
743
|
+
delete?: never;
|
|
744
|
+
options?: never;
|
|
745
|
+
head?: never;
|
|
746
|
+
patch?: never;
|
|
747
|
+
trace?: never;
|
|
748
|
+
};
|
|
749
|
+
"/{appSlug}/v1/authorize/batch": {
|
|
750
|
+
parameters: {
|
|
751
|
+
query?: never;
|
|
752
|
+
header?: never;
|
|
753
|
+
path?: never;
|
|
754
|
+
cookie?: never;
|
|
755
|
+
};
|
|
756
|
+
get?: never;
|
|
757
|
+
put?: never;
|
|
758
|
+
/**
|
|
759
|
+
* Multi-permission authorization in a single round-trip
|
|
760
|
+
* @description Runs N permission checks against the same token in one call. Each result reports the missing permissions (if any). Useful when a UI needs to flag many actions at once.
|
|
761
|
+
*/
|
|
762
|
+
post: operations["ConsumerVerifyController_authorizeBatch"];
|
|
763
|
+
delete?: never;
|
|
764
|
+
options?: never;
|
|
765
|
+
head?: never;
|
|
766
|
+
patch?: never;
|
|
767
|
+
trace?: never;
|
|
768
|
+
};
|
|
769
|
+
"/{appSlug}/v1/me": {
|
|
770
|
+
parameters: {
|
|
771
|
+
query?: never;
|
|
772
|
+
header?: never;
|
|
773
|
+
path?: never;
|
|
774
|
+
cookie?: never;
|
|
775
|
+
};
|
|
776
|
+
/**
|
|
777
|
+
* Get the signed-in EndUser profile
|
|
778
|
+
* @description Returns the EndUser identity, app membership, and effective permissions for the bearer token.
|
|
779
|
+
*/
|
|
780
|
+
get: operations["ConsumerMeController_getProfile"];
|
|
781
|
+
put?: never;
|
|
782
|
+
post?: never;
|
|
783
|
+
/**
|
|
784
|
+
* Permanently delete the signed-in EndUser account
|
|
785
|
+
* @description Removes the EndUser, all sessions, and all related records inside this app. Cannot be undone.
|
|
786
|
+
*/
|
|
787
|
+
delete: operations["ConsumerMeController_deleteAccount"];
|
|
788
|
+
options?: never;
|
|
789
|
+
head?: never;
|
|
790
|
+
/**
|
|
791
|
+
* Update the signed-in EndUser profile
|
|
792
|
+
* @description Currently only the display name can be changed.
|
|
793
|
+
*/
|
|
794
|
+
patch: operations["ConsumerMeController_updateProfile"];
|
|
795
|
+
trace?: never;
|
|
796
|
+
};
|
|
797
|
+
"/{appSlug}/v1/me/activity": {
|
|
798
|
+
parameters: {
|
|
799
|
+
query?: never;
|
|
800
|
+
header?: never;
|
|
801
|
+
path?: never;
|
|
802
|
+
cookie?: never;
|
|
803
|
+
};
|
|
804
|
+
/**
|
|
805
|
+
* Recent account activity
|
|
806
|
+
* @description Login events, password changes, and other security-relevant records, scoped to this EndUser.
|
|
807
|
+
*/
|
|
808
|
+
get: operations["ConsumerMeController_getActivity"];
|
|
809
|
+
put?: never;
|
|
810
|
+
post?: never;
|
|
811
|
+
delete?: never;
|
|
812
|
+
options?: never;
|
|
813
|
+
head?: never;
|
|
814
|
+
patch?: never;
|
|
815
|
+
trace?: never;
|
|
816
|
+
};
|
|
817
|
+
"/{appSlug}/v1/me/sessions": {
|
|
818
|
+
parameters: {
|
|
819
|
+
query?: never;
|
|
820
|
+
header?: never;
|
|
821
|
+
path?: never;
|
|
822
|
+
cookie?: never;
|
|
823
|
+
};
|
|
824
|
+
/**
|
|
825
|
+
* List all active sessions for the EndUser
|
|
826
|
+
* @description Each session includes a `current` flag identifying the one belonging to the bearer token used for this request.
|
|
827
|
+
*/
|
|
828
|
+
get: operations["ConsumerMeController_listSessions"];
|
|
829
|
+
put?: never;
|
|
830
|
+
post?: never;
|
|
831
|
+
delete?: never;
|
|
832
|
+
options?: never;
|
|
833
|
+
head?: never;
|
|
834
|
+
patch?: never;
|
|
835
|
+
trace?: never;
|
|
836
|
+
};
|
|
837
|
+
"/{appSlug}/v1/me/sessions/{id}": {
|
|
838
|
+
parameters: {
|
|
839
|
+
query?: never;
|
|
840
|
+
header?: never;
|
|
841
|
+
path?: never;
|
|
842
|
+
cookie?: never;
|
|
843
|
+
};
|
|
844
|
+
get?: never;
|
|
845
|
+
put?: never;
|
|
846
|
+
post?: never;
|
|
847
|
+
/**
|
|
848
|
+
* Revoke a session
|
|
849
|
+
* @description Sign the EndUser out of one device. The session’s refresh token is destroyed; its access token expires on its TTL.
|
|
850
|
+
*/
|
|
851
|
+
delete: operations["ConsumerMeController_revokeSession"];
|
|
852
|
+
options?: never;
|
|
853
|
+
head?: never;
|
|
854
|
+
patch?: never;
|
|
855
|
+
trace?: never;
|
|
856
|
+
};
|
|
857
|
+
"/{appSlug}/v1/oauth/token": {
|
|
858
|
+
parameters: {
|
|
859
|
+
query?: never;
|
|
860
|
+
header?: never;
|
|
861
|
+
path?: never;
|
|
862
|
+
cookie?: never;
|
|
863
|
+
};
|
|
864
|
+
get?: never;
|
|
865
|
+
put?: never;
|
|
866
|
+
/**
|
|
867
|
+
* Exchange client_credentials for an access token
|
|
868
|
+
* @description Standard OAuth 2.0 client_credentials grant. Returns an app-scoped access token whose `permissions` claim is the union of the client's configured scopes. Use for service-to-service calls.
|
|
869
|
+
*/
|
|
870
|
+
post: operations["ConsumerOAuthController_clientCredentials"];
|
|
871
|
+
delete?: never;
|
|
872
|
+
options?: never;
|
|
873
|
+
head?: never;
|
|
874
|
+
patch?: never;
|
|
875
|
+
trace?: never;
|
|
876
|
+
};
|
|
877
|
+
"/{appSlug}/v1/verify": {
|
|
878
|
+
parameters: {
|
|
879
|
+
query?: never;
|
|
880
|
+
header?: never;
|
|
881
|
+
path?: never;
|
|
882
|
+
cookie?: never;
|
|
883
|
+
};
|
|
884
|
+
get?: never;
|
|
885
|
+
put?: never;
|
|
886
|
+
/**
|
|
887
|
+
* Verify a token signature + return its principal
|
|
888
|
+
* @description Validates the JWT against the app's JWKS keys and returns `{ valid, principal }`. Use this when you need the full claims; use `/authorize` for a yes/no permission check.
|
|
889
|
+
*/
|
|
890
|
+
post: operations["ConsumerVerifyController_verify"];
|
|
891
|
+
delete?: never;
|
|
892
|
+
options?: never;
|
|
893
|
+
head?: never;
|
|
894
|
+
patch?: never;
|
|
895
|
+
trace?: never;
|
|
896
|
+
};
|
|
897
|
+
}
|
|
898
|
+
interface components {
|
|
899
|
+
schemas: {
|
|
900
|
+
AcceptInviteDto: {
|
|
901
|
+
/**
|
|
902
|
+
* @description Invite code from the invite email / link.
|
|
903
|
+
* @example inv_x7H2k…
|
|
904
|
+
*/
|
|
905
|
+
code: string;
|
|
906
|
+
};
|
|
907
|
+
AssignRoleDto: {
|
|
908
|
+
/** @description Account ID of the user */
|
|
909
|
+
accountId: string;
|
|
910
|
+
/**
|
|
911
|
+
* @description Role name to assign
|
|
912
|
+
* @example admin
|
|
913
|
+
*/
|
|
914
|
+
role: string;
|
|
915
|
+
};
|
|
916
|
+
AuthorizeBatchBody: {
|
|
917
|
+
/** @description List of checks. Each returns { authorized, missing_permissions }. */
|
|
918
|
+
checks: components["schemas"]["AuthorizeBatchEntry"][];
|
|
919
|
+
/** @description JWT to verify and authorize against each check. */
|
|
920
|
+
token: string;
|
|
921
|
+
};
|
|
922
|
+
AuthorizeBatchEntry: {
|
|
923
|
+
/** @description Permissions for this check; ALL must be held. */
|
|
924
|
+
permissions: string[];
|
|
925
|
+
};
|
|
926
|
+
AuthorizeBody: {
|
|
927
|
+
/** @description Single permission to check, e.g. 'user.read'. Use this OR `permissions`. */
|
|
928
|
+
permission?: string;
|
|
929
|
+
/** @description Multiple permissions; the token must hold ALL of them. */
|
|
930
|
+
permissions?: string[];
|
|
931
|
+
/** @description JWT to verify and authorize. */
|
|
932
|
+
token: string;
|
|
933
|
+
};
|
|
934
|
+
ClientCredentialsDto: {
|
|
935
|
+
/**
|
|
936
|
+
* @description M2M client identifier (m2m_*).
|
|
937
|
+
* @example m2m_a1b2c3d4e5f6...
|
|
938
|
+
*/
|
|
939
|
+
client_id: string;
|
|
940
|
+
/** @description M2M client secret (issued at client creation, never returned again). */
|
|
941
|
+
client_secret: string;
|
|
942
|
+
/**
|
|
943
|
+
* @description OAuth grant type. Only 'client_credentials' is supported.
|
|
944
|
+
* @example client_credentials
|
|
945
|
+
*/
|
|
946
|
+
grant_type: string;
|
|
947
|
+
};
|
|
948
|
+
ConsumerLogoutDto: {
|
|
949
|
+
/** @description Refresh token to revoke. The matching session is destroyed; the access token continues to verify until its TTL expires. */
|
|
950
|
+
refresh_token: string;
|
|
951
|
+
};
|
|
952
|
+
ConsumerRefreshDto: {
|
|
953
|
+
/** @description Refresh token returned from signin/signup/previous refresh. Each refresh rotates the token; the previous one is revoked. */
|
|
954
|
+
refresh_token: string;
|
|
955
|
+
};
|
|
956
|
+
ConsumerRequestResetDto: {
|
|
957
|
+
/**
|
|
958
|
+
* @description EndUser's email address. Always returns 201 (no enumeration); if the address exists, a reset code is emailed.
|
|
959
|
+
* @example jane@example.com
|
|
960
|
+
*/
|
|
961
|
+
email: string;
|
|
962
|
+
};
|
|
963
|
+
ConsumerResetPasswordDto: {
|
|
964
|
+
/** @description New password. Must satisfy the app-configured policy. */
|
|
965
|
+
newPassword: string;
|
|
966
|
+
/**
|
|
967
|
+
* @description The 6-character code from the password-reset email.
|
|
968
|
+
* @example A1B2C3
|
|
969
|
+
*/
|
|
970
|
+
token: string;
|
|
971
|
+
};
|
|
972
|
+
ConsumerSigninDto: {
|
|
973
|
+
/**
|
|
974
|
+
* @description Username or email — either accepted.
|
|
975
|
+
* @example jane_doe
|
|
976
|
+
*/
|
|
977
|
+
identifier: string;
|
|
978
|
+
/** @description EndUser password. */
|
|
979
|
+
password: string;
|
|
980
|
+
};
|
|
981
|
+
ConsumerSignupDto: {
|
|
982
|
+
/**
|
|
983
|
+
* @description Optional display name shown back to the user.
|
|
984
|
+
* @example Jane Doe
|
|
985
|
+
*/
|
|
986
|
+
displayName?: string;
|
|
987
|
+
/**
|
|
988
|
+
* @description EndUser email address. Used for verification + reset.
|
|
989
|
+
* @example jane@example.com
|
|
990
|
+
*/
|
|
991
|
+
email: string;
|
|
992
|
+
/**
|
|
993
|
+
* @description Password. Must satisfy the app-configured policy (default: 8+ chars).
|
|
994
|
+
* @example CorrectHorseBatteryStaple
|
|
995
|
+
*/
|
|
996
|
+
password: string;
|
|
997
|
+
/**
|
|
998
|
+
* @description Unique username inside the app. 3+ chars.
|
|
999
|
+
* @example jane_doe
|
|
1000
|
+
*/
|
|
1001
|
+
username: string;
|
|
1002
|
+
};
|
|
1003
|
+
ConsumerTokenResponseDto: {
|
|
1004
|
+
/** @description Short-lived JWT signed with the app-scoped JWKS key. Carries sub, role, permissions[], type=end_user. */
|
|
1005
|
+
access_token: string;
|
|
1006
|
+
/**
|
|
1007
|
+
* @description Access-token lifetime in seconds.
|
|
1008
|
+
* @example 3600
|
|
1009
|
+
*/
|
|
1010
|
+
expires_in: number;
|
|
1011
|
+
/** @description Long-lived opaque-ish JWT used to mint a new access token via /auth/refresh. Rotated on use. */
|
|
1012
|
+
refresh_token: string;
|
|
1013
|
+
/** @example Bearer */
|
|
1014
|
+
token_type: string;
|
|
1015
|
+
};
|
|
1016
|
+
CreateApiKeyDto: {
|
|
1017
|
+
/**
|
|
1018
|
+
* @description Human-readable label for this key (shown in the API keys list).
|
|
1019
|
+
* @example CI deploy bot
|
|
1020
|
+
*/
|
|
1021
|
+
name: string;
|
|
1022
|
+
/**
|
|
1023
|
+
* @description Permission scope for the key. Each entry must match `resource.action` (lowercase + underscores).
|
|
1024
|
+
* @example [
|
|
1025
|
+
* "user.read",
|
|
1026
|
+
* "user.list"
|
|
1027
|
+
* ]
|
|
1028
|
+
*/
|
|
1029
|
+
permissions: string[];
|
|
1030
|
+
};
|
|
1031
|
+
CreateAppDto: {
|
|
1032
|
+
/**
|
|
1033
|
+
* @description Display name shown in the console.
|
|
1034
|
+
* @example Acme
|
|
1035
|
+
*/
|
|
1036
|
+
displayName: string;
|
|
1037
|
+
/**
|
|
1038
|
+
* @description URL-friendly app slug (lowercase letters, digits, hyphens).
|
|
1039
|
+
* @example acme-app
|
|
1040
|
+
*/
|
|
1041
|
+
slug: string;
|
|
1042
|
+
};
|
|
1043
|
+
CreateInviteDto: {
|
|
1044
|
+
/**
|
|
1045
|
+
* @description Optional invitee email. If set, the invite is locked to that address.
|
|
1046
|
+
* @example alice@example.com
|
|
1047
|
+
*/
|
|
1048
|
+
email?: string;
|
|
1049
|
+
/**
|
|
1050
|
+
* @description Hours until the invite expires. Defaults to 168 (7 days).
|
|
1051
|
+
* @example 168
|
|
1052
|
+
*/
|
|
1053
|
+
expiresInHours?: number;
|
|
1054
|
+
/**
|
|
1055
|
+
* @description Maximum number of times this invite can be accepted. Defaults to 1.
|
|
1056
|
+
* @example 1
|
|
1057
|
+
*/
|
|
1058
|
+
maxUses?: number;
|
|
1059
|
+
/**
|
|
1060
|
+
* @description Role slug to grant on accept (e.g. `admin`, `member`).
|
|
1061
|
+
* @example member
|
|
1062
|
+
*/
|
|
1063
|
+
role: string;
|
|
1064
|
+
};
|
|
1065
|
+
CreateM2mClientDto: {
|
|
1066
|
+
/**
|
|
1067
|
+
* @description Client display name
|
|
1068
|
+
* @example CI Pipeline
|
|
1069
|
+
*/
|
|
1070
|
+
name: string;
|
|
1071
|
+
};
|
|
1072
|
+
CreatePermissionDto: {
|
|
1073
|
+
/**
|
|
1074
|
+
* @description Action name
|
|
1075
|
+
* @example read
|
|
1076
|
+
*/
|
|
1077
|
+
action: string;
|
|
1078
|
+
/** @example View projects */
|
|
1079
|
+
description?: string;
|
|
1080
|
+
/**
|
|
1081
|
+
* @description Resource name
|
|
1082
|
+
* @example project
|
|
1083
|
+
*/
|
|
1084
|
+
resource: string;
|
|
1085
|
+
};
|
|
1086
|
+
CreateRoleDto: {
|
|
1087
|
+
/** @example Can edit content */
|
|
1088
|
+
description?: string;
|
|
1089
|
+
/** @example editor */
|
|
1090
|
+
name: string;
|
|
1091
|
+
};
|
|
1092
|
+
ExchangeDto: {
|
|
1093
|
+
/** @description Optional device fingerprint stored on the resulting session (UA, IP class, etc.). */
|
|
1094
|
+
deviceInfo?: Record<string, never>;
|
|
1095
|
+
/**
|
|
1096
|
+
* @description The opaque grant returned from the IdP callback.
|
|
1097
|
+
* @example g_8z…
|
|
1098
|
+
*/
|
|
1099
|
+
grant: string;
|
|
1100
|
+
};
|
|
1101
|
+
IdTokenVerifyDto: {
|
|
1102
|
+
/** @description Optional device fingerprint stored on the resulting session. */
|
|
1103
|
+
deviceInfo?: Record<string, never>;
|
|
1104
|
+
/**
|
|
1105
|
+
* @description OIDC ID token from the IdP.
|
|
1106
|
+
* @example eyJhbGciOi…
|
|
1107
|
+
*/
|
|
1108
|
+
idToken: string;
|
|
1109
|
+
/**
|
|
1110
|
+
* @description `login` to sign in (or sign up if new), `link` to attach the IdP identity to an already-signed-in account.
|
|
1111
|
+
* @example login
|
|
1112
|
+
* @enum {string}
|
|
1113
|
+
*/
|
|
1114
|
+
mode: "login" | "link";
|
|
1115
|
+
};
|
|
1116
|
+
SetPermissionsDto: {
|
|
1117
|
+
/**
|
|
1118
|
+
* @description Array of permission strings in resource.action format
|
|
1119
|
+
* @example [
|
|
1120
|
+
* "user.read",
|
|
1121
|
+
* "role.create"
|
|
1122
|
+
* ]
|
|
1123
|
+
*/
|
|
1124
|
+
permissions: string[];
|
|
1125
|
+
};
|
|
1126
|
+
SetScopesDto: {
|
|
1127
|
+
/**
|
|
1128
|
+
* @description Permission strings in resource.action format to assign as scopes
|
|
1129
|
+
* @example [
|
|
1130
|
+
* "user.read",
|
|
1131
|
+
* "app.read"
|
|
1132
|
+
* ]
|
|
1133
|
+
*/
|
|
1134
|
+
permissions: string[];
|
|
1135
|
+
};
|
|
1136
|
+
StartDto: {
|
|
1137
|
+
/**
|
|
1138
|
+
* @description `login` to sign in (or sign up if new), `link` to attach the IdP identity to an already-signed-in account.
|
|
1139
|
+
* @example login
|
|
1140
|
+
* @enum {string}
|
|
1141
|
+
*/
|
|
1142
|
+
mode: "login" | "link";
|
|
1143
|
+
/** @description PKCE code challenge (S256). Required for public clients; optional for confidential clients. */
|
|
1144
|
+
pkceChallenge?: string;
|
|
1145
|
+
/**
|
|
1146
|
+
* @description URL the IdP should redirect back to after the user authenticates. Must be a localhost URL or a productcraft.co subdomain.
|
|
1147
|
+
* @example https://app.productcraft.co/oauth/callback
|
|
1148
|
+
*/
|
|
1149
|
+
redirectUri: string;
|
|
1150
|
+
};
|
|
1151
|
+
UpdateAppDto: {
|
|
1152
|
+
/**
|
|
1153
|
+
* @description New display name
|
|
1154
|
+
* @example Acme Corp
|
|
1155
|
+
*/
|
|
1156
|
+
displayName?: string;
|
|
1157
|
+
/**
|
|
1158
|
+
* @description Arbitrary metadata attached to the app
|
|
1159
|
+
* @example {
|
|
1160
|
+
* "plan": "pro",
|
|
1161
|
+
* "region": "us-east-1"
|
|
1162
|
+
* }
|
|
1163
|
+
*/
|
|
1164
|
+
metadata?: Record<string, never>;
|
|
1165
|
+
};
|
|
1166
|
+
UpdateAppStatusDto: {
|
|
1167
|
+
/**
|
|
1168
|
+
* @description New app status
|
|
1169
|
+
* @example suspended
|
|
1170
|
+
* @enum {string}
|
|
1171
|
+
*/
|
|
1172
|
+
status: "active" | "suspended" | "archived";
|
|
1173
|
+
};
|
|
1174
|
+
UpdateAuthConfigDto: {
|
|
1175
|
+
/**
|
|
1176
|
+
* @description Failed-login attempts before the EndUser account is locked.
|
|
1177
|
+
* @example 5
|
|
1178
|
+
*/
|
|
1179
|
+
maxFailedLoginAttempts?: number;
|
|
1180
|
+
/**
|
|
1181
|
+
* @description Maximum concurrent sessions per EndUser. Oldest is evicted on overflow.
|
|
1182
|
+
* @example 5
|
|
1183
|
+
*/
|
|
1184
|
+
maxSessions?: number;
|
|
1185
|
+
/**
|
|
1186
|
+
* @description Minimum password length (NIST minimum is 8).
|
|
1187
|
+
* @example 12
|
|
1188
|
+
*/
|
|
1189
|
+
passwordMinLength?: number;
|
|
1190
|
+
/** @description Require a digit in passwords. */
|
|
1191
|
+
passwordRequireNumber?: boolean;
|
|
1192
|
+
/** @description Require a symbol in passwords. */
|
|
1193
|
+
passwordRequireSymbol?: boolean;
|
|
1194
|
+
/** @description Require an uppercase letter in passwords. */
|
|
1195
|
+
passwordRequireUppercase?: boolean;
|
|
1196
|
+
/**
|
|
1197
|
+
* @description Session lifetime in minutes (1 minute to 30 days).
|
|
1198
|
+
* @example 10080
|
|
1199
|
+
*/
|
|
1200
|
+
sessionDurationMinutes?: number;
|
|
1201
|
+
/** @description Whether existing EndUsers can sign in. */
|
|
1202
|
+
signinEnabled?: boolean;
|
|
1203
|
+
/**
|
|
1204
|
+
* @description Optional allowlist of email domains for signup. Empty array = any domain.
|
|
1205
|
+
* @example [
|
|
1206
|
+
* "acme.com",
|
|
1207
|
+
* "acme.io"
|
|
1208
|
+
* ]
|
|
1209
|
+
*/
|
|
1210
|
+
signupAllowedEmailDomains?: string[];
|
|
1211
|
+
/**
|
|
1212
|
+
* @description Role slug newly-signed-up EndUsers receive (e.g. `member`).
|
|
1213
|
+
* @example member
|
|
1214
|
+
*/
|
|
1215
|
+
signupDefaultRole?: string;
|
|
1216
|
+
/** @description Whether new EndUsers can sign up. */
|
|
1217
|
+
signupEnabled?: boolean;
|
|
1218
|
+
};
|
|
1219
|
+
UpdateEndUserDto: {
|
|
1220
|
+
/** @description New display name */
|
|
1221
|
+
displayName?: string;
|
|
1222
|
+
/** @description New primary email */
|
|
1223
|
+
email?: string;
|
|
1224
|
+
};
|
|
1225
|
+
UpdateEndUserRoleDto: {
|
|
1226
|
+
/**
|
|
1227
|
+
* @description Name of the role to assign
|
|
1228
|
+
* @example admin
|
|
1229
|
+
*/
|
|
1230
|
+
roleName: string;
|
|
1231
|
+
};
|
|
1232
|
+
UpdateEndUserStatusDto: {
|
|
1233
|
+
/**
|
|
1234
|
+
* @description New end-user status
|
|
1235
|
+
* @example suspended
|
|
1236
|
+
* @enum {string}
|
|
1237
|
+
*/
|
|
1238
|
+
status: "active" | "suspended" | "deactivated";
|
|
1239
|
+
};
|
|
1240
|
+
UpdateM2mClientDto: {
|
|
1241
|
+
/** @description Set active or inactive */
|
|
1242
|
+
isActive?: boolean;
|
|
1243
|
+
};
|
|
1244
|
+
UpdateMeDto: {
|
|
1245
|
+
/**
|
|
1246
|
+
* @description New display name. Pass an empty string to clear it; omit to leave unchanged.
|
|
1247
|
+
* @example Ada Lovelace
|
|
1248
|
+
*/
|
|
1249
|
+
displayName?: string;
|
|
1250
|
+
};
|
|
1251
|
+
UpdateRoleDto: {
|
|
1252
|
+
/** @example Updated description */
|
|
1253
|
+
description?: string;
|
|
1254
|
+
};
|
|
1255
|
+
VerifyBody: {
|
|
1256
|
+
/** @description EndUser or M2M JWT to verify against the app JWKS. */
|
|
1257
|
+
token: string;
|
|
1258
|
+
};
|
|
1259
|
+
};
|
|
1260
|
+
responses: never;
|
|
1261
|
+
parameters: never;
|
|
1262
|
+
requestBodies: never;
|
|
1263
|
+
headers: never;
|
|
1264
|
+
pathItems: never;
|
|
1265
|
+
}
|
|
1266
|
+
interface operations {
|
|
1267
|
+
AppController_listMyApps: {
|
|
1268
|
+
parameters: {
|
|
1269
|
+
query: {
|
|
1270
|
+
limit: string;
|
|
1271
|
+
cursor: string;
|
|
1272
|
+
};
|
|
1273
|
+
header?: never;
|
|
1274
|
+
path?: never;
|
|
1275
|
+
cookie?: never;
|
|
1276
|
+
};
|
|
1277
|
+
requestBody?: never;
|
|
1278
|
+
responses: {
|
|
1279
|
+
200: {
|
|
1280
|
+
headers: {
|
|
1281
|
+
[name: string]: unknown;
|
|
1282
|
+
};
|
|
1283
|
+
content?: never;
|
|
1284
|
+
};
|
|
1285
|
+
};
|
|
1286
|
+
};
|
|
1287
|
+
AppController_createApp: {
|
|
1288
|
+
parameters: {
|
|
1289
|
+
query?: never;
|
|
1290
|
+
header?: never;
|
|
1291
|
+
path?: never;
|
|
1292
|
+
cookie?: never;
|
|
1293
|
+
};
|
|
1294
|
+
requestBody: {
|
|
1295
|
+
content: {
|
|
1296
|
+
"application/json": components["schemas"]["CreateAppDto"];
|
|
1297
|
+
};
|
|
1298
|
+
};
|
|
1299
|
+
responses: {
|
|
1300
|
+
/** @description App created. */
|
|
1301
|
+
201: {
|
|
1302
|
+
headers: {
|
|
1303
|
+
[name: string]: unknown;
|
|
1304
|
+
};
|
|
1305
|
+
content?: never;
|
|
1306
|
+
};
|
|
1307
|
+
/** @description Validation failure (slug or display name). */
|
|
1308
|
+
400: {
|
|
1309
|
+
headers: {
|
|
1310
|
+
[name: string]: unknown;
|
|
1311
|
+
};
|
|
1312
|
+
content?: never;
|
|
1313
|
+
};
|
|
1314
|
+
/** @description Caller email not verified. */
|
|
1315
|
+
403: {
|
|
1316
|
+
headers: {
|
|
1317
|
+
[name: string]: unknown;
|
|
1318
|
+
};
|
|
1319
|
+
content?: never;
|
|
1320
|
+
};
|
|
1321
|
+
/** @description Slug already taken. */
|
|
1322
|
+
409: {
|
|
1323
|
+
headers: {
|
|
1324
|
+
[name: string]: unknown;
|
|
1325
|
+
};
|
|
1326
|
+
content?: never;
|
|
1327
|
+
};
|
|
1328
|
+
};
|
|
1329
|
+
};
|
|
1330
|
+
AppController_acceptInvite: {
|
|
1331
|
+
parameters: {
|
|
1332
|
+
query?: never;
|
|
1333
|
+
header?: never;
|
|
1334
|
+
path?: never;
|
|
1335
|
+
cookie?: never;
|
|
1336
|
+
};
|
|
1337
|
+
requestBody: {
|
|
1338
|
+
content: {
|
|
1339
|
+
"application/json": components["schemas"]["AcceptInviteDto"];
|
|
1340
|
+
};
|
|
1341
|
+
};
|
|
1342
|
+
responses: {
|
|
1343
|
+
201: {
|
|
1344
|
+
headers: {
|
|
1345
|
+
[name: string]: unknown;
|
|
1346
|
+
};
|
|
1347
|
+
content?: never;
|
|
1348
|
+
};
|
|
1349
|
+
};
|
|
1350
|
+
};
|
|
1351
|
+
AppController_getApp: {
|
|
1352
|
+
parameters: {
|
|
1353
|
+
query?: never;
|
|
1354
|
+
header?: never;
|
|
1355
|
+
path: {
|
|
1356
|
+
appId: string;
|
|
1357
|
+
};
|
|
1358
|
+
cookie?: never;
|
|
1359
|
+
};
|
|
1360
|
+
requestBody?: never;
|
|
1361
|
+
responses: {
|
|
1362
|
+
200: {
|
|
1363
|
+
headers: {
|
|
1364
|
+
[name: string]: unknown;
|
|
1365
|
+
};
|
|
1366
|
+
content?: never;
|
|
1367
|
+
};
|
|
1368
|
+
};
|
|
1369
|
+
};
|
|
1370
|
+
AppController_deleteApp: {
|
|
1371
|
+
parameters: {
|
|
1372
|
+
query?: never;
|
|
1373
|
+
header?: never;
|
|
1374
|
+
path: {
|
|
1375
|
+
appId: string;
|
|
1376
|
+
};
|
|
1377
|
+
cookie?: never;
|
|
1378
|
+
};
|
|
1379
|
+
requestBody?: never;
|
|
1380
|
+
responses: {
|
|
1381
|
+
/** @description App deleted. */
|
|
1382
|
+
204: {
|
|
1383
|
+
headers: {
|
|
1384
|
+
[name: string]: unknown;
|
|
1385
|
+
};
|
|
1386
|
+
content?: never;
|
|
1387
|
+
};
|
|
1388
|
+
/** @description Caller lacks `app.delete`. */
|
|
1389
|
+
403: {
|
|
1390
|
+
headers: {
|
|
1391
|
+
[name: string]: unknown;
|
|
1392
|
+
};
|
|
1393
|
+
content?: never;
|
|
1394
|
+
};
|
|
1395
|
+
/** @description App not found or caller is not a member. */
|
|
1396
|
+
404: {
|
|
1397
|
+
headers: {
|
|
1398
|
+
[name: string]: unknown;
|
|
1399
|
+
};
|
|
1400
|
+
content?: never;
|
|
1401
|
+
};
|
|
1402
|
+
};
|
|
1403
|
+
};
|
|
1404
|
+
AppController_updateApp: {
|
|
1405
|
+
parameters: {
|
|
1406
|
+
query?: never;
|
|
1407
|
+
header?: never;
|
|
1408
|
+
path: {
|
|
1409
|
+
appId: string;
|
|
1410
|
+
};
|
|
1411
|
+
cookie?: never;
|
|
1412
|
+
};
|
|
1413
|
+
requestBody: {
|
|
1414
|
+
content: {
|
|
1415
|
+
"application/json": components["schemas"]["UpdateAppDto"];
|
|
1416
|
+
};
|
|
1417
|
+
};
|
|
1418
|
+
responses: {
|
|
1419
|
+
200: {
|
|
1420
|
+
headers: {
|
|
1421
|
+
[name: string]: unknown;
|
|
1422
|
+
};
|
|
1423
|
+
content?: never;
|
|
1424
|
+
};
|
|
1425
|
+
};
|
|
1426
|
+
};
|
|
1427
|
+
ApiKeyController_listApiKeys: {
|
|
1428
|
+
parameters: {
|
|
1429
|
+
query?: never;
|
|
1430
|
+
header?: never;
|
|
1431
|
+
path: {
|
|
1432
|
+
appId: string;
|
|
1433
|
+
};
|
|
1434
|
+
cookie?: never;
|
|
1435
|
+
};
|
|
1436
|
+
requestBody?: never;
|
|
1437
|
+
responses: {
|
|
1438
|
+
200: {
|
|
1439
|
+
headers: {
|
|
1440
|
+
[name: string]: unknown;
|
|
1441
|
+
};
|
|
1442
|
+
content?: never;
|
|
1443
|
+
};
|
|
1444
|
+
};
|
|
1445
|
+
};
|
|
1446
|
+
ApiKeyController_createApiKey: {
|
|
1447
|
+
parameters: {
|
|
1448
|
+
query?: never;
|
|
1449
|
+
header?: never;
|
|
1450
|
+
path: {
|
|
1451
|
+
appId: string;
|
|
1452
|
+
};
|
|
1453
|
+
cookie?: never;
|
|
1454
|
+
};
|
|
1455
|
+
requestBody: {
|
|
1456
|
+
content: {
|
|
1457
|
+
"application/json": components["schemas"]["CreateApiKeyDto"];
|
|
1458
|
+
};
|
|
1459
|
+
};
|
|
1460
|
+
responses: {
|
|
1461
|
+
201: {
|
|
1462
|
+
headers: {
|
|
1463
|
+
[name: string]: unknown;
|
|
1464
|
+
};
|
|
1465
|
+
content?: never;
|
|
1466
|
+
};
|
|
1467
|
+
};
|
|
1468
|
+
};
|
|
1469
|
+
ApiKeyController_deleteApiKey: {
|
|
1470
|
+
parameters: {
|
|
1471
|
+
query?: never;
|
|
1472
|
+
header?: never;
|
|
1473
|
+
path: {
|
|
1474
|
+
appId: string;
|
|
1475
|
+
keyId: string;
|
|
1476
|
+
};
|
|
1477
|
+
cookie?: never;
|
|
1478
|
+
};
|
|
1479
|
+
requestBody?: never;
|
|
1480
|
+
responses: {
|
|
1481
|
+
204: {
|
|
1482
|
+
headers: {
|
|
1483
|
+
[name: string]: unknown;
|
|
1484
|
+
};
|
|
1485
|
+
content?: never;
|
|
1486
|
+
};
|
|
1487
|
+
};
|
|
1488
|
+
};
|
|
1489
|
+
AppAuditController_getAuditLogs: {
|
|
1490
|
+
parameters: {
|
|
1491
|
+
query: {
|
|
1492
|
+
limit: string;
|
|
1493
|
+
cursor: string;
|
|
1494
|
+
action: string;
|
|
1495
|
+
actor_id: string;
|
|
1496
|
+
};
|
|
1497
|
+
header?: never;
|
|
1498
|
+
path: {
|
|
1499
|
+
appId: string;
|
|
1500
|
+
};
|
|
1501
|
+
cookie?: never;
|
|
1502
|
+
};
|
|
1503
|
+
requestBody?: never;
|
|
1504
|
+
responses: {
|
|
1505
|
+
/** @description Page of audit entries with `next_cursor` and `has_more`. */
|
|
1506
|
+
200: {
|
|
1507
|
+
headers: {
|
|
1508
|
+
[name: string]: unknown;
|
|
1509
|
+
};
|
|
1510
|
+
content?: never;
|
|
1511
|
+
};
|
|
1512
|
+
/** @description Caller lacks `audit.read`. */
|
|
1513
|
+
403: {
|
|
1514
|
+
headers: {
|
|
1515
|
+
[name: string]: unknown;
|
|
1516
|
+
};
|
|
1517
|
+
content?: never;
|
|
1518
|
+
};
|
|
1519
|
+
/** @description App not found or caller is not a member. */
|
|
1520
|
+
404: {
|
|
1521
|
+
headers: {
|
|
1522
|
+
[name: string]: unknown;
|
|
1523
|
+
};
|
|
1524
|
+
content?: never;
|
|
1525
|
+
};
|
|
1526
|
+
};
|
|
1527
|
+
};
|
|
1528
|
+
AuthConfigController_getConfig: {
|
|
1529
|
+
parameters: {
|
|
1530
|
+
query?: never;
|
|
1531
|
+
header?: never;
|
|
1532
|
+
path: {
|
|
1533
|
+
appId: string;
|
|
1534
|
+
};
|
|
1535
|
+
cookie?: never;
|
|
1536
|
+
};
|
|
1537
|
+
requestBody?: never;
|
|
1538
|
+
responses: {
|
|
1539
|
+
200: {
|
|
1540
|
+
headers: {
|
|
1541
|
+
[name: string]: unknown;
|
|
1542
|
+
};
|
|
1543
|
+
content?: never;
|
|
1544
|
+
};
|
|
1545
|
+
};
|
|
1546
|
+
};
|
|
1547
|
+
AuthConfigController_updateConfig: {
|
|
1548
|
+
parameters: {
|
|
1549
|
+
query?: never;
|
|
1550
|
+
header?: never;
|
|
1551
|
+
path: {
|
|
1552
|
+
appId: string;
|
|
1553
|
+
};
|
|
1554
|
+
cookie?: never;
|
|
1555
|
+
};
|
|
1556
|
+
requestBody: {
|
|
1557
|
+
content: {
|
|
1558
|
+
"application/json": components["schemas"]["UpdateAuthConfigDto"];
|
|
1559
|
+
};
|
|
1560
|
+
};
|
|
1561
|
+
responses: {
|
|
1562
|
+
200: {
|
|
1563
|
+
headers: {
|
|
1564
|
+
[name: string]: unknown;
|
|
1565
|
+
};
|
|
1566
|
+
content?: never;
|
|
1567
|
+
};
|
|
1568
|
+
};
|
|
1569
|
+
};
|
|
1570
|
+
M2mController_listClients: {
|
|
1571
|
+
parameters: {
|
|
1572
|
+
query: {
|
|
1573
|
+
limit: string;
|
|
1574
|
+
cursor: string;
|
|
1575
|
+
};
|
|
1576
|
+
header?: never;
|
|
1577
|
+
path: {
|
|
1578
|
+
appId: string;
|
|
1579
|
+
};
|
|
1580
|
+
cookie?: never;
|
|
1581
|
+
};
|
|
1582
|
+
requestBody?: never;
|
|
1583
|
+
responses: {
|
|
1584
|
+
200: {
|
|
1585
|
+
headers: {
|
|
1586
|
+
[name: string]: unknown;
|
|
1587
|
+
};
|
|
1588
|
+
content?: never;
|
|
1589
|
+
};
|
|
1590
|
+
};
|
|
1591
|
+
};
|
|
1592
|
+
M2mController_createClient: {
|
|
1593
|
+
parameters: {
|
|
1594
|
+
query?: never;
|
|
1595
|
+
header?: never;
|
|
1596
|
+
path: {
|
|
1597
|
+
appId: string;
|
|
1598
|
+
};
|
|
1599
|
+
cookie?: never;
|
|
1600
|
+
};
|
|
1601
|
+
requestBody: {
|
|
1602
|
+
content: {
|
|
1603
|
+
"application/json": components["schemas"]["CreateM2mClientDto"];
|
|
1604
|
+
};
|
|
1605
|
+
};
|
|
1606
|
+
responses: {
|
|
1607
|
+
/** @description M2M client created. Plaintext secret is returned ONCE in this response. */
|
|
1608
|
+
201: {
|
|
1609
|
+
headers: {
|
|
1610
|
+
[name: string]: unknown;
|
|
1611
|
+
};
|
|
1612
|
+
content?: never;
|
|
1613
|
+
};
|
|
1614
|
+
/** @description Validation failure (missing or invalid name). */
|
|
1615
|
+
400: {
|
|
1616
|
+
headers: {
|
|
1617
|
+
[name: string]: unknown;
|
|
1618
|
+
};
|
|
1619
|
+
content?: never;
|
|
1620
|
+
};
|
|
1621
|
+
/** @description Caller email not verified, or lacks `m2m.create`. */
|
|
1622
|
+
403: {
|
|
1623
|
+
headers: {
|
|
1624
|
+
[name: string]: unknown;
|
|
1625
|
+
};
|
|
1626
|
+
content?: never;
|
|
1627
|
+
};
|
|
1628
|
+
/** @description App not found or caller is not a member. */
|
|
1629
|
+
404: {
|
|
1630
|
+
headers: {
|
|
1631
|
+
[name: string]: unknown;
|
|
1632
|
+
};
|
|
1633
|
+
content?: never;
|
|
1634
|
+
};
|
|
1635
|
+
};
|
|
1636
|
+
};
|
|
1637
|
+
M2mController_getClient: {
|
|
1638
|
+
parameters: {
|
|
1639
|
+
query?: never;
|
|
1640
|
+
header?: never;
|
|
1641
|
+
path: {
|
|
1642
|
+
appId: string;
|
|
1643
|
+
clientId: string;
|
|
1644
|
+
};
|
|
1645
|
+
cookie?: never;
|
|
1646
|
+
};
|
|
1647
|
+
requestBody?: never;
|
|
1648
|
+
responses: {
|
|
1649
|
+
200: {
|
|
1650
|
+
headers: {
|
|
1651
|
+
[name: string]: unknown;
|
|
1652
|
+
};
|
|
1653
|
+
content?: never;
|
|
1654
|
+
};
|
|
1655
|
+
};
|
|
1656
|
+
};
|
|
1657
|
+
M2mController_deleteClient: {
|
|
1658
|
+
parameters: {
|
|
1659
|
+
query?: never;
|
|
1660
|
+
header?: never;
|
|
1661
|
+
path: {
|
|
1662
|
+
appId: string;
|
|
1663
|
+
clientId: string;
|
|
1664
|
+
};
|
|
1665
|
+
cookie?: never;
|
|
1666
|
+
};
|
|
1667
|
+
requestBody?: never;
|
|
1668
|
+
responses: {
|
|
1669
|
+
/** @description M2M client deleted. */
|
|
1670
|
+
204: {
|
|
1671
|
+
headers: {
|
|
1672
|
+
[name: string]: unknown;
|
|
1673
|
+
};
|
|
1674
|
+
content?: never;
|
|
1675
|
+
};
|
|
1676
|
+
/** @description Caller lacks `m2m.delete`. */
|
|
1677
|
+
403: {
|
|
1678
|
+
headers: {
|
|
1679
|
+
[name: string]: unknown;
|
|
1680
|
+
};
|
|
1681
|
+
content?: never;
|
|
1682
|
+
};
|
|
1683
|
+
/** @description M2M client not found in this app. */
|
|
1684
|
+
404: {
|
|
1685
|
+
headers: {
|
|
1686
|
+
[name: string]: unknown;
|
|
1687
|
+
};
|
|
1688
|
+
content?: never;
|
|
1689
|
+
};
|
|
1690
|
+
};
|
|
1691
|
+
};
|
|
1692
|
+
M2mController_updateClient: {
|
|
1693
|
+
parameters: {
|
|
1694
|
+
query?: never;
|
|
1695
|
+
header?: never;
|
|
1696
|
+
path: {
|
|
1697
|
+
appId: string;
|
|
1698
|
+
clientId: string;
|
|
1699
|
+
};
|
|
1700
|
+
cookie?: never;
|
|
1701
|
+
};
|
|
1702
|
+
requestBody: {
|
|
1703
|
+
content: {
|
|
1704
|
+
"application/json": components["schemas"]["UpdateM2mClientDto"];
|
|
1705
|
+
};
|
|
1706
|
+
};
|
|
1707
|
+
responses: {
|
|
1708
|
+
200: {
|
|
1709
|
+
headers: {
|
|
1710
|
+
[name: string]: unknown;
|
|
1711
|
+
};
|
|
1712
|
+
content?: never;
|
|
1713
|
+
};
|
|
1714
|
+
};
|
|
1715
|
+
};
|
|
1716
|
+
M2mController_rotateSecret: {
|
|
1717
|
+
parameters: {
|
|
1718
|
+
query?: never;
|
|
1719
|
+
header?: never;
|
|
1720
|
+
path: {
|
|
1721
|
+
appId: string;
|
|
1722
|
+
clientId: string;
|
|
1723
|
+
};
|
|
1724
|
+
cookie?: never;
|
|
1725
|
+
};
|
|
1726
|
+
requestBody?: never;
|
|
1727
|
+
responses: {
|
|
1728
|
+
/** @description New secret generated and returned ONCE. */
|
|
1729
|
+
200: {
|
|
1730
|
+
headers: {
|
|
1731
|
+
[name: string]: unknown;
|
|
1732
|
+
};
|
|
1733
|
+
content?: never;
|
|
1734
|
+
};
|
|
1735
|
+
/** @description Caller lacks `m2m.rotate-secret`. */
|
|
1736
|
+
403: {
|
|
1737
|
+
headers: {
|
|
1738
|
+
[name: string]: unknown;
|
|
1739
|
+
};
|
|
1740
|
+
content?: never;
|
|
1741
|
+
};
|
|
1742
|
+
/** @description M2M client not found in this app. */
|
|
1743
|
+
404: {
|
|
1744
|
+
headers: {
|
|
1745
|
+
[name: string]: unknown;
|
|
1746
|
+
};
|
|
1747
|
+
content?: never;
|
|
1748
|
+
};
|
|
1749
|
+
};
|
|
1750
|
+
};
|
|
1751
|
+
M2mController_setScopes: {
|
|
1752
|
+
parameters: {
|
|
1753
|
+
query?: never;
|
|
1754
|
+
header?: never;
|
|
1755
|
+
path: {
|
|
1756
|
+
appId: string;
|
|
1757
|
+
clientId: string;
|
|
1758
|
+
};
|
|
1759
|
+
cookie?: never;
|
|
1760
|
+
};
|
|
1761
|
+
requestBody: {
|
|
1762
|
+
content: {
|
|
1763
|
+
"application/json": components["schemas"]["SetScopesDto"];
|
|
1764
|
+
};
|
|
1765
|
+
};
|
|
1766
|
+
responses: {
|
|
1767
|
+
200: {
|
|
1768
|
+
headers: {
|
|
1769
|
+
[name: string]: unknown;
|
|
1770
|
+
};
|
|
1771
|
+
content?: never;
|
|
1772
|
+
};
|
|
1773
|
+
};
|
|
1774
|
+
};
|
|
1775
|
+
EndUserController_listEndUsers: {
|
|
1776
|
+
parameters: {
|
|
1777
|
+
query: {
|
|
1778
|
+
limit: string;
|
|
1779
|
+
cursor: string;
|
|
1780
|
+
status: string;
|
|
1781
|
+
search: string;
|
|
1782
|
+
};
|
|
1783
|
+
header?: never;
|
|
1784
|
+
path: {
|
|
1785
|
+
appId: string;
|
|
1786
|
+
};
|
|
1787
|
+
cookie?: never;
|
|
1788
|
+
};
|
|
1789
|
+
requestBody?: never;
|
|
1790
|
+
responses: {
|
|
1791
|
+
200: {
|
|
1792
|
+
headers: {
|
|
1793
|
+
[name: string]: unknown;
|
|
1794
|
+
};
|
|
1795
|
+
content?: never;
|
|
1796
|
+
};
|
|
1797
|
+
};
|
|
1798
|
+
};
|
|
1799
|
+
EndUserController_getEndUser: {
|
|
1800
|
+
parameters: {
|
|
1801
|
+
query?: never;
|
|
1802
|
+
header?: never;
|
|
1803
|
+
path: {
|
|
1804
|
+
appId: string;
|
|
1805
|
+
userId: string;
|
|
1806
|
+
};
|
|
1807
|
+
cookie?: never;
|
|
1808
|
+
};
|
|
1809
|
+
requestBody?: never;
|
|
1810
|
+
responses: {
|
|
1811
|
+
200: {
|
|
1812
|
+
headers: {
|
|
1813
|
+
[name: string]: unknown;
|
|
1814
|
+
};
|
|
1815
|
+
content?: never;
|
|
1816
|
+
};
|
|
1817
|
+
};
|
|
1818
|
+
};
|
|
1819
|
+
EndUserController_deleteEndUser: {
|
|
1820
|
+
parameters: {
|
|
1821
|
+
query?: never;
|
|
1822
|
+
header?: never;
|
|
1823
|
+
path: {
|
|
1824
|
+
appId: string;
|
|
1825
|
+
userId: string;
|
|
1826
|
+
};
|
|
1827
|
+
cookie?: never;
|
|
1828
|
+
};
|
|
1829
|
+
requestBody?: never;
|
|
1830
|
+
responses: {
|
|
1831
|
+
204: {
|
|
1832
|
+
headers: {
|
|
1833
|
+
[name: string]: unknown;
|
|
1834
|
+
};
|
|
1835
|
+
content?: never;
|
|
1836
|
+
};
|
|
1837
|
+
};
|
|
1838
|
+
};
|
|
1839
|
+
EndUserController_updateEndUser: {
|
|
1840
|
+
parameters: {
|
|
1841
|
+
query?: never;
|
|
1842
|
+
header?: never;
|
|
1843
|
+
path: {
|
|
1844
|
+
appId: string;
|
|
1845
|
+
userId: string;
|
|
1846
|
+
};
|
|
1847
|
+
cookie?: never;
|
|
1848
|
+
};
|
|
1849
|
+
requestBody: {
|
|
1850
|
+
content: {
|
|
1851
|
+
"application/json": components["schemas"]["UpdateEndUserDto"];
|
|
1852
|
+
};
|
|
1853
|
+
};
|
|
1854
|
+
responses: {
|
|
1855
|
+
200: {
|
|
1856
|
+
headers: {
|
|
1857
|
+
[name: string]: unknown;
|
|
1858
|
+
};
|
|
1859
|
+
content?: never;
|
|
1860
|
+
};
|
|
1861
|
+
};
|
|
1862
|
+
};
|
|
1863
|
+
EndUserController_updateRole: {
|
|
1864
|
+
parameters: {
|
|
1865
|
+
query?: never;
|
|
1866
|
+
header?: never;
|
|
1867
|
+
path: {
|
|
1868
|
+
appId: string;
|
|
1869
|
+
userId: string;
|
|
1870
|
+
};
|
|
1871
|
+
cookie?: never;
|
|
1872
|
+
};
|
|
1873
|
+
requestBody: {
|
|
1874
|
+
content: {
|
|
1875
|
+
"application/json": components["schemas"]["UpdateEndUserRoleDto"];
|
|
1876
|
+
};
|
|
1877
|
+
};
|
|
1878
|
+
responses: {
|
|
1879
|
+
200: {
|
|
1880
|
+
headers: {
|
|
1881
|
+
[name: string]: unknown;
|
|
1882
|
+
};
|
|
1883
|
+
content?: never;
|
|
1884
|
+
};
|
|
1885
|
+
};
|
|
1886
|
+
};
|
|
1887
|
+
EndUserController_revokeAllSessions: {
|
|
1888
|
+
parameters: {
|
|
1889
|
+
query?: never;
|
|
1890
|
+
header?: never;
|
|
1891
|
+
path: {
|
|
1892
|
+
userId: string;
|
|
1893
|
+
};
|
|
1894
|
+
cookie?: never;
|
|
1895
|
+
};
|
|
1896
|
+
requestBody?: never;
|
|
1897
|
+
responses: {
|
|
1898
|
+
204: {
|
|
1899
|
+
headers: {
|
|
1900
|
+
[name: string]: unknown;
|
|
1901
|
+
};
|
|
1902
|
+
content?: never;
|
|
1903
|
+
};
|
|
1904
|
+
};
|
|
1905
|
+
};
|
|
1906
|
+
EndUserController_updateStatus: {
|
|
1907
|
+
parameters: {
|
|
1908
|
+
query?: never;
|
|
1909
|
+
header?: never;
|
|
1910
|
+
path: {
|
|
1911
|
+
appId: string;
|
|
1912
|
+
userId: string;
|
|
1913
|
+
};
|
|
1914
|
+
cookie?: never;
|
|
1915
|
+
};
|
|
1916
|
+
requestBody: {
|
|
1917
|
+
content: {
|
|
1918
|
+
"application/json": components["schemas"]["UpdateEndUserStatusDto"];
|
|
1919
|
+
};
|
|
1920
|
+
};
|
|
1921
|
+
responses: {
|
|
1922
|
+
200: {
|
|
1923
|
+
headers: {
|
|
1924
|
+
[name: string]: unknown;
|
|
1925
|
+
};
|
|
1926
|
+
content?: never;
|
|
1927
|
+
};
|
|
1928
|
+
};
|
|
1929
|
+
};
|
|
1930
|
+
AppController_listInvites: {
|
|
1931
|
+
parameters: {
|
|
1932
|
+
query: {
|
|
1933
|
+
limit: string;
|
|
1934
|
+
cursor: string;
|
|
1935
|
+
};
|
|
1936
|
+
header?: never;
|
|
1937
|
+
path: {
|
|
1938
|
+
appId: string;
|
|
1939
|
+
};
|
|
1940
|
+
cookie?: never;
|
|
1941
|
+
};
|
|
1942
|
+
requestBody?: never;
|
|
1943
|
+
responses: {
|
|
1944
|
+
200: {
|
|
1945
|
+
headers: {
|
|
1946
|
+
[name: string]: unknown;
|
|
1947
|
+
};
|
|
1948
|
+
content?: never;
|
|
1949
|
+
};
|
|
1950
|
+
};
|
|
1951
|
+
};
|
|
1952
|
+
AppController_createInvite: {
|
|
1953
|
+
parameters: {
|
|
1954
|
+
query?: never;
|
|
1955
|
+
header?: never;
|
|
1956
|
+
path: {
|
|
1957
|
+
appId: string;
|
|
1958
|
+
};
|
|
1959
|
+
cookie?: never;
|
|
1960
|
+
};
|
|
1961
|
+
requestBody: {
|
|
1962
|
+
content: {
|
|
1963
|
+
"application/json": components["schemas"]["CreateInviteDto"];
|
|
1964
|
+
};
|
|
1965
|
+
};
|
|
1966
|
+
responses: {
|
|
1967
|
+
/** @description Invite created. */
|
|
1968
|
+
201: {
|
|
1969
|
+
headers: {
|
|
1970
|
+
[name: string]: unknown;
|
|
1971
|
+
};
|
|
1972
|
+
content?: never;
|
|
1973
|
+
};
|
|
1974
|
+
/** @description Validation failure or unknown role slug. */
|
|
1975
|
+
400: {
|
|
1976
|
+
headers: {
|
|
1977
|
+
[name: string]: unknown;
|
|
1978
|
+
};
|
|
1979
|
+
content?: never;
|
|
1980
|
+
};
|
|
1981
|
+
/** @description Caller email not verified, or lacks `role.assign`. */
|
|
1982
|
+
403: {
|
|
1983
|
+
headers: {
|
|
1984
|
+
[name: string]: unknown;
|
|
1985
|
+
};
|
|
1986
|
+
content?: never;
|
|
1987
|
+
};
|
|
1988
|
+
/** @description App not found or caller is not a member. */
|
|
1989
|
+
404: {
|
|
1990
|
+
headers: {
|
|
1991
|
+
[name: string]: unknown;
|
|
1992
|
+
};
|
|
1993
|
+
content?: never;
|
|
1994
|
+
};
|
|
1995
|
+
};
|
|
1996
|
+
};
|
|
1997
|
+
AppController_revokeInvite: {
|
|
1998
|
+
parameters: {
|
|
1999
|
+
query?: never;
|
|
2000
|
+
header?: never;
|
|
2001
|
+
path: {
|
|
2002
|
+
appId: string;
|
|
2003
|
+
inviteId: string;
|
|
2004
|
+
};
|
|
2005
|
+
cookie?: never;
|
|
2006
|
+
};
|
|
2007
|
+
requestBody?: never;
|
|
2008
|
+
responses: {
|
|
2009
|
+
204: {
|
|
2010
|
+
headers: {
|
|
2011
|
+
[name: string]: unknown;
|
|
2012
|
+
};
|
|
2013
|
+
content?: never;
|
|
2014
|
+
};
|
|
2015
|
+
};
|
|
2016
|
+
};
|
|
2017
|
+
AppController_listMembers: {
|
|
2018
|
+
parameters: {
|
|
2019
|
+
query: {
|
|
2020
|
+
limit: string;
|
|
2021
|
+
cursor: string;
|
|
2022
|
+
};
|
|
2023
|
+
header?: never;
|
|
2024
|
+
path: {
|
|
2025
|
+
appId: string;
|
|
2026
|
+
};
|
|
2027
|
+
cookie?: never;
|
|
2028
|
+
};
|
|
2029
|
+
requestBody?: never;
|
|
2030
|
+
responses: {
|
|
2031
|
+
200: {
|
|
2032
|
+
headers: {
|
|
2033
|
+
[name: string]: unknown;
|
|
2034
|
+
};
|
|
2035
|
+
content?: never;
|
|
2036
|
+
};
|
|
2037
|
+
};
|
|
2038
|
+
};
|
|
2039
|
+
AppController_removeMember: {
|
|
2040
|
+
parameters: {
|
|
2041
|
+
query?: never;
|
|
2042
|
+
header?: never;
|
|
2043
|
+
path: {
|
|
2044
|
+
appId: string;
|
|
2045
|
+
accountId: string;
|
|
2046
|
+
};
|
|
2047
|
+
cookie?: never;
|
|
2048
|
+
};
|
|
2049
|
+
requestBody?: never;
|
|
2050
|
+
responses: {
|
|
2051
|
+
204: {
|
|
2052
|
+
headers: {
|
|
2053
|
+
[name: string]: unknown;
|
|
2054
|
+
};
|
|
2055
|
+
content?: never;
|
|
2056
|
+
};
|
|
2057
|
+
};
|
|
2058
|
+
};
|
|
2059
|
+
PermissionController_listPermissions: {
|
|
2060
|
+
parameters: {
|
|
2061
|
+
query?: never;
|
|
2062
|
+
header?: never;
|
|
2063
|
+
path: {
|
|
2064
|
+
appId: string;
|
|
2065
|
+
};
|
|
2066
|
+
cookie?: never;
|
|
2067
|
+
};
|
|
2068
|
+
requestBody?: never;
|
|
2069
|
+
responses: {
|
|
2070
|
+
200: {
|
|
2071
|
+
headers: {
|
|
2072
|
+
[name: string]: unknown;
|
|
2073
|
+
};
|
|
2074
|
+
content?: never;
|
|
2075
|
+
};
|
|
2076
|
+
};
|
|
2077
|
+
};
|
|
2078
|
+
PermissionController_createPermission: {
|
|
2079
|
+
parameters: {
|
|
2080
|
+
query?: never;
|
|
2081
|
+
header?: never;
|
|
2082
|
+
path: {
|
|
2083
|
+
appId: string;
|
|
2084
|
+
};
|
|
2085
|
+
cookie?: never;
|
|
2086
|
+
};
|
|
2087
|
+
requestBody: {
|
|
2088
|
+
content: {
|
|
2089
|
+
"application/json": components["schemas"]["CreatePermissionDto"];
|
|
2090
|
+
};
|
|
2091
|
+
};
|
|
2092
|
+
responses: {
|
|
2093
|
+
201: {
|
|
2094
|
+
headers: {
|
|
2095
|
+
[name: string]: unknown;
|
|
2096
|
+
};
|
|
2097
|
+
content?: never;
|
|
2098
|
+
};
|
|
2099
|
+
};
|
|
2100
|
+
};
|
|
2101
|
+
PermissionController_deletePermission: {
|
|
2102
|
+
parameters: {
|
|
2103
|
+
query?: never;
|
|
2104
|
+
header?: never;
|
|
2105
|
+
path: {
|
|
2106
|
+
appId: string;
|
|
2107
|
+
permissionKey: string;
|
|
2108
|
+
};
|
|
2109
|
+
cookie?: never;
|
|
2110
|
+
};
|
|
2111
|
+
requestBody?: never;
|
|
2112
|
+
responses: {
|
|
2113
|
+
204: {
|
|
2114
|
+
headers: {
|
|
2115
|
+
[name: string]: unknown;
|
|
2116
|
+
};
|
|
2117
|
+
content?: never;
|
|
2118
|
+
};
|
|
2119
|
+
};
|
|
2120
|
+
};
|
|
2121
|
+
RoleController_listRoles: {
|
|
2122
|
+
parameters: {
|
|
2123
|
+
query: {
|
|
2124
|
+
limit: string;
|
|
2125
|
+
cursor: string;
|
|
2126
|
+
};
|
|
2127
|
+
header?: never;
|
|
2128
|
+
path: {
|
|
2129
|
+
appId: string;
|
|
2130
|
+
};
|
|
2131
|
+
cookie?: never;
|
|
2132
|
+
};
|
|
2133
|
+
requestBody?: never;
|
|
2134
|
+
responses: {
|
|
2135
|
+
200: {
|
|
2136
|
+
headers: {
|
|
2137
|
+
[name: string]: unknown;
|
|
2138
|
+
};
|
|
2139
|
+
content?: never;
|
|
2140
|
+
};
|
|
2141
|
+
};
|
|
2142
|
+
};
|
|
2143
|
+
RoleController_createRole: {
|
|
2144
|
+
parameters: {
|
|
2145
|
+
query?: never;
|
|
2146
|
+
header?: never;
|
|
2147
|
+
path: {
|
|
2148
|
+
appId: string;
|
|
2149
|
+
};
|
|
2150
|
+
cookie?: never;
|
|
2151
|
+
};
|
|
2152
|
+
requestBody: {
|
|
2153
|
+
content: {
|
|
2154
|
+
"application/json": components["schemas"]["CreateRoleDto"];
|
|
2155
|
+
};
|
|
2156
|
+
};
|
|
2157
|
+
responses: {
|
|
2158
|
+
201: {
|
|
2159
|
+
headers: {
|
|
2160
|
+
[name: string]: unknown;
|
|
2161
|
+
};
|
|
2162
|
+
content?: never;
|
|
2163
|
+
};
|
|
2164
|
+
};
|
|
2165
|
+
};
|
|
2166
|
+
RoleController_assignRole: {
|
|
2167
|
+
parameters: {
|
|
2168
|
+
query?: never;
|
|
2169
|
+
header?: never;
|
|
2170
|
+
path: {
|
|
2171
|
+
appId: string;
|
|
2172
|
+
};
|
|
2173
|
+
cookie?: never;
|
|
2174
|
+
};
|
|
2175
|
+
requestBody: {
|
|
2176
|
+
content: {
|
|
2177
|
+
"application/json": components["schemas"]["AssignRoleDto"];
|
|
2178
|
+
};
|
|
2179
|
+
};
|
|
2180
|
+
responses: {
|
|
2181
|
+
201: {
|
|
2182
|
+
headers: {
|
|
2183
|
+
[name: string]: unknown;
|
|
2184
|
+
};
|
|
2185
|
+
content?: never;
|
|
2186
|
+
};
|
|
2187
|
+
};
|
|
2188
|
+
};
|
|
2189
|
+
RoleController_listPermissions: {
|
|
2190
|
+
parameters: {
|
|
2191
|
+
query?: never;
|
|
2192
|
+
header?: never;
|
|
2193
|
+
path: {
|
|
2194
|
+
appId: string;
|
|
2195
|
+
};
|
|
2196
|
+
cookie?: never;
|
|
2197
|
+
};
|
|
2198
|
+
requestBody?: never;
|
|
2199
|
+
responses: {
|
|
2200
|
+
200: {
|
|
2201
|
+
headers: {
|
|
2202
|
+
[name: string]: unknown;
|
|
2203
|
+
};
|
|
2204
|
+
content?: never;
|
|
2205
|
+
};
|
|
2206
|
+
};
|
|
2207
|
+
};
|
|
2208
|
+
RoleController_getRole: {
|
|
2209
|
+
parameters: {
|
|
2210
|
+
query?: never;
|
|
2211
|
+
header?: never;
|
|
2212
|
+
path: {
|
|
2213
|
+
roleName: string;
|
|
2214
|
+
};
|
|
2215
|
+
cookie?: never;
|
|
2216
|
+
};
|
|
2217
|
+
requestBody?: never;
|
|
2218
|
+
responses: {
|
|
2219
|
+
200: {
|
|
2220
|
+
headers: {
|
|
2221
|
+
[name: string]: unknown;
|
|
2222
|
+
};
|
|
2223
|
+
content?: never;
|
|
2224
|
+
};
|
|
2225
|
+
};
|
|
2226
|
+
};
|
|
2227
|
+
RoleController_deleteRole: {
|
|
2228
|
+
parameters: {
|
|
2229
|
+
query?: never;
|
|
2230
|
+
header?: never;
|
|
2231
|
+
path: {
|
|
2232
|
+
roleName: string;
|
|
2233
|
+
};
|
|
2234
|
+
cookie?: never;
|
|
2235
|
+
};
|
|
2236
|
+
requestBody?: never;
|
|
2237
|
+
responses: {
|
|
2238
|
+
204: {
|
|
2239
|
+
headers: {
|
|
2240
|
+
[name: string]: unknown;
|
|
2241
|
+
};
|
|
2242
|
+
content?: never;
|
|
2243
|
+
};
|
|
2244
|
+
};
|
|
2245
|
+
};
|
|
2246
|
+
RoleController_updateRole: {
|
|
2247
|
+
parameters: {
|
|
2248
|
+
query?: never;
|
|
2249
|
+
header?: never;
|
|
2250
|
+
path: {
|
|
2251
|
+
roleName: string;
|
|
2252
|
+
};
|
|
2253
|
+
cookie?: never;
|
|
2254
|
+
};
|
|
2255
|
+
requestBody: {
|
|
2256
|
+
content: {
|
|
2257
|
+
"application/json": components["schemas"]["UpdateRoleDto"];
|
|
2258
|
+
};
|
|
2259
|
+
};
|
|
2260
|
+
responses: {
|
|
2261
|
+
200: {
|
|
2262
|
+
headers: {
|
|
2263
|
+
[name: string]: unknown;
|
|
2264
|
+
};
|
|
2265
|
+
content?: never;
|
|
2266
|
+
};
|
|
2267
|
+
};
|
|
2268
|
+
};
|
|
2269
|
+
RoleController_setPermissions: {
|
|
2270
|
+
parameters: {
|
|
2271
|
+
query?: never;
|
|
2272
|
+
header?: never;
|
|
2273
|
+
path: {
|
|
2274
|
+
appId: string;
|
|
2275
|
+
roleName: string;
|
|
2276
|
+
};
|
|
2277
|
+
cookie?: never;
|
|
2278
|
+
};
|
|
2279
|
+
requestBody: {
|
|
2280
|
+
content: {
|
|
2281
|
+
"application/json": components["schemas"]["SetPermissionsDto"];
|
|
2282
|
+
};
|
|
2283
|
+
};
|
|
2284
|
+
responses: {
|
|
2285
|
+
200: {
|
|
2286
|
+
headers: {
|
|
2287
|
+
[name: string]: unknown;
|
|
2288
|
+
};
|
|
2289
|
+
content?: never;
|
|
2290
|
+
};
|
|
2291
|
+
};
|
|
2292
|
+
};
|
|
2293
|
+
AppController_updateAppStatus: {
|
|
2294
|
+
parameters: {
|
|
2295
|
+
query?: never;
|
|
2296
|
+
header?: never;
|
|
2297
|
+
path: {
|
|
2298
|
+
appId: string;
|
|
2299
|
+
};
|
|
2300
|
+
cookie?: never;
|
|
2301
|
+
};
|
|
2302
|
+
requestBody: {
|
|
2303
|
+
content: {
|
|
2304
|
+
"application/json": components["schemas"]["UpdateAppStatusDto"];
|
|
2305
|
+
};
|
|
2306
|
+
};
|
|
2307
|
+
responses: {
|
|
2308
|
+
/** @description Status updated. */
|
|
2309
|
+
200: {
|
|
2310
|
+
headers: {
|
|
2311
|
+
[name: string]: unknown;
|
|
2312
|
+
};
|
|
2313
|
+
content?: never;
|
|
2314
|
+
};
|
|
2315
|
+
/** @description Invalid status transition (e.g. archived → active). */
|
|
2316
|
+
400: {
|
|
2317
|
+
headers: {
|
|
2318
|
+
[name: string]: unknown;
|
|
2319
|
+
};
|
|
2320
|
+
content?: never;
|
|
2321
|
+
};
|
|
2322
|
+
/** @description Caller lacks `app.update`. */
|
|
2323
|
+
403: {
|
|
2324
|
+
headers: {
|
|
2325
|
+
[name: string]: unknown;
|
|
2326
|
+
};
|
|
2327
|
+
content?: never;
|
|
2328
|
+
};
|
|
2329
|
+
/** @description App not found or caller is not a member. */
|
|
2330
|
+
404: {
|
|
2331
|
+
headers: {
|
|
2332
|
+
[name: string]: unknown;
|
|
2333
|
+
};
|
|
2334
|
+
content?: never;
|
|
2335
|
+
};
|
|
2336
|
+
};
|
|
2337
|
+
};
|
|
2338
|
+
IdpController_exchange: {
|
|
2339
|
+
parameters: {
|
|
2340
|
+
query?: never;
|
|
2341
|
+
header?: never;
|
|
2342
|
+
path?: never;
|
|
2343
|
+
cookie?: never;
|
|
2344
|
+
};
|
|
2345
|
+
requestBody: {
|
|
2346
|
+
content: {
|
|
2347
|
+
"application/json": components["schemas"]["ExchangeDto"];
|
|
2348
|
+
};
|
|
2349
|
+
};
|
|
2350
|
+
responses: {
|
|
2351
|
+
200: {
|
|
2352
|
+
headers: {
|
|
2353
|
+
[name: string]: unknown;
|
|
2354
|
+
};
|
|
2355
|
+
content?: never;
|
|
2356
|
+
};
|
|
2357
|
+
};
|
|
2358
|
+
};
|
|
2359
|
+
IdpController_list: {
|
|
2360
|
+
parameters: {
|
|
2361
|
+
query?: never;
|
|
2362
|
+
header?: never;
|
|
2363
|
+
path?: never;
|
|
2364
|
+
cookie?: never;
|
|
2365
|
+
};
|
|
2366
|
+
requestBody?: never;
|
|
2367
|
+
responses: {
|
|
2368
|
+
200: {
|
|
2369
|
+
headers: {
|
|
2370
|
+
[name: string]: unknown;
|
|
2371
|
+
};
|
|
2372
|
+
content?: never;
|
|
2373
|
+
};
|
|
2374
|
+
};
|
|
2375
|
+
};
|
|
2376
|
+
IdpController_redirect: {
|
|
2377
|
+
parameters: {
|
|
2378
|
+
query?: never;
|
|
2379
|
+
header?: never;
|
|
2380
|
+
path: {
|
|
2381
|
+
provider: string;
|
|
2382
|
+
};
|
|
2383
|
+
cookie?: never;
|
|
2384
|
+
};
|
|
2385
|
+
requestBody?: never;
|
|
2386
|
+
responses: {
|
|
2387
|
+
200: {
|
|
2388
|
+
headers: {
|
|
2389
|
+
[name: string]: unknown;
|
|
2390
|
+
};
|
|
2391
|
+
content?: never;
|
|
2392
|
+
};
|
|
2393
|
+
};
|
|
2394
|
+
};
|
|
2395
|
+
IdpController_start: {
|
|
2396
|
+
parameters: {
|
|
2397
|
+
query: {
|
|
2398
|
+
response: string;
|
|
2399
|
+
};
|
|
2400
|
+
header?: never;
|
|
2401
|
+
path: {
|
|
2402
|
+
provider: string;
|
|
2403
|
+
};
|
|
2404
|
+
cookie?: never;
|
|
2405
|
+
};
|
|
2406
|
+
requestBody: {
|
|
2407
|
+
content: {
|
|
2408
|
+
"application/json": components["schemas"]["StartDto"];
|
|
2409
|
+
};
|
|
2410
|
+
};
|
|
2411
|
+
responses: {
|
|
2412
|
+
201: {
|
|
2413
|
+
headers: {
|
|
2414
|
+
[name: string]: unknown;
|
|
2415
|
+
};
|
|
2416
|
+
content?: never;
|
|
2417
|
+
};
|
|
2418
|
+
};
|
|
2419
|
+
};
|
|
2420
|
+
IdpController_verifyIdToken: {
|
|
2421
|
+
parameters: {
|
|
2422
|
+
query?: never;
|
|
2423
|
+
header?: never;
|
|
2424
|
+
path: {
|
|
2425
|
+
provider: string;
|
|
2426
|
+
};
|
|
2427
|
+
cookie?: never;
|
|
2428
|
+
};
|
|
2429
|
+
requestBody: {
|
|
2430
|
+
content: {
|
|
2431
|
+
"application/json": components["schemas"]["IdTokenVerifyDto"];
|
|
2432
|
+
};
|
|
2433
|
+
};
|
|
2434
|
+
responses: {
|
|
2435
|
+
200: {
|
|
2436
|
+
headers: {
|
|
2437
|
+
[name: string]: unknown;
|
|
2438
|
+
};
|
|
2439
|
+
content?: never;
|
|
2440
|
+
};
|
|
2441
|
+
};
|
|
2442
|
+
};
|
|
2443
|
+
StatsController_getMyStats: {
|
|
2444
|
+
parameters: {
|
|
2445
|
+
query?: never;
|
|
2446
|
+
header?: never;
|
|
2447
|
+
path?: never;
|
|
2448
|
+
cookie?: never;
|
|
2449
|
+
};
|
|
2450
|
+
requestBody?: never;
|
|
2451
|
+
responses: {
|
|
2452
|
+
/** @description Aggregate counts. */
|
|
2453
|
+
200: {
|
|
2454
|
+
headers: {
|
|
2455
|
+
[name: string]: unknown;
|
|
2456
|
+
};
|
|
2457
|
+
content: {
|
|
2458
|
+
"application/json": unknown;
|
|
2459
|
+
};
|
|
2460
|
+
};
|
|
2461
|
+
};
|
|
2462
|
+
};
|
|
2463
|
+
ConsumerJwksController_getJwks: {
|
|
2464
|
+
parameters: {
|
|
2465
|
+
query?: never;
|
|
2466
|
+
header?: never;
|
|
2467
|
+
path: {
|
|
2468
|
+
appSlug: string;
|
|
2469
|
+
};
|
|
2470
|
+
cookie?: never;
|
|
2471
|
+
};
|
|
2472
|
+
requestBody?: never;
|
|
2473
|
+
responses: {
|
|
2474
|
+
200: {
|
|
2475
|
+
headers: {
|
|
2476
|
+
[name: string]: unknown;
|
|
2477
|
+
};
|
|
2478
|
+
content?: never;
|
|
2479
|
+
};
|
|
2480
|
+
};
|
|
2481
|
+
};
|
|
2482
|
+
ConsumerAuthController_logout: {
|
|
2483
|
+
parameters: {
|
|
2484
|
+
query?: never;
|
|
2485
|
+
header?: never;
|
|
2486
|
+
path: {
|
|
2487
|
+
appSlug: string;
|
|
2488
|
+
};
|
|
2489
|
+
cookie?: never;
|
|
2490
|
+
};
|
|
2491
|
+
requestBody: {
|
|
2492
|
+
content: {
|
|
2493
|
+
"application/json": components["schemas"]["ConsumerLogoutDto"];
|
|
2494
|
+
};
|
|
2495
|
+
};
|
|
2496
|
+
responses: {
|
|
2497
|
+
204: {
|
|
2498
|
+
headers: {
|
|
2499
|
+
[name: string]: unknown;
|
|
2500
|
+
};
|
|
2501
|
+
content?: never;
|
|
2502
|
+
};
|
|
2503
|
+
};
|
|
2504
|
+
};
|
|
2505
|
+
ConsumerAuthController_refresh: {
|
|
2506
|
+
parameters: {
|
|
2507
|
+
query?: never;
|
|
2508
|
+
header?: never;
|
|
2509
|
+
path: {
|
|
2510
|
+
appSlug: string;
|
|
2511
|
+
};
|
|
2512
|
+
cookie?: never;
|
|
2513
|
+
};
|
|
2514
|
+
requestBody: {
|
|
2515
|
+
content: {
|
|
2516
|
+
"application/json": components["schemas"]["ConsumerRefreshDto"];
|
|
2517
|
+
};
|
|
2518
|
+
};
|
|
2519
|
+
responses: {
|
|
2520
|
+
200: {
|
|
2521
|
+
headers: {
|
|
2522
|
+
[name: string]: unknown;
|
|
2523
|
+
};
|
|
2524
|
+
content: {
|
|
2525
|
+
"application/json": components["schemas"]["ConsumerTokenResponseDto"];
|
|
2526
|
+
};
|
|
2527
|
+
};
|
|
2528
|
+
};
|
|
2529
|
+
};
|
|
2530
|
+
ConsumerAuthController_requestReset: {
|
|
2531
|
+
parameters: {
|
|
2532
|
+
query?: never;
|
|
2533
|
+
header?: never;
|
|
2534
|
+
path: {
|
|
2535
|
+
appSlug: string;
|
|
2536
|
+
};
|
|
2537
|
+
cookie?: never;
|
|
2538
|
+
};
|
|
2539
|
+
requestBody: {
|
|
2540
|
+
content: {
|
|
2541
|
+
"application/json": components["schemas"]["ConsumerRequestResetDto"];
|
|
2542
|
+
};
|
|
2543
|
+
};
|
|
2544
|
+
responses: {
|
|
2545
|
+
201: {
|
|
2546
|
+
headers: {
|
|
2547
|
+
[name: string]: unknown;
|
|
2548
|
+
};
|
|
2549
|
+
content?: never;
|
|
2550
|
+
};
|
|
2551
|
+
};
|
|
2552
|
+
};
|
|
2553
|
+
ConsumerAuthController_resetPassword: {
|
|
2554
|
+
parameters: {
|
|
2555
|
+
query?: never;
|
|
2556
|
+
header?: never;
|
|
2557
|
+
path: {
|
|
2558
|
+
appSlug: string;
|
|
2559
|
+
};
|
|
2560
|
+
cookie?: never;
|
|
2561
|
+
};
|
|
2562
|
+
requestBody: {
|
|
2563
|
+
content: {
|
|
2564
|
+
"application/json": components["schemas"]["ConsumerResetPasswordDto"];
|
|
2565
|
+
};
|
|
2566
|
+
};
|
|
2567
|
+
responses: {
|
|
2568
|
+
204: {
|
|
2569
|
+
headers: {
|
|
2570
|
+
[name: string]: unknown;
|
|
2571
|
+
};
|
|
2572
|
+
content?: never;
|
|
2573
|
+
};
|
|
2574
|
+
};
|
|
2575
|
+
};
|
|
2576
|
+
ConsumerAuthController_signin: {
|
|
2577
|
+
parameters: {
|
|
2578
|
+
query?: never;
|
|
2579
|
+
header?: never;
|
|
2580
|
+
path: {
|
|
2581
|
+
appSlug: string;
|
|
2582
|
+
};
|
|
2583
|
+
cookie?: never;
|
|
2584
|
+
};
|
|
2585
|
+
requestBody: {
|
|
2586
|
+
content: {
|
|
2587
|
+
"application/json": components["schemas"]["ConsumerSigninDto"];
|
|
2588
|
+
};
|
|
2589
|
+
};
|
|
2590
|
+
responses: {
|
|
2591
|
+
200: {
|
|
2592
|
+
headers: {
|
|
2593
|
+
[name: string]: unknown;
|
|
2594
|
+
};
|
|
2595
|
+
content: {
|
|
2596
|
+
"application/json": components["schemas"]["ConsumerTokenResponseDto"];
|
|
2597
|
+
};
|
|
2598
|
+
};
|
|
2599
|
+
};
|
|
2600
|
+
};
|
|
2601
|
+
ConsumerAuthController_signup: {
|
|
2602
|
+
parameters: {
|
|
2603
|
+
query?: never;
|
|
2604
|
+
header: {
|
|
2605
|
+
authorization: string;
|
|
2606
|
+
};
|
|
2607
|
+
path: {
|
|
2608
|
+
appSlug: string;
|
|
2609
|
+
};
|
|
2610
|
+
cookie?: never;
|
|
2611
|
+
};
|
|
2612
|
+
requestBody: {
|
|
2613
|
+
content: {
|
|
2614
|
+
"application/json": components["schemas"]["ConsumerSignupDto"];
|
|
2615
|
+
};
|
|
2616
|
+
};
|
|
2617
|
+
responses: {
|
|
2618
|
+
200: {
|
|
2619
|
+
headers: {
|
|
2620
|
+
[name: string]: unknown;
|
|
2621
|
+
};
|
|
2622
|
+
content: {
|
|
2623
|
+
"application/json": components["schemas"]["ConsumerTokenResponseDto"];
|
|
2624
|
+
};
|
|
2625
|
+
};
|
|
2626
|
+
};
|
|
2627
|
+
};
|
|
2628
|
+
ConsumerVerifyController_authorize: {
|
|
2629
|
+
parameters: {
|
|
2630
|
+
query?: never;
|
|
2631
|
+
header?: never;
|
|
2632
|
+
path: {
|
|
2633
|
+
appSlug: string;
|
|
2634
|
+
};
|
|
2635
|
+
cookie?: never;
|
|
2636
|
+
};
|
|
2637
|
+
requestBody: {
|
|
2638
|
+
content: {
|
|
2639
|
+
"application/json": components["schemas"]["AuthorizeBody"];
|
|
2640
|
+
};
|
|
2641
|
+
};
|
|
2642
|
+
responses: {
|
|
2643
|
+
200: {
|
|
2644
|
+
headers: {
|
|
2645
|
+
[name: string]: unknown;
|
|
2646
|
+
};
|
|
2647
|
+
content?: never;
|
|
2648
|
+
};
|
|
2649
|
+
};
|
|
2650
|
+
};
|
|
2651
|
+
ConsumerVerifyController_authorizeBatch: {
|
|
2652
|
+
parameters: {
|
|
2653
|
+
query?: never;
|
|
2654
|
+
header?: never;
|
|
2655
|
+
path: {
|
|
2656
|
+
appSlug: string;
|
|
2657
|
+
};
|
|
2658
|
+
cookie?: never;
|
|
2659
|
+
};
|
|
2660
|
+
requestBody: {
|
|
2661
|
+
content: {
|
|
2662
|
+
"application/json": components["schemas"]["AuthorizeBatchBody"];
|
|
2663
|
+
};
|
|
2664
|
+
};
|
|
2665
|
+
responses: {
|
|
2666
|
+
200: {
|
|
2667
|
+
headers: {
|
|
2668
|
+
[name: string]: unknown;
|
|
2669
|
+
};
|
|
2670
|
+
content?: never;
|
|
2671
|
+
};
|
|
2672
|
+
};
|
|
2673
|
+
};
|
|
2674
|
+
ConsumerMeController_getProfile: {
|
|
2675
|
+
parameters: {
|
|
2676
|
+
query?: never;
|
|
2677
|
+
header?: never;
|
|
2678
|
+
path?: never;
|
|
2679
|
+
cookie?: never;
|
|
2680
|
+
};
|
|
2681
|
+
requestBody?: never;
|
|
2682
|
+
responses: {
|
|
2683
|
+
200: {
|
|
2684
|
+
headers: {
|
|
2685
|
+
[name: string]: unknown;
|
|
2686
|
+
};
|
|
2687
|
+
content?: never;
|
|
2688
|
+
};
|
|
2689
|
+
};
|
|
2690
|
+
};
|
|
2691
|
+
ConsumerMeController_deleteAccount: {
|
|
2692
|
+
parameters: {
|
|
2693
|
+
query?: never;
|
|
2694
|
+
header?: never;
|
|
2695
|
+
path?: never;
|
|
2696
|
+
cookie?: never;
|
|
2697
|
+
};
|
|
2698
|
+
requestBody?: never;
|
|
2699
|
+
responses: {
|
|
2700
|
+
204: {
|
|
2701
|
+
headers: {
|
|
2702
|
+
[name: string]: unknown;
|
|
2703
|
+
};
|
|
2704
|
+
content?: never;
|
|
2705
|
+
};
|
|
2706
|
+
};
|
|
2707
|
+
};
|
|
2708
|
+
ConsumerMeController_updateProfile: {
|
|
2709
|
+
parameters: {
|
|
2710
|
+
query?: never;
|
|
2711
|
+
header?: never;
|
|
2712
|
+
path?: never;
|
|
2713
|
+
cookie?: never;
|
|
2714
|
+
};
|
|
2715
|
+
requestBody: {
|
|
2716
|
+
content: {
|
|
2717
|
+
"application/json": components["schemas"]["UpdateMeDto"];
|
|
2718
|
+
};
|
|
2719
|
+
};
|
|
2720
|
+
responses: {
|
|
2721
|
+
200: {
|
|
2722
|
+
headers: {
|
|
2723
|
+
[name: string]: unknown;
|
|
2724
|
+
};
|
|
2725
|
+
content?: never;
|
|
2726
|
+
};
|
|
2727
|
+
};
|
|
2728
|
+
};
|
|
2729
|
+
ConsumerMeController_getActivity: {
|
|
2730
|
+
parameters: {
|
|
2731
|
+
query?: never;
|
|
2732
|
+
header?: never;
|
|
2733
|
+
path?: never;
|
|
2734
|
+
cookie?: never;
|
|
2735
|
+
};
|
|
2736
|
+
requestBody?: never;
|
|
2737
|
+
responses: {
|
|
2738
|
+
200: {
|
|
2739
|
+
headers: {
|
|
2740
|
+
[name: string]: unknown;
|
|
2741
|
+
};
|
|
2742
|
+
content?: never;
|
|
2743
|
+
};
|
|
2744
|
+
};
|
|
2745
|
+
};
|
|
2746
|
+
ConsumerMeController_listSessions: {
|
|
2747
|
+
parameters: {
|
|
2748
|
+
query?: never;
|
|
2749
|
+
header?: never;
|
|
2750
|
+
path?: never;
|
|
2751
|
+
cookie?: never;
|
|
2752
|
+
};
|
|
2753
|
+
requestBody?: never;
|
|
2754
|
+
responses: {
|
|
2755
|
+
200: {
|
|
2756
|
+
headers: {
|
|
2757
|
+
[name: string]: unknown;
|
|
2758
|
+
};
|
|
2759
|
+
content?: never;
|
|
2760
|
+
};
|
|
2761
|
+
};
|
|
2762
|
+
};
|
|
2763
|
+
ConsumerMeController_revokeSession: {
|
|
2764
|
+
parameters: {
|
|
2765
|
+
query?: never;
|
|
2766
|
+
header?: never;
|
|
2767
|
+
path: {
|
|
2768
|
+
id: string;
|
|
2769
|
+
};
|
|
2770
|
+
cookie?: never;
|
|
2771
|
+
};
|
|
2772
|
+
requestBody?: never;
|
|
2773
|
+
responses: {
|
|
2774
|
+
204: {
|
|
2775
|
+
headers: {
|
|
2776
|
+
[name: string]: unknown;
|
|
2777
|
+
};
|
|
2778
|
+
content?: never;
|
|
2779
|
+
};
|
|
2780
|
+
};
|
|
2781
|
+
};
|
|
2782
|
+
ConsumerOAuthController_clientCredentials: {
|
|
2783
|
+
parameters: {
|
|
2784
|
+
query?: never;
|
|
2785
|
+
header?: never;
|
|
2786
|
+
path: {
|
|
2787
|
+
appSlug: string;
|
|
2788
|
+
};
|
|
2789
|
+
cookie?: never;
|
|
2790
|
+
};
|
|
2791
|
+
requestBody: {
|
|
2792
|
+
content: {
|
|
2793
|
+
"application/json": components["schemas"]["ClientCredentialsDto"];
|
|
2794
|
+
};
|
|
2795
|
+
};
|
|
2796
|
+
responses: {
|
|
2797
|
+
200: {
|
|
2798
|
+
headers: {
|
|
2799
|
+
[name: string]: unknown;
|
|
2800
|
+
};
|
|
2801
|
+
content?: never;
|
|
2802
|
+
};
|
|
2803
|
+
};
|
|
2804
|
+
};
|
|
2805
|
+
ConsumerVerifyController_verify: {
|
|
2806
|
+
parameters: {
|
|
2807
|
+
query?: never;
|
|
2808
|
+
header?: never;
|
|
2809
|
+
path: {
|
|
2810
|
+
appSlug: string;
|
|
2811
|
+
};
|
|
2812
|
+
cookie?: never;
|
|
2813
|
+
};
|
|
2814
|
+
requestBody: {
|
|
2815
|
+
content: {
|
|
2816
|
+
"application/json": components["schemas"]["VerifyBody"];
|
|
2817
|
+
};
|
|
2818
|
+
};
|
|
2819
|
+
responses: {
|
|
2820
|
+
200: {
|
|
2821
|
+
headers: {
|
|
2822
|
+
[name: string]: unknown;
|
|
2823
|
+
};
|
|
2824
|
+
content?: never;
|
|
2825
|
+
};
|
|
2826
|
+
};
|
|
2827
|
+
};
|
|
2828
|
+
}
|
|
2829
|
+
|
|
2830
|
+
/**
|
|
2831
|
+
* Heimdall — typed `openapi-fetch` client for every endpoint in
|
|
2832
|
+
* `Specs/heimdall.json`. Reach for `client.GET("/v1/...")` or
|
|
2833
|
+
* `client.POST(...)`; request / response types come from the
|
|
2834
|
+
* generated `paths` interface.
|
|
2835
|
+
*/
|
|
2836
|
+
declare class Heimdall {
|
|
2837
|
+
/** The underlying typed client. v0 surface — every endpoint reachable. */
|
|
2838
|
+
readonly client: ReturnType<typeof makeClient<paths>>;
|
|
2839
|
+
constructor(config?: PCClientConfig);
|
|
2840
|
+
}
|
|
2841
|
+
|
|
2842
|
+
export { Heimdall, type paths };
|