@1claw/sdk 0.25.0 → 0.27.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;
@@ -2646,46 +2937,115 @@ export interface paths {
2646
2937
  patch?: never;
2647
2938
  trace?: never;
2648
2939
  };
2649
- "/v1/platform/apps/{appId}/audit": {
2940
+ "/v1/platform/connections/{connectionId}/reissue-claim": {
2650
2941
  parameters: {
2651
2942
  query?: never;
2652
2943
  header?: never;
2653
2944
  path?: never;
2654
2945
  cookie?: never;
2655
2946
  };
2947
+ get?: never;
2948
+ put?: never;
2656
2949
  /**
2657
- * Platform audit log
2658
- * @description Returns audit events related to this platform app.
2950
+ * Reissue a claim URL
2951
+ * @description Mints a fresh 10-minute claim token for an already-bootstrapped connection without re-provisioning resources. Use when the original claim URL has expired.
2659
2952
  */
2660
- get: {
2953
+ post: {
2661
2954
  parameters: {
2662
- query?: {
2663
- limit?: number;
2664
- offset?: number;
2665
- };
2955
+ query?: never;
2666
2956
  header?: never;
2667
2957
  path: {
2668
- appId: string;
2958
+ connectionId: string;
2669
2959
  };
2670
2960
  cookie?: never;
2671
2961
  };
2672
- requestBody?: never;
2962
+ requestBody?: {
2963
+ content: {
2964
+ "application/json": {
2965
+ /** @description Optional redirect URL after claim */
2966
+ return_to?: string;
2967
+ };
2968
+ };
2969
+ };
2673
2970
  responses: {
2674
- /** @description Audit events */
2971
+ /** @description New claim URL issued */
2675
2972
  200: {
2676
2973
  headers: {
2677
2974
  [name: string]: unknown;
2678
2975
  };
2679
2976
  content: {
2680
2977
  "application/json": {
2681
- events?: Record<string, never>[];
2978
+ claim_url?: string;
2979
+ claim_token?: string;
2980
+ /** @description Seconds until expiry (600 = 10 min) */
2981
+ expires_in?: number;
2982
+ /** Format: uuid */
2983
+ connection_id?: string;
2682
2984
  };
2683
2985
  };
2684
2986
  };
2685
- };
2686
- };
2687
- put?: never;
2688
- post?: never;
2987
+ /** @description Connection not yet bootstrapped */
2988
+ 400: {
2989
+ headers: {
2990
+ [name: string]: unknown;
2991
+ };
2992
+ content?: never;
2993
+ };
2994
+ /** @description Connection not found */
2995
+ 404: {
2996
+ headers: {
2997
+ [name: string]: unknown;
2998
+ };
2999
+ content?: never;
3000
+ };
3001
+ };
3002
+ };
3003
+ delete?: never;
3004
+ options?: never;
3005
+ head?: never;
3006
+ patch?: never;
3007
+ trace?: never;
3008
+ };
3009
+ "/v1/platform/apps/{appId}/audit": {
3010
+ parameters: {
3011
+ query?: never;
3012
+ header?: never;
3013
+ path?: never;
3014
+ cookie?: never;
3015
+ };
3016
+ /**
3017
+ * Platform audit log
3018
+ * @description Returns audit events related to this platform app.
3019
+ */
3020
+ get: {
3021
+ parameters: {
3022
+ query?: {
3023
+ limit?: number;
3024
+ offset?: number;
3025
+ };
3026
+ header?: never;
3027
+ path: {
3028
+ appId: string;
3029
+ };
3030
+ cookie?: never;
3031
+ };
3032
+ requestBody?: never;
3033
+ responses: {
3034
+ /** @description Audit events */
3035
+ 200: {
3036
+ headers: {
3037
+ [name: string]: unknown;
3038
+ };
3039
+ content: {
3040
+ "application/json": {
3041
+ events?: Record<string, never>[];
3042
+ };
3043
+ };
3044
+ };
3045
+ };
3046
+ };
3047
+ put?: never;
3048
+ post?: never;
2689
3049
  delete?: never;
2690
3050
  options?: never;
2691
3051
  head?: never;
@@ -2877,6 +3237,68 @@ export interface paths {
2877
3237
  patch?: never;
2878
3238
  trace?: never;
2879
3239
  };
3240
+ "/v1/approvals": {
3241
+ parameters: {
3242
+ query?: never;
3243
+ header?: never;
3244
+ path?: never;
3245
+ cookie?: never;
3246
+ };
3247
+ /**
3248
+ * List pending approvals
3249
+ * @description Returns approvals for the authenticated user's organization.
3250
+ * Human-only. Supports filtering by status and pagination.
3251
+ */
3252
+ get: operations["listApprovals"];
3253
+ put?: never;
3254
+ post?: never;
3255
+ delete?: never;
3256
+ options?: never;
3257
+ head?: never;
3258
+ patch?: never;
3259
+ trace?: never;
3260
+ };
3261
+ "/v1/approvals/{approval_id}": {
3262
+ parameters: {
3263
+ query?: never;
3264
+ header?: never;
3265
+ path?: never;
3266
+ cookie?: never;
3267
+ };
3268
+ /**
3269
+ * Get approval details
3270
+ * @description Returns details for a single approval by ID.
3271
+ */
3272
+ get: operations["getApproval"];
3273
+ put?: never;
3274
+ post?: never;
3275
+ delete?: never;
3276
+ options?: never;
3277
+ head?: never;
3278
+ patch?: never;
3279
+ trace?: never;
3280
+ };
3281
+ "/v1/approvals/{approval_id}/decide": {
3282
+ parameters: {
3283
+ query?: never;
3284
+ header?: never;
3285
+ path?: never;
3286
+ cookie?: never;
3287
+ };
3288
+ get?: never;
3289
+ put?: never;
3290
+ /**
3291
+ * Approve or reject
3292
+ * @description Submit a decision (approve or reject) for a pending approval.
3293
+ * Human-only. The approval must be in `pending` status.
3294
+ */
3295
+ post: operations["decideApproval"];
3296
+ delete?: never;
3297
+ options?: never;
3298
+ head?: never;
3299
+ patch?: never;
3300
+ trace?: never;
3301
+ };
2880
3302
  }
2881
3303
  export type webhooks = Record<string, never>;
2882
3304
  export interface components {
@@ -4807,6 +5229,102 @@ export interface components {
4807
5229
  return_to?: string | null;
4808
5230
  dashboard_url?: string;
4809
5231
  };
5232
+ RegisterDeviceRequest: {
5233
+ /**
5234
+ * @description Human-readable device name (e.g. "Kevin's iPhone")
5235
+ * @example My iPhone
5236
+ */
5237
+ name: string;
5238
+ /** @enum {string} */
5239
+ platform: "ios" | "android";
5240
+ /** @description PEM-encoded public key for step-up challenge signing */
5241
+ public_key_pem: string;
5242
+ /** @description Optional platform attestation (Apple DeviceCheck / Android SafetyNet) */
5243
+ attestation_blob?: string;
5244
+ };
5245
+ RegisterDeviceResponse: {
5246
+ /** Format: uuid */
5247
+ device_id: string;
5248
+ attestation_verified: boolean;
5249
+ };
5250
+ DeviceListResponse: {
5251
+ devices: components["schemas"]["DeviceResponse"][];
5252
+ };
5253
+ DeviceResponse: {
5254
+ /** Format: uuid */
5255
+ id: string;
5256
+ name: string;
5257
+ platform: string;
5258
+ attestation_verified: boolean;
5259
+ /** Format: date-time */
5260
+ last_used_at?: string | null;
5261
+ /** Format: date-time */
5262
+ created_at: string;
5263
+ };
5264
+ CreateDeviceChallengeRequest: {
5265
+ /** @description The action this challenge authorizes (e.g. "approve_transaction") */
5266
+ action: string;
5267
+ /** @description ID of the resource the action targets */
5268
+ target_id: string;
5269
+ };
5270
+ DeviceChallengeResponse: {
5271
+ challenge_nonce: string;
5272
+ /** Format: date-time */
5273
+ expires_at: string;
5274
+ /** @description SHA-256 binding the challenge to the requested action and target */
5275
+ action_bound_hash: string;
5276
+ };
5277
+ AttestDeviceChallengeRequest: {
5278
+ challenge_nonce: string;
5279
+ /** @description Signature over the challenge nonce using the device's private key */
5280
+ signature: string;
5281
+ };
5282
+ AttestDeviceChallengeResponse: {
5283
+ /** @description Short-lived token authorizing the bound action */
5284
+ step_up_token: string;
5285
+ /** Format: date-time */
5286
+ expires_at: string;
5287
+ };
5288
+ RegisterPushTokenRequest: {
5289
+ /** @description Push notification token from APNs or FCM */
5290
+ token: string;
5291
+ /** @enum {string} */
5292
+ platform: "apns" | "fcm";
5293
+ };
5294
+ DecideApprovalRequest: {
5295
+ /** @enum {string} */
5296
+ decision: "approve" | "reject";
5297
+ /** @description Optional human-readable reason for the decision */
5298
+ reason?: string;
5299
+ };
5300
+ ApprovalResponse: {
5301
+ /** Format: uuid */
5302
+ id: string;
5303
+ /** Format: uuid */
5304
+ org_id: string;
5305
+ /** Format: uuid */
5306
+ user_id: string;
5307
+ /** Format: uuid */
5308
+ agent_id?: string | null;
5309
+ action: string;
5310
+ target_type: string;
5311
+ target_id: string;
5312
+ risk_tier: number;
5313
+ /** @enum {string} */
5314
+ status: "pending" | "approved" | "rejected" | "expired";
5315
+ /** @description Structured summary of the action requiring approval */
5316
+ summary: Record<string, never>;
5317
+ reason?: string | null;
5318
+ decision_reason?: string | null;
5319
+ /** Format: uuid */
5320
+ decided_by?: string | null;
5321
+ /** Format: date-time */
5322
+ decided_at?: string | null;
5323
+ /** Format: date-time */
5324
+ expires_at?: string | null;
5325
+ /** Format: date-time */
5326
+ created_at: string;
5327
+ };
4810
5328
  };
4811
5329
  responses: {
4812
5330
  /** @description Invalid request */
@@ -5115,19 +5633,305 @@ export interface operations {
5115
5633
  };
5116
5634
  };
5117
5635
  responses: {
5118
- /** @description Account created (pending verification or auto-login) */
5119
- 200: {
5636
+ /** @description Account created (pending verification or auto-login) */
5637
+ 200: {
5638
+ headers: {
5639
+ [name: string]: unknown;
5640
+ };
5641
+ content: {
5642
+ "application/json": components["schemas"]["SignupResponse"];
5643
+ };
5644
+ };
5645
+ 400: components["responses"]["BadRequest"];
5646
+ };
5647
+ };
5648
+ verifyEmail: {
5649
+ parameters: {
5650
+ query?: never;
5651
+ header?: never;
5652
+ path?: never;
5653
+ cookie?: never;
5654
+ };
5655
+ requestBody: {
5656
+ content: {
5657
+ "application/json": {
5658
+ token: string;
5659
+ };
5660
+ };
5661
+ };
5662
+ responses: {
5663
+ /** @description Email verified */
5664
+ 200: {
5665
+ headers: {
5666
+ [name: string]: unknown;
5667
+ };
5668
+ content: {
5669
+ "application/json": components["schemas"]["TokenResponse"];
5670
+ };
5671
+ };
5672
+ 400: components["responses"]["BadRequest"];
5673
+ };
5674
+ };
5675
+ forgotPassword: {
5676
+ parameters: {
5677
+ query?: never;
5678
+ header?: never;
5679
+ path?: never;
5680
+ cookie?: never;
5681
+ };
5682
+ requestBody: {
5683
+ content: {
5684
+ "application/json": components["schemas"]["ForgotPasswordRequest"];
5685
+ };
5686
+ };
5687
+ responses: {
5688
+ /** @description Acknowledgement (check email if account exists) */
5689
+ 200: {
5690
+ headers: {
5691
+ [name: string]: unknown;
5692
+ };
5693
+ content: {
5694
+ "application/json": components["schemas"]["ForgotPasswordResponse"];
5695
+ };
5696
+ };
5697
+ };
5698
+ };
5699
+ resetPassword: {
5700
+ parameters: {
5701
+ query?: never;
5702
+ header?: never;
5703
+ path?: never;
5704
+ cookie?: never;
5705
+ };
5706
+ requestBody: {
5707
+ content: {
5708
+ "application/json": components["schemas"]["ResetPasswordRequest"];
5709
+ };
5710
+ };
5711
+ responses: {
5712
+ /** @description Password updated */
5713
+ 200: {
5714
+ headers: {
5715
+ [name: string]: unknown;
5716
+ };
5717
+ content: {
5718
+ "application/json": components["schemas"]["ResetPasswordResponse"];
5719
+ };
5720
+ };
5721
+ 400: components["responses"]["BadRequest"];
5722
+ };
5723
+ };
5724
+ googleAuth: {
5725
+ parameters: {
5726
+ query?: never;
5727
+ header?: never;
5728
+ path?: never;
5729
+ cookie?: never;
5730
+ };
5731
+ requestBody: {
5732
+ content: {
5733
+ "application/json": components["schemas"]["GoogleAuthRequest"];
5734
+ };
5735
+ };
5736
+ responses: {
5737
+ /** @description Authenticated */
5738
+ 200: {
5739
+ headers: {
5740
+ [name: string]: unknown;
5741
+ };
5742
+ content: {
5743
+ "application/json": components["schemas"]["TokenResponse"];
5744
+ };
5745
+ };
5746
+ 401: components["responses"]["Unauthorized"];
5747
+ };
5748
+ };
5749
+ changePassword: {
5750
+ parameters: {
5751
+ query?: never;
5752
+ header?: never;
5753
+ path?: never;
5754
+ cookie?: never;
5755
+ };
5756
+ requestBody: {
5757
+ content: {
5758
+ "application/json": components["schemas"]["ChangePasswordRequest"];
5759
+ };
5760
+ };
5761
+ responses: {
5762
+ /** @description Password changed */
5763
+ 204: {
5764
+ headers: {
5765
+ [name: string]: unknown;
5766
+ };
5767
+ content?: never;
5768
+ };
5769
+ 400: components["responses"]["BadRequest"];
5770
+ };
5771
+ };
5772
+ setPassword: {
5773
+ parameters: {
5774
+ query?: never;
5775
+ header?: never;
5776
+ path?: never;
5777
+ cookie?: never;
5778
+ };
5779
+ requestBody: {
5780
+ content: {
5781
+ "application/json": {
5782
+ password: string;
5783
+ password_confirm: string;
5784
+ };
5785
+ };
5786
+ };
5787
+ responses: {
5788
+ /** @description Password set successfully */
5789
+ 200: {
5790
+ headers: {
5791
+ [name: string]: unknown;
5792
+ };
5793
+ content: {
5794
+ "application/json": {
5795
+ message?: string;
5796
+ };
5797
+ };
5798
+ };
5799
+ 400: components["responses"]["BadRequest"];
5800
+ };
5801
+ };
5802
+ changeEmail: {
5803
+ parameters: {
5804
+ query?: never;
5805
+ header?: never;
5806
+ path?: never;
5807
+ cookie?: never;
5808
+ };
5809
+ requestBody: {
5810
+ content: {
5811
+ "application/json": {
5812
+ /** Format: email */
5813
+ new_email: string;
5814
+ };
5815
+ };
5816
+ };
5817
+ responses: {
5818
+ /** @description Verification code sent */
5819
+ 200: {
5820
+ headers: {
5821
+ [name: string]: unknown;
5822
+ };
5823
+ content: {
5824
+ "application/json": {
5825
+ message?: string;
5826
+ new_email?: string;
5827
+ expires_in_seconds?: number;
5828
+ };
5829
+ };
5830
+ };
5831
+ 400: components["responses"]["BadRequest"];
5832
+ /** @description Email already in use */
5833
+ 409: {
5834
+ headers: {
5835
+ [name: string]: unknown;
5836
+ };
5837
+ content?: never;
5838
+ };
5839
+ };
5840
+ };
5841
+ verifyEmailChange: {
5842
+ parameters: {
5843
+ query?: never;
5844
+ header?: never;
5845
+ path?: never;
5846
+ cookie?: never;
5847
+ };
5848
+ requestBody: {
5849
+ content: {
5850
+ "application/json": {
5851
+ code: string;
5852
+ };
5853
+ };
5854
+ };
5855
+ responses: {
5856
+ /** @description Email updated */
5857
+ 200: {
5858
+ headers: {
5859
+ [name: string]: unknown;
5860
+ };
5861
+ content: {
5862
+ "application/json": {
5863
+ message?: string;
5864
+ email?: string;
5865
+ };
5866
+ };
5867
+ };
5868
+ 400: components["responses"]["BadRequest"];
5869
+ };
5870
+ };
5871
+ passkeyRegisterBegin: {
5872
+ parameters: {
5873
+ query?: never;
5874
+ header?: never;
5875
+ path?: never;
5876
+ cookie?: never;
5877
+ };
5878
+ requestBody?: never;
5879
+ responses: {
5880
+ /** @description Registration options */
5881
+ 200: {
5882
+ headers: {
5883
+ [name: string]: unknown;
5884
+ };
5885
+ content: {
5886
+ "application/json": {
5887
+ challenge?: string;
5888
+ rp_id?: string;
5889
+ rp_name?: string;
5890
+ user_id?: string;
5891
+ user_name?: string;
5892
+ user_display_name?: string;
5893
+ attestation?: string;
5894
+ authenticator_selection?: Record<string, never>;
5895
+ };
5896
+ };
5897
+ };
5898
+ };
5899
+ };
5900
+ passkeyRegisterComplete: {
5901
+ parameters: {
5902
+ query?: never;
5903
+ header?: never;
5904
+ path?: never;
5905
+ cookie?: never;
5906
+ };
5907
+ requestBody: {
5908
+ content: {
5909
+ "application/json": {
5910
+ credential_id: string;
5911
+ attestation_object: string;
5912
+ client_data_json: string;
5913
+ transports?: string[];
5914
+ name?: string;
5915
+ };
5916
+ };
5917
+ };
5918
+ responses: {
5919
+ /** @description Passkey registered */
5920
+ 201: {
5120
5921
  headers: {
5121
5922
  [name: string]: unknown;
5122
5923
  };
5123
5924
  content: {
5124
- "application/json": components["schemas"]["SignupResponse"];
5925
+ "application/json": {
5926
+ /** Format: uuid */
5927
+ passkey_id?: string;
5928
+ credential_id?: string;
5929
+ };
5125
5930
  };
5126
5931
  };
5127
- 400: components["responses"]["BadRequest"];
5128
5932
  };
5129
5933
  };
5130
- verifyEmail: {
5934
+ passkeyAssertBegin: {
5131
5935
  parameters: {
5132
5936
  query?: never;
5133
5937
  header?: never;
@@ -5137,24 +5941,30 @@ export interface operations {
5137
5941
  requestBody: {
5138
5942
  content: {
5139
5943
  "application/json": {
5140
- token: string;
5944
+ /** Format: email */
5945
+ email?: string;
5141
5946
  };
5142
5947
  };
5143
5948
  };
5144
5949
  responses: {
5145
- /** @description Email verified */
5950
+ /** @description Assertion options */
5146
5951
  200: {
5147
5952
  headers: {
5148
5953
  [name: string]: unknown;
5149
5954
  };
5150
5955
  content: {
5151
- "application/json": components["schemas"]["TokenResponse"];
5956
+ "application/json": {
5957
+ challenge?: string;
5958
+ rp_id?: string;
5959
+ timeout?: number;
5960
+ user_verification?: string;
5961
+ allow_credentials?: Record<string, never>[];
5962
+ };
5152
5963
  };
5153
5964
  };
5154
- 400: components["responses"]["BadRequest"];
5155
5965
  };
5156
5966
  };
5157
- forgotPassword: {
5967
+ passkeyAssertComplete: {
5158
5968
  parameters: {
5159
5969
  query?: never;
5160
5970
  header?: never;
@@ -5163,72 +5973,80 @@ export interface operations {
5163
5973
  };
5164
5974
  requestBody: {
5165
5975
  content: {
5166
- "application/json": components["schemas"]["ForgotPasswordRequest"];
5976
+ "application/json": {
5977
+ credential_id: string;
5978
+ authenticator_data: string;
5979
+ client_data_json: string;
5980
+ signature: string;
5981
+ };
5167
5982
  };
5168
5983
  };
5169
5984
  responses: {
5170
- /** @description Acknowledgement (check email if account exists) */
5985
+ /** @description Authentication successful */
5171
5986
  200: {
5172
5987
  headers: {
5173
5988
  [name: string]: unknown;
5174
5989
  };
5175
5990
  content: {
5176
- "application/json": components["schemas"]["ForgotPasswordResponse"];
5991
+ "application/json": {
5992
+ token?: string;
5993
+ refresh_token?: string;
5994
+ user?: Record<string, never>;
5995
+ };
5177
5996
  };
5178
5997
  };
5179
5998
  };
5180
5999
  };
5181
- resetPassword: {
6000
+ listPasskeys: {
5182
6001
  parameters: {
5183
6002
  query?: never;
5184
6003
  header?: never;
5185
6004
  path?: never;
5186
6005
  cookie?: never;
5187
6006
  };
5188
- requestBody: {
5189
- content: {
5190
- "application/json": components["schemas"]["ResetPasswordRequest"];
5191
- };
5192
- };
6007
+ requestBody?: never;
5193
6008
  responses: {
5194
- /** @description Password updated */
6009
+ /** @description List of passkeys */
5195
6010
  200: {
5196
6011
  headers: {
5197
6012
  [name: string]: unknown;
5198
6013
  };
5199
6014
  content: {
5200
- "application/json": components["schemas"]["ResetPasswordResponse"];
6015
+ "application/json": {
6016
+ passkeys?: {
6017
+ /** Format: uuid */
6018
+ id?: string;
6019
+ credential_id?: string;
6020
+ name?: string;
6021
+ last_used_at?: string;
6022
+ created_at?: string;
6023
+ }[];
6024
+ };
5201
6025
  };
5202
6026
  };
5203
- 400: components["responses"]["BadRequest"];
5204
6027
  };
5205
6028
  };
5206
- googleAuth: {
6029
+ deletePasskey: {
5207
6030
  parameters: {
5208
6031
  query?: never;
5209
6032
  header?: never;
5210
- path?: never;
5211
- cookie?: never;
5212
- };
5213
- requestBody: {
5214
- content: {
5215
- "application/json": components["schemas"]["GoogleAuthRequest"];
6033
+ path: {
6034
+ passkey_id: string;
5216
6035
  };
6036
+ cookie?: never;
5217
6037
  };
6038
+ requestBody?: never;
5218
6039
  responses: {
5219
- /** @description Authenticated */
6040
+ /** @description Passkey deleted */
5220
6041
  200: {
5221
6042
  headers: {
5222
6043
  [name: string]: unknown;
5223
6044
  };
5224
- content: {
5225
- "application/json": components["schemas"]["TokenResponse"];
5226
- };
6045
+ content?: never;
5227
6046
  };
5228
- 401: components["responses"]["Unauthorized"];
5229
6047
  };
5230
6048
  };
5231
- changePassword: {
6049
+ requestApproval: {
5232
6050
  parameters: {
5233
6051
  query?: never;
5234
6052
  header?: never;
@@ -5237,18 +6055,29 @@ export interface operations {
5237
6055
  };
5238
6056
  requestBody: {
5239
6057
  content: {
5240
- "application/json": components["schemas"]["ChangePasswordRequest"];
6058
+ "application/json": {
6059
+ /** @description Type of action (e.g. policy_change) */
6060
+ action: string;
6061
+ target_type: string;
6062
+ target_id: string;
6063
+ /** @description JSON payload describing the request */
6064
+ summary: Record<string, never>;
6065
+ reason?: string;
6066
+ risk_tier?: number;
6067
+ };
5241
6068
  };
5242
6069
  };
5243
6070
  responses: {
5244
- /** @description Password changed */
5245
- 204: {
6071
+ /** @description Approval request created */
6072
+ 202: {
5246
6073
  headers: {
5247
6074
  [name: string]: unknown;
5248
6075
  };
5249
- content?: never;
6076
+ content: {
6077
+ "application/json": components["schemas"]["ApprovalResponse"];
6078
+ };
5250
6079
  };
5251
- 400: components["responses"]["BadRequest"];
6080
+ 403: components["responses"]["Forbidden"];
5252
6081
  };
5253
6082
  };
5254
6083
  getMe: {
@@ -5686,6 +6515,154 @@ export interface operations {
5686
6515
  403: components["responses"]["Forbidden"];
5687
6516
  };
5688
6517
  };
6518
+ listDevices: {
6519
+ parameters: {
6520
+ query?: never;
6521
+ header?: never;
6522
+ path?: never;
6523
+ cookie?: never;
6524
+ };
6525
+ requestBody?: never;
6526
+ responses: {
6527
+ /** @description Device list */
6528
+ 200: {
6529
+ headers: {
6530
+ [name: string]: unknown;
6531
+ };
6532
+ content: {
6533
+ "application/json": components["schemas"]["DeviceListResponse"];
6534
+ };
6535
+ };
6536
+ };
6537
+ };
6538
+ registerDevice: {
6539
+ parameters: {
6540
+ query?: never;
6541
+ header?: never;
6542
+ path?: never;
6543
+ cookie?: never;
6544
+ };
6545
+ requestBody: {
6546
+ content: {
6547
+ "application/json": components["schemas"]["RegisterDeviceRequest"];
6548
+ };
6549
+ };
6550
+ responses: {
6551
+ /** @description Device registered */
6552
+ 201: {
6553
+ headers: {
6554
+ [name: string]: unknown;
6555
+ };
6556
+ content: {
6557
+ "application/json": components["schemas"]["RegisterDeviceResponse"];
6558
+ };
6559
+ };
6560
+ 400: components["responses"]["BadRequest"];
6561
+ 403: components["responses"]["Forbidden"];
6562
+ };
6563
+ };
6564
+ revokeDevice: {
6565
+ parameters: {
6566
+ query?: never;
6567
+ header?: never;
6568
+ path: {
6569
+ device_id: string;
6570
+ };
6571
+ cookie?: never;
6572
+ };
6573
+ requestBody?: never;
6574
+ responses: {
6575
+ /** @description Device revoked */
6576
+ 204: {
6577
+ headers: {
6578
+ [name: string]: unknown;
6579
+ };
6580
+ content?: never;
6581
+ };
6582
+ 404: components["responses"]["NotFound"];
6583
+ };
6584
+ };
6585
+ createDeviceChallenge: {
6586
+ parameters: {
6587
+ query?: never;
6588
+ header?: never;
6589
+ path: {
6590
+ device_id: string;
6591
+ };
6592
+ cookie?: never;
6593
+ };
6594
+ requestBody: {
6595
+ content: {
6596
+ "application/json": components["schemas"]["CreateDeviceChallengeRequest"];
6597
+ };
6598
+ };
6599
+ responses: {
6600
+ /** @description Challenge created */
6601
+ 200: {
6602
+ headers: {
6603
+ [name: string]: unknown;
6604
+ };
6605
+ content: {
6606
+ "application/json": components["schemas"]["DeviceChallengeResponse"];
6607
+ };
6608
+ };
6609
+ 404: components["responses"]["NotFound"];
6610
+ };
6611
+ };
6612
+ attestDeviceChallenge: {
6613
+ parameters: {
6614
+ query?: never;
6615
+ header?: never;
6616
+ path: {
6617
+ device_id: string;
6618
+ };
6619
+ cookie?: never;
6620
+ };
6621
+ requestBody: {
6622
+ content: {
6623
+ "application/json": components["schemas"]["AttestDeviceChallengeRequest"];
6624
+ };
6625
+ };
6626
+ responses: {
6627
+ /** @description Attestation successful */
6628
+ 200: {
6629
+ headers: {
6630
+ [name: string]: unknown;
6631
+ };
6632
+ content: {
6633
+ "application/json": components["schemas"]["AttestDeviceChallengeResponse"];
6634
+ };
6635
+ };
6636
+ 400: components["responses"]["BadRequest"];
6637
+ 404: components["responses"]["NotFound"];
6638
+ };
6639
+ };
6640
+ registerPushToken: {
6641
+ parameters: {
6642
+ query?: never;
6643
+ header?: never;
6644
+ path: {
6645
+ device_id: string;
6646
+ };
6647
+ cookie?: never;
6648
+ };
6649
+ requestBody: {
6650
+ content: {
6651
+ "application/json": components["schemas"]["RegisterPushTokenRequest"];
6652
+ };
6653
+ };
6654
+ responses: {
6655
+ /** @description Push token registered */
6656
+ 204: {
6657
+ headers: {
6658
+ [name: string]: unknown;
6659
+ };
6660
+ content?: never;
6661
+ };
6662
+ 400: components["responses"]["BadRequest"];
6663
+ 404: components["responses"]["NotFound"];
6664
+ };
6665
+ };
5689
6666
  listVaults: {
5690
6667
  parameters: {
5691
6668
  query?: never;
@@ -8327,5 +9304,84 @@ export interface operations {
8327
9304
  };
8328
9305
  };
8329
9306
  };
9307
+ listApprovals: {
9308
+ parameters: {
9309
+ query?: {
9310
+ /** @description Filter by approval status */
9311
+ status?: "pending" | "approved" | "rejected" | "expired";
9312
+ limit?: number;
9313
+ offset?: number;
9314
+ };
9315
+ header?: never;
9316
+ path?: never;
9317
+ cookie?: never;
9318
+ };
9319
+ requestBody?: never;
9320
+ responses: {
9321
+ /** @description Approval list */
9322
+ 200: {
9323
+ headers: {
9324
+ [name: string]: unknown;
9325
+ };
9326
+ content: {
9327
+ "application/json": {
9328
+ approvals: components["schemas"]["ApprovalResponse"][];
9329
+ };
9330
+ };
9331
+ };
9332
+ };
9333
+ };
9334
+ getApproval: {
9335
+ parameters: {
9336
+ query?: never;
9337
+ header?: never;
9338
+ path: {
9339
+ approval_id: string;
9340
+ };
9341
+ cookie?: never;
9342
+ };
9343
+ requestBody?: never;
9344
+ responses: {
9345
+ /** @description Approval details */
9346
+ 200: {
9347
+ headers: {
9348
+ [name: string]: unknown;
9349
+ };
9350
+ content: {
9351
+ "application/json": components["schemas"]["ApprovalResponse"];
9352
+ };
9353
+ };
9354
+ 404: components["responses"]["NotFound"];
9355
+ };
9356
+ };
9357
+ decideApproval: {
9358
+ parameters: {
9359
+ query?: never;
9360
+ header?: never;
9361
+ path: {
9362
+ approval_id: string;
9363
+ };
9364
+ cookie?: never;
9365
+ };
9366
+ requestBody: {
9367
+ content: {
9368
+ "application/json": components["schemas"]["DecideApprovalRequest"];
9369
+ };
9370
+ };
9371
+ responses: {
9372
+ /** @description Decision recorded */
9373
+ 200: {
9374
+ headers: {
9375
+ [name: string]: unknown;
9376
+ };
9377
+ content: {
9378
+ "application/json": components["schemas"]["ApprovalResponse"];
9379
+ };
9380
+ };
9381
+ 400: components["responses"]["BadRequest"];
9382
+ 404: components["responses"]["NotFound"];
9383
+ 409: components["responses"]["Conflict"];
9384
+ };
9385
+ };
8330
9386
  }
8331
9387
  //# sourceMappingURL=api-types.d.ts.map