@1claw/sdk 0.25.0 → 0.26.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.
@@ -304,6 +304,188 @@ export interface paths {
304
304
  patch?: never;
305
305
  trace?: never;
306
306
  };
307
+ "/v1/auth/set-password": {
308
+ parameters: {
309
+ query?: never;
310
+ header?: never;
311
+ path?: never;
312
+ cookie?: never;
313
+ };
314
+ get?: never;
315
+ put?: never;
316
+ /**
317
+ * Set initial password for platform users
318
+ * @description Only allowed when the user has no password set (platform_oidc users after claiming).
319
+ */
320
+ post: operations["setPassword"];
321
+ delete?: never;
322
+ options?: never;
323
+ head?: never;
324
+ patch?: never;
325
+ trace?: never;
326
+ };
327
+ "/v1/auth/change-email": {
328
+ parameters: {
329
+ query?: never;
330
+ header?: never;
331
+ path?: never;
332
+ cookie?: never;
333
+ };
334
+ get?: never;
335
+ put?: never;
336
+ /**
337
+ * Request email change
338
+ * @description Sends a 6-digit verification code to the new email address. Code expires in 10 minutes.
339
+ */
340
+ post: operations["changeEmail"];
341
+ delete?: never;
342
+ options?: never;
343
+ head?: never;
344
+ patch?: never;
345
+ trace?: never;
346
+ };
347
+ "/v1/auth/verify-email-change": {
348
+ parameters: {
349
+ query?: never;
350
+ header?: never;
351
+ path?: never;
352
+ cookie?: never;
353
+ };
354
+ get?: never;
355
+ put?: never;
356
+ /** Verify email change with code */
357
+ post: operations["verifyEmailChange"];
358
+ delete?: never;
359
+ options?: never;
360
+ head?: never;
361
+ patch?: never;
362
+ trace?: never;
363
+ };
364
+ "/v1/auth/passkeys/register/begin": {
365
+ parameters: {
366
+ query?: never;
367
+ header?: never;
368
+ path?: never;
369
+ cookie?: never;
370
+ };
371
+ get?: never;
372
+ put?: never;
373
+ /**
374
+ * Begin passkey registration
375
+ * @description Returns a WebAuthn challenge for creating a new passkey credential.
376
+ */
377
+ post: operations["passkeyRegisterBegin"];
378
+ delete?: never;
379
+ options?: never;
380
+ head?: never;
381
+ patch?: never;
382
+ trace?: never;
383
+ };
384
+ "/v1/auth/passkeys/register/complete": {
385
+ parameters: {
386
+ query?: never;
387
+ header?: never;
388
+ path?: never;
389
+ cookie?: never;
390
+ };
391
+ get?: never;
392
+ put?: never;
393
+ /** Complete passkey registration */
394
+ post: operations["passkeyRegisterComplete"];
395
+ delete?: never;
396
+ options?: never;
397
+ head?: never;
398
+ patch?: never;
399
+ trace?: never;
400
+ };
401
+ "/v1/auth/passkeys/assert/begin": {
402
+ parameters: {
403
+ query?: never;
404
+ header?: never;
405
+ path?: never;
406
+ cookie?: never;
407
+ };
408
+ get?: never;
409
+ put?: never;
410
+ /** Begin passkey authentication */
411
+ post: operations["passkeyAssertBegin"];
412
+ delete?: never;
413
+ options?: never;
414
+ head?: never;
415
+ patch?: never;
416
+ trace?: never;
417
+ };
418
+ "/v1/auth/passkeys/assert/complete": {
419
+ parameters: {
420
+ query?: never;
421
+ header?: never;
422
+ path?: never;
423
+ cookie?: never;
424
+ };
425
+ get?: never;
426
+ put?: never;
427
+ /** Complete passkey authentication */
428
+ post: operations["passkeyAssertComplete"];
429
+ delete?: never;
430
+ options?: never;
431
+ head?: never;
432
+ patch?: never;
433
+ trace?: never;
434
+ };
435
+ "/v1/auth/passkeys": {
436
+ parameters: {
437
+ query?: never;
438
+ header?: never;
439
+ path?: never;
440
+ cookie?: never;
441
+ };
442
+ /** List registered passkeys */
443
+ get: operations["listPasskeys"];
444
+ put?: never;
445
+ post?: never;
446
+ delete?: never;
447
+ options?: never;
448
+ head?: never;
449
+ patch?: never;
450
+ trace?: never;
451
+ };
452
+ "/v1/auth/passkeys/{passkey_id}": {
453
+ parameters: {
454
+ query?: never;
455
+ header?: never;
456
+ path?: never;
457
+ cookie?: never;
458
+ };
459
+ get?: never;
460
+ put?: never;
461
+ post?: never;
462
+ /** Delete a passkey */
463
+ delete: operations["deletePasskey"];
464
+ options?: never;
465
+ head?: never;
466
+ patch?: never;
467
+ trace?: never;
468
+ };
469
+ "/v1/approvals/request": {
470
+ parameters: {
471
+ query?: never;
472
+ header?: never;
473
+ path?: never;
474
+ cookie?: never;
475
+ };
476
+ get?: never;
477
+ put?: never;
478
+ /**
479
+ * Request human approval (agent-only)
480
+ * @description Agents can request policy changes or other sensitive actions that require human approval.
481
+ */
482
+ post: operations["requestApproval"];
483
+ delete?: never;
484
+ options?: never;
485
+ head?: never;
486
+ patch?: never;
487
+ trace?: never;
488
+ };
307
489
  "/v1/auth/me": {
308
490
  parameters: {
309
491
  query?: never;
@@ -551,6 +733,115 @@ export interface paths {
551
733
  patch?: never;
552
734
  trace?: never;
553
735
  };
736
+ "/v1/auth/devices": {
737
+ parameters: {
738
+ query?: never;
739
+ header?: never;
740
+ path?: never;
741
+ cookie?: never;
742
+ };
743
+ /**
744
+ * List devices for current user
745
+ * @description Returns all registered mobile devices for the authenticated user.
746
+ */
747
+ get: operations["listDevices"];
748
+ put?: never;
749
+ /**
750
+ * Register a mobile device
751
+ * @description Register a new mobile device for the authenticated user. Human-only.
752
+ * The device public key is used for step-up authentication challenges.
753
+ */
754
+ post: operations["registerDevice"];
755
+ delete?: never;
756
+ options?: never;
757
+ head?: never;
758
+ patch?: never;
759
+ trace?: never;
760
+ };
761
+ "/v1/auth/devices/{device_id}": {
762
+ parameters: {
763
+ query?: never;
764
+ header?: never;
765
+ path?: never;
766
+ cookie?: never;
767
+ };
768
+ get?: never;
769
+ put?: never;
770
+ post?: never;
771
+ /**
772
+ * Revoke a device
773
+ * @description Removes a registered device, invalidating its keys and push tokens.
774
+ */
775
+ delete: operations["revokeDevice"];
776
+ options?: never;
777
+ head?: never;
778
+ patch?: never;
779
+ trace?: never;
780
+ };
781
+ "/v1/auth/devices/{device_id}/challenge": {
782
+ parameters: {
783
+ query?: never;
784
+ header?: never;
785
+ path?: never;
786
+ cookie?: never;
787
+ };
788
+ get?: never;
789
+ put?: never;
790
+ /**
791
+ * Create step-up auth challenge
792
+ * @description Creates a cryptographic challenge bound to a specific action (e.g. approving
793
+ * a high-risk transaction). The device signs the challenge nonce to prove
794
+ * possession of the private key.
795
+ */
796
+ post: operations["createDeviceChallenge"];
797
+ delete?: never;
798
+ options?: never;
799
+ head?: never;
800
+ patch?: never;
801
+ trace?: never;
802
+ };
803
+ "/v1/auth/devices/{device_id}/attest": {
804
+ parameters: {
805
+ query?: never;
806
+ header?: never;
807
+ path?: never;
808
+ cookie?: never;
809
+ };
810
+ get?: never;
811
+ put?: never;
812
+ /**
813
+ * Attest device challenge
814
+ * @description Submit a signed challenge nonce to complete step-up authentication.
815
+ * Returns a short-lived step-up token that can be used for the bound action.
816
+ */
817
+ post: operations["attestDeviceChallenge"];
818
+ delete?: never;
819
+ options?: never;
820
+ head?: never;
821
+ patch?: never;
822
+ trace?: never;
823
+ };
824
+ "/v1/auth/devices/{device_id}/push-token": {
825
+ parameters: {
826
+ query?: never;
827
+ header?: never;
828
+ path?: never;
829
+ cookie?: never;
830
+ };
831
+ get?: never;
832
+ put?: never;
833
+ /**
834
+ * Register push notification token
835
+ * @description Associates a push notification token (APNs or FCM) with a registered device
836
+ * so the server can send approval requests and alerts.
837
+ */
838
+ post: operations["registerPushToken"];
839
+ delete?: never;
840
+ options?: never;
841
+ head?: never;
842
+ patch?: never;
843
+ trace?: never;
844
+ };
554
845
  "/v1/vaults": {
555
846
  parameters: {
556
847
  query?: never;
@@ -2877,29 +3168,91 @@ export interface paths {
2877
3168
  patch?: never;
2878
3169
  trace?: never;
2879
3170
  };
2880
- }
2881
- export type webhooks = Record<string, never>;
2882
- export interface components {
2883
- schemas: {
2884
- /** @description RFC 7807 error envelope */
2885
- ProblemDetails: {
2886
- type?: string;
2887
- title?: string;
2888
- status?: number;
2889
- detail?: string;
2890
- };
2891
- ResetUsageEventsResponse: {
2892
- /**
2893
- * Format: int64
2894
- * @description Number of usage_events rows removed
2895
- */
2896
- deleted_events: number;
2897
- };
2898
- ResetUsageForUserEmailRequest: {
2899
- /** Format: email */
2900
- email: string;
3171
+ "/v1/approvals": {
3172
+ parameters: {
3173
+ query?: never;
3174
+ header?: never;
3175
+ path?: never;
3176
+ cookie?: never;
2901
3177
  };
2902
- ResetUsageForUserEmailResponse: {
3178
+ /**
3179
+ * List pending approvals
3180
+ * @description Returns approvals for the authenticated user's organization.
3181
+ * Human-only. Supports filtering by status and pagination.
3182
+ */
3183
+ get: operations["listApprovals"];
3184
+ put?: never;
3185
+ post?: never;
3186
+ delete?: never;
3187
+ options?: never;
3188
+ head?: never;
3189
+ patch?: never;
3190
+ trace?: never;
3191
+ };
3192
+ "/v1/approvals/{approval_id}": {
3193
+ parameters: {
3194
+ query?: never;
3195
+ header?: never;
3196
+ path?: never;
3197
+ cookie?: never;
3198
+ };
3199
+ /**
3200
+ * Get approval details
3201
+ * @description Returns details for a single approval by ID.
3202
+ */
3203
+ get: operations["getApproval"];
3204
+ put?: never;
3205
+ post?: never;
3206
+ delete?: never;
3207
+ options?: never;
3208
+ head?: never;
3209
+ patch?: never;
3210
+ trace?: never;
3211
+ };
3212
+ "/v1/approvals/{approval_id}/decide": {
3213
+ parameters: {
3214
+ query?: never;
3215
+ header?: never;
3216
+ path?: never;
3217
+ cookie?: never;
3218
+ };
3219
+ get?: never;
3220
+ put?: never;
3221
+ /**
3222
+ * Approve or reject
3223
+ * @description Submit a decision (approve or reject) for a pending approval.
3224
+ * Human-only. The approval must be in `pending` status.
3225
+ */
3226
+ post: operations["decideApproval"];
3227
+ delete?: never;
3228
+ options?: never;
3229
+ head?: never;
3230
+ patch?: never;
3231
+ trace?: never;
3232
+ };
3233
+ }
3234
+ export type webhooks = Record<string, never>;
3235
+ export interface components {
3236
+ schemas: {
3237
+ /** @description RFC 7807 error envelope */
3238
+ ProblemDetails: {
3239
+ type?: string;
3240
+ title?: string;
3241
+ status?: number;
3242
+ detail?: string;
3243
+ };
3244
+ ResetUsageEventsResponse: {
3245
+ /**
3246
+ * Format: int64
3247
+ * @description Number of usage_events rows removed
3248
+ */
3249
+ deleted_events: number;
3250
+ };
3251
+ ResetUsageForUserEmailRequest: {
3252
+ /** Format: email */
3253
+ email: string;
3254
+ };
3255
+ ResetUsageForUserEmailResponse: {
2903
3256
  /** Format: int64 */
2904
3257
  deleted_events: number;
2905
3258
  /** Format: uuid */
@@ -4807,6 +5160,102 @@ export interface components {
4807
5160
  return_to?: string | null;
4808
5161
  dashboard_url?: string;
4809
5162
  };
5163
+ RegisterDeviceRequest: {
5164
+ /**
5165
+ * @description Human-readable device name (e.g. "Kevin's iPhone")
5166
+ * @example My iPhone
5167
+ */
5168
+ name: string;
5169
+ /** @enum {string} */
5170
+ platform: "ios" | "android";
5171
+ /** @description PEM-encoded public key for step-up challenge signing */
5172
+ public_key_pem: string;
5173
+ /** @description Optional platform attestation (Apple DeviceCheck / Android SafetyNet) */
5174
+ attestation_blob?: string;
5175
+ };
5176
+ RegisterDeviceResponse: {
5177
+ /** Format: uuid */
5178
+ device_id: string;
5179
+ attestation_verified: boolean;
5180
+ };
5181
+ DeviceListResponse: {
5182
+ devices: components["schemas"]["DeviceResponse"][];
5183
+ };
5184
+ DeviceResponse: {
5185
+ /** Format: uuid */
5186
+ id: string;
5187
+ name: string;
5188
+ platform: string;
5189
+ attestation_verified: boolean;
5190
+ /** Format: date-time */
5191
+ last_used_at?: string | null;
5192
+ /** Format: date-time */
5193
+ created_at: string;
5194
+ };
5195
+ CreateDeviceChallengeRequest: {
5196
+ /** @description The action this challenge authorizes (e.g. "approve_transaction") */
5197
+ action: string;
5198
+ /** @description ID of the resource the action targets */
5199
+ target_id: string;
5200
+ };
5201
+ DeviceChallengeResponse: {
5202
+ challenge_nonce: string;
5203
+ /** Format: date-time */
5204
+ expires_at: string;
5205
+ /** @description SHA-256 binding the challenge to the requested action and target */
5206
+ action_bound_hash: string;
5207
+ };
5208
+ AttestDeviceChallengeRequest: {
5209
+ challenge_nonce: string;
5210
+ /** @description Signature over the challenge nonce using the device's private key */
5211
+ signature: string;
5212
+ };
5213
+ AttestDeviceChallengeResponse: {
5214
+ /** @description Short-lived token authorizing the bound action */
5215
+ step_up_token: string;
5216
+ /** Format: date-time */
5217
+ expires_at: string;
5218
+ };
5219
+ RegisterPushTokenRequest: {
5220
+ /** @description Push notification token from APNs or FCM */
5221
+ token: string;
5222
+ /** @enum {string} */
5223
+ platform: "apns" | "fcm";
5224
+ };
5225
+ DecideApprovalRequest: {
5226
+ /** @enum {string} */
5227
+ decision: "approve" | "reject";
5228
+ /** @description Optional human-readable reason for the decision */
5229
+ reason?: string;
5230
+ };
5231
+ ApprovalResponse: {
5232
+ /** Format: uuid */
5233
+ id: string;
5234
+ /** Format: uuid */
5235
+ org_id: string;
5236
+ /** Format: uuid */
5237
+ user_id: string;
5238
+ /** Format: uuid */
5239
+ agent_id?: string | null;
5240
+ action: string;
5241
+ target_type: string;
5242
+ target_id: string;
5243
+ risk_tier: number;
5244
+ /** @enum {string} */
5245
+ status: "pending" | "approved" | "rejected" | "expired";
5246
+ /** @description Structured summary of the action requiring approval */
5247
+ summary: Record<string, never>;
5248
+ reason?: string | null;
5249
+ decision_reason?: string | null;
5250
+ /** Format: uuid */
5251
+ decided_by?: string | null;
5252
+ /** Format: date-time */
5253
+ decided_at?: string | null;
5254
+ /** Format: date-time */
5255
+ expires_at?: string | null;
5256
+ /** Format: date-time */
5257
+ created_at: string;
5258
+ };
4810
5259
  };
4811
5260
  responses: {
4812
5261
  /** @description Invalid request */
@@ -5115,19 +5564,305 @@ export interface operations {
5115
5564
  };
5116
5565
  };
5117
5566
  responses: {
5118
- /** @description Account created (pending verification or auto-login) */
5119
- 200: {
5567
+ /** @description Account created (pending verification or auto-login) */
5568
+ 200: {
5569
+ headers: {
5570
+ [name: string]: unknown;
5571
+ };
5572
+ content: {
5573
+ "application/json": components["schemas"]["SignupResponse"];
5574
+ };
5575
+ };
5576
+ 400: components["responses"]["BadRequest"];
5577
+ };
5578
+ };
5579
+ verifyEmail: {
5580
+ parameters: {
5581
+ query?: never;
5582
+ header?: never;
5583
+ path?: never;
5584
+ cookie?: never;
5585
+ };
5586
+ requestBody: {
5587
+ content: {
5588
+ "application/json": {
5589
+ token: string;
5590
+ };
5591
+ };
5592
+ };
5593
+ responses: {
5594
+ /** @description Email verified */
5595
+ 200: {
5596
+ headers: {
5597
+ [name: string]: unknown;
5598
+ };
5599
+ content: {
5600
+ "application/json": components["schemas"]["TokenResponse"];
5601
+ };
5602
+ };
5603
+ 400: components["responses"]["BadRequest"];
5604
+ };
5605
+ };
5606
+ forgotPassword: {
5607
+ parameters: {
5608
+ query?: never;
5609
+ header?: never;
5610
+ path?: never;
5611
+ cookie?: never;
5612
+ };
5613
+ requestBody: {
5614
+ content: {
5615
+ "application/json": components["schemas"]["ForgotPasswordRequest"];
5616
+ };
5617
+ };
5618
+ responses: {
5619
+ /** @description Acknowledgement (check email if account exists) */
5620
+ 200: {
5621
+ headers: {
5622
+ [name: string]: unknown;
5623
+ };
5624
+ content: {
5625
+ "application/json": components["schemas"]["ForgotPasswordResponse"];
5626
+ };
5627
+ };
5628
+ };
5629
+ };
5630
+ resetPassword: {
5631
+ parameters: {
5632
+ query?: never;
5633
+ header?: never;
5634
+ path?: never;
5635
+ cookie?: never;
5636
+ };
5637
+ requestBody: {
5638
+ content: {
5639
+ "application/json": components["schemas"]["ResetPasswordRequest"];
5640
+ };
5641
+ };
5642
+ responses: {
5643
+ /** @description Password updated */
5644
+ 200: {
5645
+ headers: {
5646
+ [name: string]: unknown;
5647
+ };
5648
+ content: {
5649
+ "application/json": components["schemas"]["ResetPasswordResponse"];
5650
+ };
5651
+ };
5652
+ 400: components["responses"]["BadRequest"];
5653
+ };
5654
+ };
5655
+ googleAuth: {
5656
+ parameters: {
5657
+ query?: never;
5658
+ header?: never;
5659
+ path?: never;
5660
+ cookie?: never;
5661
+ };
5662
+ requestBody: {
5663
+ content: {
5664
+ "application/json": components["schemas"]["GoogleAuthRequest"];
5665
+ };
5666
+ };
5667
+ responses: {
5668
+ /** @description Authenticated */
5669
+ 200: {
5670
+ headers: {
5671
+ [name: string]: unknown;
5672
+ };
5673
+ content: {
5674
+ "application/json": components["schemas"]["TokenResponse"];
5675
+ };
5676
+ };
5677
+ 401: components["responses"]["Unauthorized"];
5678
+ };
5679
+ };
5680
+ changePassword: {
5681
+ parameters: {
5682
+ query?: never;
5683
+ header?: never;
5684
+ path?: never;
5685
+ cookie?: never;
5686
+ };
5687
+ requestBody: {
5688
+ content: {
5689
+ "application/json": components["schemas"]["ChangePasswordRequest"];
5690
+ };
5691
+ };
5692
+ responses: {
5693
+ /** @description Password changed */
5694
+ 204: {
5695
+ headers: {
5696
+ [name: string]: unknown;
5697
+ };
5698
+ content?: never;
5699
+ };
5700
+ 400: components["responses"]["BadRequest"];
5701
+ };
5702
+ };
5703
+ setPassword: {
5704
+ parameters: {
5705
+ query?: never;
5706
+ header?: never;
5707
+ path?: never;
5708
+ cookie?: never;
5709
+ };
5710
+ requestBody: {
5711
+ content: {
5712
+ "application/json": {
5713
+ password: string;
5714
+ password_confirm: string;
5715
+ };
5716
+ };
5717
+ };
5718
+ responses: {
5719
+ /** @description Password set successfully */
5720
+ 200: {
5721
+ headers: {
5722
+ [name: string]: unknown;
5723
+ };
5724
+ content: {
5725
+ "application/json": {
5726
+ message?: string;
5727
+ };
5728
+ };
5729
+ };
5730
+ 400: components["responses"]["BadRequest"];
5731
+ };
5732
+ };
5733
+ changeEmail: {
5734
+ parameters: {
5735
+ query?: never;
5736
+ header?: never;
5737
+ path?: never;
5738
+ cookie?: never;
5739
+ };
5740
+ requestBody: {
5741
+ content: {
5742
+ "application/json": {
5743
+ /** Format: email */
5744
+ new_email: string;
5745
+ };
5746
+ };
5747
+ };
5748
+ responses: {
5749
+ /** @description Verification code sent */
5750
+ 200: {
5751
+ headers: {
5752
+ [name: string]: unknown;
5753
+ };
5754
+ content: {
5755
+ "application/json": {
5756
+ message?: string;
5757
+ new_email?: string;
5758
+ expires_in_seconds?: number;
5759
+ };
5760
+ };
5761
+ };
5762
+ 400: components["responses"]["BadRequest"];
5763
+ /** @description Email already in use */
5764
+ 409: {
5765
+ headers: {
5766
+ [name: string]: unknown;
5767
+ };
5768
+ content?: never;
5769
+ };
5770
+ };
5771
+ };
5772
+ verifyEmailChange: {
5773
+ parameters: {
5774
+ query?: never;
5775
+ header?: never;
5776
+ path?: never;
5777
+ cookie?: never;
5778
+ };
5779
+ requestBody: {
5780
+ content: {
5781
+ "application/json": {
5782
+ code: string;
5783
+ };
5784
+ };
5785
+ };
5786
+ responses: {
5787
+ /** @description Email updated */
5788
+ 200: {
5789
+ headers: {
5790
+ [name: string]: unknown;
5791
+ };
5792
+ content: {
5793
+ "application/json": {
5794
+ message?: string;
5795
+ email?: string;
5796
+ };
5797
+ };
5798
+ };
5799
+ 400: components["responses"]["BadRequest"];
5800
+ };
5801
+ };
5802
+ passkeyRegisterBegin: {
5803
+ parameters: {
5804
+ query?: never;
5805
+ header?: never;
5806
+ path?: never;
5807
+ cookie?: never;
5808
+ };
5809
+ requestBody?: never;
5810
+ responses: {
5811
+ /** @description Registration options */
5812
+ 200: {
5813
+ headers: {
5814
+ [name: string]: unknown;
5815
+ };
5816
+ content: {
5817
+ "application/json": {
5818
+ challenge?: string;
5819
+ rp_id?: string;
5820
+ rp_name?: string;
5821
+ user_id?: string;
5822
+ user_name?: string;
5823
+ user_display_name?: string;
5824
+ attestation?: string;
5825
+ authenticator_selection?: Record<string, never>;
5826
+ };
5827
+ };
5828
+ };
5829
+ };
5830
+ };
5831
+ passkeyRegisterComplete: {
5832
+ parameters: {
5833
+ query?: never;
5834
+ header?: never;
5835
+ path?: never;
5836
+ cookie?: never;
5837
+ };
5838
+ requestBody: {
5839
+ content: {
5840
+ "application/json": {
5841
+ credential_id: string;
5842
+ attestation_object: string;
5843
+ client_data_json: string;
5844
+ transports?: string[];
5845
+ name?: string;
5846
+ };
5847
+ };
5848
+ };
5849
+ responses: {
5850
+ /** @description Passkey registered */
5851
+ 201: {
5120
5852
  headers: {
5121
5853
  [name: string]: unknown;
5122
5854
  };
5123
5855
  content: {
5124
- "application/json": components["schemas"]["SignupResponse"];
5856
+ "application/json": {
5857
+ /** Format: uuid */
5858
+ passkey_id?: string;
5859
+ credential_id?: string;
5860
+ };
5125
5861
  };
5126
5862
  };
5127
- 400: components["responses"]["BadRequest"];
5128
5863
  };
5129
5864
  };
5130
- verifyEmail: {
5865
+ passkeyAssertBegin: {
5131
5866
  parameters: {
5132
5867
  query?: never;
5133
5868
  header?: never;
@@ -5137,24 +5872,30 @@ export interface operations {
5137
5872
  requestBody: {
5138
5873
  content: {
5139
5874
  "application/json": {
5140
- token: string;
5875
+ /** Format: email */
5876
+ email?: string;
5141
5877
  };
5142
5878
  };
5143
5879
  };
5144
5880
  responses: {
5145
- /** @description Email verified */
5881
+ /** @description Assertion options */
5146
5882
  200: {
5147
5883
  headers: {
5148
5884
  [name: string]: unknown;
5149
5885
  };
5150
5886
  content: {
5151
- "application/json": components["schemas"]["TokenResponse"];
5887
+ "application/json": {
5888
+ challenge?: string;
5889
+ rp_id?: string;
5890
+ timeout?: number;
5891
+ user_verification?: string;
5892
+ allow_credentials?: Record<string, never>[];
5893
+ };
5152
5894
  };
5153
5895
  };
5154
- 400: components["responses"]["BadRequest"];
5155
5896
  };
5156
5897
  };
5157
- forgotPassword: {
5898
+ passkeyAssertComplete: {
5158
5899
  parameters: {
5159
5900
  query?: never;
5160
5901
  header?: never;
@@ -5163,72 +5904,80 @@ export interface operations {
5163
5904
  };
5164
5905
  requestBody: {
5165
5906
  content: {
5166
- "application/json": components["schemas"]["ForgotPasswordRequest"];
5907
+ "application/json": {
5908
+ credential_id: string;
5909
+ authenticator_data: string;
5910
+ client_data_json: string;
5911
+ signature: string;
5912
+ };
5167
5913
  };
5168
5914
  };
5169
5915
  responses: {
5170
- /** @description Acknowledgement (check email if account exists) */
5916
+ /** @description Authentication successful */
5171
5917
  200: {
5172
5918
  headers: {
5173
5919
  [name: string]: unknown;
5174
5920
  };
5175
5921
  content: {
5176
- "application/json": components["schemas"]["ForgotPasswordResponse"];
5922
+ "application/json": {
5923
+ token?: string;
5924
+ refresh_token?: string;
5925
+ user?: Record<string, never>;
5926
+ };
5177
5927
  };
5178
5928
  };
5179
5929
  };
5180
5930
  };
5181
- resetPassword: {
5931
+ listPasskeys: {
5182
5932
  parameters: {
5183
5933
  query?: never;
5184
5934
  header?: never;
5185
5935
  path?: never;
5186
5936
  cookie?: never;
5187
5937
  };
5188
- requestBody: {
5189
- content: {
5190
- "application/json": components["schemas"]["ResetPasswordRequest"];
5191
- };
5192
- };
5938
+ requestBody?: never;
5193
5939
  responses: {
5194
- /** @description Password updated */
5940
+ /** @description List of passkeys */
5195
5941
  200: {
5196
5942
  headers: {
5197
5943
  [name: string]: unknown;
5198
5944
  };
5199
5945
  content: {
5200
- "application/json": components["schemas"]["ResetPasswordResponse"];
5946
+ "application/json": {
5947
+ passkeys?: {
5948
+ /** Format: uuid */
5949
+ id?: string;
5950
+ credential_id?: string;
5951
+ name?: string;
5952
+ last_used_at?: string;
5953
+ created_at?: string;
5954
+ }[];
5955
+ };
5201
5956
  };
5202
5957
  };
5203
- 400: components["responses"]["BadRequest"];
5204
5958
  };
5205
5959
  };
5206
- googleAuth: {
5960
+ deletePasskey: {
5207
5961
  parameters: {
5208
5962
  query?: never;
5209
5963
  header?: never;
5210
- path?: never;
5211
- cookie?: never;
5212
- };
5213
- requestBody: {
5214
- content: {
5215
- "application/json": components["schemas"]["GoogleAuthRequest"];
5964
+ path: {
5965
+ passkey_id: string;
5216
5966
  };
5967
+ cookie?: never;
5217
5968
  };
5969
+ requestBody?: never;
5218
5970
  responses: {
5219
- /** @description Authenticated */
5971
+ /** @description Passkey deleted */
5220
5972
  200: {
5221
5973
  headers: {
5222
5974
  [name: string]: unknown;
5223
5975
  };
5224
- content: {
5225
- "application/json": components["schemas"]["TokenResponse"];
5226
- };
5976
+ content?: never;
5227
5977
  };
5228
- 401: components["responses"]["Unauthorized"];
5229
5978
  };
5230
5979
  };
5231
- changePassword: {
5980
+ requestApproval: {
5232
5981
  parameters: {
5233
5982
  query?: never;
5234
5983
  header?: never;
@@ -5237,18 +5986,29 @@ export interface operations {
5237
5986
  };
5238
5987
  requestBody: {
5239
5988
  content: {
5240
- "application/json": components["schemas"]["ChangePasswordRequest"];
5989
+ "application/json": {
5990
+ /** @description Type of action (e.g. policy_change) */
5991
+ action: string;
5992
+ target_type: string;
5993
+ target_id: string;
5994
+ /** @description JSON payload describing the request */
5995
+ summary: Record<string, never>;
5996
+ reason?: string;
5997
+ risk_tier?: number;
5998
+ };
5241
5999
  };
5242
6000
  };
5243
6001
  responses: {
5244
- /** @description Password changed */
5245
- 204: {
6002
+ /** @description Approval request created */
6003
+ 202: {
5246
6004
  headers: {
5247
6005
  [name: string]: unknown;
5248
6006
  };
5249
- content?: never;
6007
+ content: {
6008
+ "application/json": components["schemas"]["ApprovalResponse"];
6009
+ };
5250
6010
  };
5251
- 400: components["responses"]["BadRequest"];
6011
+ 403: components["responses"]["Forbidden"];
5252
6012
  };
5253
6013
  };
5254
6014
  getMe: {
@@ -5686,6 +6446,154 @@ export interface operations {
5686
6446
  403: components["responses"]["Forbidden"];
5687
6447
  };
5688
6448
  };
6449
+ listDevices: {
6450
+ parameters: {
6451
+ query?: never;
6452
+ header?: never;
6453
+ path?: never;
6454
+ cookie?: never;
6455
+ };
6456
+ requestBody?: never;
6457
+ responses: {
6458
+ /** @description Device list */
6459
+ 200: {
6460
+ headers: {
6461
+ [name: string]: unknown;
6462
+ };
6463
+ content: {
6464
+ "application/json": components["schemas"]["DeviceListResponse"];
6465
+ };
6466
+ };
6467
+ };
6468
+ };
6469
+ registerDevice: {
6470
+ parameters: {
6471
+ query?: never;
6472
+ header?: never;
6473
+ path?: never;
6474
+ cookie?: never;
6475
+ };
6476
+ requestBody: {
6477
+ content: {
6478
+ "application/json": components["schemas"]["RegisterDeviceRequest"];
6479
+ };
6480
+ };
6481
+ responses: {
6482
+ /** @description Device registered */
6483
+ 201: {
6484
+ headers: {
6485
+ [name: string]: unknown;
6486
+ };
6487
+ content: {
6488
+ "application/json": components["schemas"]["RegisterDeviceResponse"];
6489
+ };
6490
+ };
6491
+ 400: components["responses"]["BadRequest"];
6492
+ 403: components["responses"]["Forbidden"];
6493
+ };
6494
+ };
6495
+ revokeDevice: {
6496
+ parameters: {
6497
+ query?: never;
6498
+ header?: never;
6499
+ path: {
6500
+ device_id: string;
6501
+ };
6502
+ cookie?: never;
6503
+ };
6504
+ requestBody?: never;
6505
+ responses: {
6506
+ /** @description Device revoked */
6507
+ 204: {
6508
+ headers: {
6509
+ [name: string]: unknown;
6510
+ };
6511
+ content?: never;
6512
+ };
6513
+ 404: components["responses"]["NotFound"];
6514
+ };
6515
+ };
6516
+ createDeviceChallenge: {
6517
+ parameters: {
6518
+ query?: never;
6519
+ header?: never;
6520
+ path: {
6521
+ device_id: string;
6522
+ };
6523
+ cookie?: never;
6524
+ };
6525
+ requestBody: {
6526
+ content: {
6527
+ "application/json": components["schemas"]["CreateDeviceChallengeRequest"];
6528
+ };
6529
+ };
6530
+ responses: {
6531
+ /** @description Challenge created */
6532
+ 200: {
6533
+ headers: {
6534
+ [name: string]: unknown;
6535
+ };
6536
+ content: {
6537
+ "application/json": components["schemas"]["DeviceChallengeResponse"];
6538
+ };
6539
+ };
6540
+ 404: components["responses"]["NotFound"];
6541
+ };
6542
+ };
6543
+ attestDeviceChallenge: {
6544
+ parameters: {
6545
+ query?: never;
6546
+ header?: never;
6547
+ path: {
6548
+ device_id: string;
6549
+ };
6550
+ cookie?: never;
6551
+ };
6552
+ requestBody: {
6553
+ content: {
6554
+ "application/json": components["schemas"]["AttestDeviceChallengeRequest"];
6555
+ };
6556
+ };
6557
+ responses: {
6558
+ /** @description Attestation successful */
6559
+ 200: {
6560
+ headers: {
6561
+ [name: string]: unknown;
6562
+ };
6563
+ content: {
6564
+ "application/json": components["schemas"]["AttestDeviceChallengeResponse"];
6565
+ };
6566
+ };
6567
+ 400: components["responses"]["BadRequest"];
6568
+ 404: components["responses"]["NotFound"];
6569
+ };
6570
+ };
6571
+ registerPushToken: {
6572
+ parameters: {
6573
+ query?: never;
6574
+ header?: never;
6575
+ path: {
6576
+ device_id: string;
6577
+ };
6578
+ cookie?: never;
6579
+ };
6580
+ requestBody: {
6581
+ content: {
6582
+ "application/json": components["schemas"]["RegisterPushTokenRequest"];
6583
+ };
6584
+ };
6585
+ responses: {
6586
+ /** @description Push token registered */
6587
+ 204: {
6588
+ headers: {
6589
+ [name: string]: unknown;
6590
+ };
6591
+ content?: never;
6592
+ };
6593
+ 400: components["responses"]["BadRequest"];
6594
+ 404: components["responses"]["NotFound"];
6595
+ };
6596
+ };
5689
6597
  listVaults: {
5690
6598
  parameters: {
5691
6599
  query?: never;
@@ -8327,5 +9235,84 @@ export interface operations {
8327
9235
  };
8328
9236
  };
8329
9237
  };
9238
+ listApprovals: {
9239
+ parameters: {
9240
+ query?: {
9241
+ /** @description Filter by approval status */
9242
+ status?: "pending" | "approved" | "rejected" | "expired";
9243
+ limit?: number;
9244
+ offset?: number;
9245
+ };
9246
+ header?: never;
9247
+ path?: never;
9248
+ cookie?: never;
9249
+ };
9250
+ requestBody?: never;
9251
+ responses: {
9252
+ /** @description Approval list */
9253
+ 200: {
9254
+ headers: {
9255
+ [name: string]: unknown;
9256
+ };
9257
+ content: {
9258
+ "application/json": {
9259
+ approvals: components["schemas"]["ApprovalResponse"][];
9260
+ };
9261
+ };
9262
+ };
9263
+ };
9264
+ };
9265
+ getApproval: {
9266
+ parameters: {
9267
+ query?: never;
9268
+ header?: never;
9269
+ path: {
9270
+ approval_id: string;
9271
+ };
9272
+ cookie?: never;
9273
+ };
9274
+ requestBody?: never;
9275
+ responses: {
9276
+ /** @description Approval details */
9277
+ 200: {
9278
+ headers: {
9279
+ [name: string]: unknown;
9280
+ };
9281
+ content: {
9282
+ "application/json": components["schemas"]["ApprovalResponse"];
9283
+ };
9284
+ };
9285
+ 404: components["responses"]["NotFound"];
9286
+ };
9287
+ };
9288
+ decideApproval: {
9289
+ parameters: {
9290
+ query?: never;
9291
+ header?: never;
9292
+ path: {
9293
+ approval_id: string;
9294
+ };
9295
+ cookie?: never;
9296
+ };
9297
+ requestBody: {
9298
+ content: {
9299
+ "application/json": components["schemas"]["DecideApprovalRequest"];
9300
+ };
9301
+ };
9302
+ responses: {
9303
+ /** @description Decision recorded */
9304
+ 200: {
9305
+ headers: {
9306
+ [name: string]: unknown;
9307
+ };
9308
+ content: {
9309
+ "application/json": components["schemas"]["ApprovalResponse"];
9310
+ };
9311
+ };
9312
+ 400: components["responses"]["BadRequest"];
9313
+ 404: components["responses"]["NotFound"];
9314
+ 409: components["responses"]["Conflict"];
9315
+ };
9316
+ };
8330
9317
  }
8331
9318
  //# sourceMappingURL=api-types.d.ts.map