@onkernel/sdk 0.129.0 → 0.131.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.
@@ -316,6 +316,39 @@ export type AgentcardPreparedProcessor =
316
316
  | 'mercado_pago'
317
317
  | 'adyen';
318
318
 
319
+ /**
320
+ * Let a browser attached to the item's vault sign in with a stored passkey. Only
321
+ * invoke when the item advertises `arm_passkey`. Returns immediately; there is no
322
+ * time limit. While armed, when a page in that browser whose origin matches the
323
+ * passkey's relying party asks for a passkey (`navigator.credentials.get`,
324
+ * including autofill requests made at page load), Kernel answers with this
325
+ * passkey. The private key never enters the browser: Kernel signs on its servers,
326
+ * using the origin Chrome reports for the requesting frame. Arming a passkey for a
327
+ * relying party replaces any passkey armed earlier in the browser for the same
328
+ * relying party. The arm lasts until `disarm_passkey`, the browser ends, the vault
329
+ * is detached, or the item or field is deleted. Drive the sign-in with your own
330
+ * browser tools and inspect the page to confirm it. A page opened in a new tab or
331
+ * window can run its first scripts before Kernel's handler attaches; if such a
332
+ * page asks for a passkey as soon as it loads, reload it. While armed, any script
333
+ * running on the relying party's pages can obtain a sign-in without user
334
+ * interaction, as with a password manager that fills automatically; disarm when
335
+ * the task is done. Passkeys report a signature counter of 0 and backup flags, as
336
+ * synced passkeys do.
337
+ */
338
+ export interface ArmPasskeyVaultItemOperationRequest {
339
+ /**
340
+ * Browser session ID, not a reusable browser name.
341
+ */
342
+ browser_id: string;
343
+
344
+ type: 'arm_passkey';
345
+
346
+ /**
347
+ * Passkey field to arm. Required when more than one passkey field holds a passkey.
348
+ */
349
+ field?: string;
350
+ }
351
+
319
352
  /**
320
353
  * Authorize a Link or Kernel card using its existing purchase specification. Use
321
354
  * only after explicit user approval and when the item advertises authorize; follow
@@ -368,7 +401,8 @@ export namespace CardVaultItemSpec {
368
401
  */
369
402
  export interface LinkCardVaultItemSpec {
370
403
  /**
371
- * Integer amount in minor currency units, at most 50000.
404
+ * Integer amount in minor currency units, at most 50000. With recurring, the
405
+ * spending limit per period, not a lifetime total.
372
406
  */
373
407
  amount: number;
374
408
 
@@ -398,6 +432,19 @@ export namespace CardVaultItemSpec {
398
432
 
399
433
  metadata?: { [key: string]: string };
400
434
 
435
+ /**
436
+ * Recurring terms for a subscription or other repeated purchase. The amount
437
+ * becomes the spending limit for each period of interval_count intervals, for
438
+ * example every 2 weeks. The merchant schedules charges. The card stays ready
439
+ * after each charge until it expires or is deleted; do not create a new card each
440
+ * period. Deleting the card, its wallet or its vault first cancels the credential
441
+ * with Link, so later charges decline; if Link cannot be reached, deletion returns
442
+ * 409 provider_revocation_pending and should be retried. Deletion does not cancel
443
+ * the subscription with the merchant. Recurring terms cannot be changed once the
444
+ * card is authorized.
445
+ */
446
+ recurring?: LinkCardVaultItemSpec.Recurring;
447
+
401
448
  totals?: Array<LinkCardVaultItemSpec.Total>;
402
449
  }
403
450
 
@@ -438,6 +485,26 @@ export namespace CardVaultItemSpec {
438
485
  }
439
486
  }
440
487
 
488
+ /**
489
+ * Recurring terms for a subscription or other repeated purchase. The amount
490
+ * becomes the spending limit for each period of interval_count intervals, for
491
+ * example every 2 weeks. The merchant schedules charges. The card stays ready
492
+ * after each charge until it expires or is deleted; do not create a new card each
493
+ * period. Deleting the card, its wallet or its vault first cancels the credential
494
+ * with Link, so later charges decline; if Link cannot be reached, deletion returns
495
+ * 409 provider_revocation_pending and should be retried. Deletion does not cancel
496
+ * the subscription with the merchant. Recurring terms cannot be changed once the
497
+ * card is authorized.
498
+ */
499
+ export interface Recurring {
500
+ interval: 'day' | 'week' | 'month' | 'year';
501
+
502
+ /**
503
+ * Number of intervals per period. Link defaults it to 1.
504
+ */
505
+ interval_count?: number;
506
+ }
507
+
441
508
  export interface Total {
442
509
  /**
443
510
  * Total amount in minor currency units.
@@ -713,7 +780,7 @@ export namespace CredentialAccountVaultItem {
713
780
  export interface AvailableExpansion {
714
781
  description: string;
715
782
 
716
- type: 'payment_methods';
783
+ type: 'payment_methods' | 'link_user_info' | 'link_shipping_addresses';
717
784
  }
718
785
 
719
786
  /**
@@ -730,6 +797,9 @@ export namespace CredentialAccountVaultItem {
730
797
  | 'collect'
731
798
  | 'prepare_checkout'
732
799
  | 'fill'
800
+ | 'arm_passkey'
801
+ | 'register_passkey'
802
+ | 'disarm_passkey'
733
803
  | '1pw_create_access_request'
734
804
  | '1pw_access_request_status'
735
805
  | '1pw_fill'
@@ -819,7 +889,7 @@ export interface CredentialVaultFieldDefinition {
819
889
  * `credentialId`, `userHandle` (at most 64 bytes), and `key` (a PKCS#8 ECDSA P-256
820
890
  * private key), a lowercase `rpId` domain, and optional `username` and
821
891
  * `userDisplayName`. Other CXF members are ignored. Passkeys are never filled into
822
- * pages.
892
+ * pages; use arm_passkey to sign in with one and register_passkey to create one.
823
893
  */
824
894
  type: CredentialVaultFieldType;
825
895
 
@@ -855,7 +925,7 @@ export interface CredentialVaultFieldDefinitionInput {
855
925
  * `credentialId`, `userHandle` (at most 64 bytes), and `key` (a PKCS#8 ECDSA P-256
856
926
  * private key), a lowercase `rpId` domain, and optional `username` and
857
927
  * `userDisplayName`. Other CXF members are ignored. Passkeys are never filled into
858
- * pages.
928
+ * pages; use arm_passkey to sign in with one and register_passkey to create one.
859
929
  */
860
930
  type: CredentialVaultFieldType;
861
931
 
@@ -898,7 +968,7 @@ export interface CredentialVaultFieldInput {
898
968
  * `credentialId`, `userHandle` (at most 64 bytes), and `key` (a PKCS#8 ECDSA P-256
899
969
  * private key), a lowercase `rpId` domain, and optional `username` and
900
970
  * `userDisplayName`. Other CXF members are ignored. Passkeys are never filled into
901
- * pages.
971
+ * pages; use arm_passkey to sign in with one and register_passkey to create one.
902
972
  */
903
973
  type: CredentialVaultFieldType;
904
974
 
@@ -971,7 +1041,7 @@ export interface CredentialVaultFieldState {
971
1041
  * `credentialId`, `userHandle` (at most 64 bytes), and `key` (a PKCS#8 ECDSA P-256
972
1042
  * private key), a lowercase `rpId` domain, and optional `username` and
973
1043
  * `userDisplayName`. Other CXF members are ignored. Passkeys are never filled into
974
- * pages.
1044
+ * pages; use arm_passkey to sign in with one and register_passkey to create one.
975
1045
  */
976
1046
  export type CredentialVaultFieldType = 'text' | 'email' | 'password' | 'totp' | 'passkey';
977
1047
 
@@ -1088,7 +1158,7 @@ export namespace CredentialVaultItem {
1088
1158
  export interface AvailableExpansion {
1089
1159
  description: string;
1090
1160
 
1091
- type: 'payment_methods';
1161
+ type: 'payment_methods' | 'link_user_info' | 'link_shipping_addresses';
1092
1162
  }
1093
1163
 
1094
1164
  /**
@@ -1105,6 +1175,9 @@ export namespace CredentialVaultItem {
1105
1175
  | 'collect'
1106
1176
  | 'prepare_checkout'
1107
1177
  | 'fill'
1178
+ | 'arm_passkey'
1179
+ | 'register_passkey'
1180
+ | 'disarm_passkey'
1108
1181
  | '1pw_create_access_request'
1109
1182
  | '1pw_access_request_status'
1110
1183
  | '1pw_fill'
@@ -1243,6 +1316,26 @@ export interface CredentialVaultItemUpdateRequest {
1243
1316
  expected_item_id?: string;
1244
1317
  }
1245
1318
 
1319
+ /**
1320
+ * Stop a browser from using this item's passkeys: removes its armed passkeys and
1321
+ * its pending registration into this item. Pages that already loaded keep Kernel's
1322
+ * WebAuthn handler but get the browser's own behavior.
1323
+ */
1324
+ export interface DisarmPasskeyVaultItemOperationRequest {
1325
+ /**
1326
+ * Browser session ID, not a reusable browser name.
1327
+ */
1328
+ browser_id: string;
1329
+
1330
+ type: 'disarm_passkey';
1331
+
1332
+ /**
1333
+ * Limit disarming to one passkey field. Omit to disarm every passkey field of the
1334
+ * item.
1335
+ */
1336
+ field?: string;
1337
+ }
1338
+
1246
1339
  /**
1247
1340
  * Use a vault item in a browser session, for example to fill a login or payment
1248
1341
  * form. Only invoke when the item advertises `fill`; the advertised operation
@@ -1291,7 +1384,8 @@ export interface FillVaultItemOperationRequest {
1291
1384
  page_url?: string;
1292
1385
 
1293
1386
  /**
1294
- * Total operation deadline in milliseconds, not a per-field timeout.
1387
+ * @deprecated Ignored. Fill sets no operation deadline; typing pace adapts to the
1388
+ * length of the values instead. Accepted for compatibility.
1295
1389
  */
1296
1390
  timeout_ms?: number;
1297
1391
  }
@@ -1327,8 +1421,11 @@ export interface KernelCardState {
1327
1421
  provider: 'kernel';
1328
1422
 
1329
1423
  /**
1330
- * pending_authorization on a Visa purchase waits for the cardholder to approve it
1331
- * through the spend_approval action; an unused link expires after 30 minutes.
1424
+ * pending_authorization waits for cardholder approval on Visa purchases or fresh
1425
+ * security-code collection on alias-mode purchases through the spend_approval
1426
+ * action; an unused link expires after 30 minutes. Alias-mode cards become ready
1427
+ * after collection and expire at the temporary security-code alias deadline, by
1428
+ * default five minutes later. An expired alias purchase requires a new card.
1332
1429
  * recovery_required means verification, approving the purchase or issuing the
1333
1430
  * one-time code has an unresolved outcome. A server-classified initial attestation
1334
1431
  * failure before intent dispatch may advertise restart_verification to prepare a
@@ -1386,12 +1483,13 @@ export namespace KernelCardState {
1386
1483
  * spend_approval action: the cardholder approves it with a Visa passkey, and
1387
1484
  * Kernel registers a Visa intent for one transaction up to the amount before
1388
1485
  * issuing the code. For supported cards whose network cannot be enrolled for
1389
- * agentic tokens, authorize prepares checkout details without issuing a one-time
1390
- * code. The card can be filled into one checkout before its expires_at, one hour
1391
- * after authorization. Fill types those details on merchant_url's origin. The
1392
- * amount, merchant_url and merchant_country are recorded but do not restrict
1393
- * payment requests sent by the browser. Card updates are not supported; delete and
1394
- * create a new item instead.
1486
+ * agentic tokens, authorize returns pending_authorization with a spend_approval
1487
+ * action to collect a fresh security code in a hosted field. Once collected, the
1488
+ * card is ready and can be filled before its expires_at, by default five minutes
1489
+ * after collection. An expired card requires a new purchase. Fill types those
1490
+ * details on merchant_url's origin. The amount, merchant_url and merchant_country
1491
+ * are recorded but do not restrict payment requests sent by the browser. Card
1492
+ * updates are not supported; delete and create a new item instead.
1395
1493
  */
1396
1494
  export interface KernelCardVaultItemSpec {
1397
1495
  /**
@@ -1527,6 +1625,196 @@ export interface KernelWalletVaultItemSpec {
1527
1625
  provider: 'kernel';
1528
1626
  }
1529
1627
 
1628
+ /**
1629
+ * One entry of Link's `GET /shipping_addresses` response, passed through as Link
1630
+ * reports it. Kernel never stores it.
1631
+ */
1632
+ export interface LinkShippingAddress {
1633
+ /**
1634
+ * Link shipping address ID.
1635
+ */
1636
+ id: string;
1637
+
1638
+ is_default: boolean;
1639
+
1640
+ nickname: string | null;
1641
+
1642
+ /**
1643
+ * Link's nullable postal address fields. Omitted from the shipping address when
1644
+ * Link reports null.
1645
+ */
1646
+ address?: LinkShippingAddress.Address;
1647
+ }
1648
+
1649
+ export namespace LinkShippingAddress {
1650
+ /**
1651
+ * Link's nullable postal address fields. Omitted from the shipping address when
1652
+ * Link reports null.
1653
+ */
1654
+ export interface Address {
1655
+ /**
1656
+ * State, province or region.
1657
+ */
1658
+ administrative_area: string | null;
1659
+
1660
+ country_code: string | null;
1661
+
1662
+ dependent_locality: string | null;
1663
+
1664
+ line_1: string | null;
1665
+
1666
+ line_2: string | null;
1667
+
1668
+ /**
1669
+ * City or town.
1670
+ */
1671
+ locality: string | null;
1672
+
1673
+ name: string | null;
1674
+
1675
+ postal_code: string | null;
1676
+
1677
+ sorting_code: string | null;
1678
+ }
1679
+ }
1680
+
1681
+ /**
1682
+ * Link's `GET /userinfo` response for the connected wallet, passed through as Link
1683
+ * reports it when the `link_user_info` expansion is requested. Kernel never stores
1684
+ * it. Null fields are null at Link; omitted fields were not reported. Amounts are
1685
+ * in the minor unit of `default_spend_request_currency`.
1686
+ */
1687
+ export interface LinkUserInfo {
1688
+ /**
1689
+ * Stable Link user ID.
1690
+ */
1691
+ id: string | null;
1692
+
1693
+ email: string | null;
1694
+
1695
+ first_name: string | null;
1696
+
1697
+ last_name: string | null;
1698
+
1699
+ name: string | null;
1700
+
1701
+ phone: string | null;
1702
+
1703
+ /**
1704
+ * The Link user's postal address. Omitted when Link reports none.
1705
+ */
1706
+ address?: LinkUserInfo.Address;
1707
+
1708
+ /**
1709
+ * Link's agent wallet spend limits, per transaction and over rolling periods.
1710
+ */
1711
+ agent_wallet_spend_limits?: LinkUserInfo.AgentWalletSpendLimits;
1712
+
1713
+ /**
1714
+ * Verification Link requires from the user before the agent wallet can spend.
1715
+ */
1716
+ agent_wallet_step_up?: LinkUserInfo.AgentWalletStepUp;
1717
+
1718
+ /**
1719
+ * Lowercase ISO currency Link applies to a spend request created without one.
1720
+ */
1721
+ default_spend_request_currency?: string;
1722
+
1723
+ /**
1724
+ * Whether the user can fund purchases from a Link balance.
1725
+ */
1726
+ eligible_for_balance?: boolean;
1727
+ }
1728
+
1729
+ export namespace LinkUserInfo {
1730
+ /**
1731
+ * The Link user's postal address. Omitted when Link reports none.
1732
+ */
1733
+ export interface Address {
1734
+ city: string | null;
1735
+
1736
+ country: string | null;
1737
+
1738
+ line1: string | null;
1739
+
1740
+ line2: string | null;
1741
+
1742
+ postal_code: string | null;
1743
+
1744
+ state: string | null;
1745
+ }
1746
+
1747
+ /**
1748
+ * Link's agent wallet spend limits, per transaction and over rolling periods.
1749
+ */
1750
+ export interface AgentWalletSpendLimits {
1751
+ daily: AgentWalletSpendLimits.Daily;
1752
+
1753
+ per_transaction: AgentWalletSpendLimits.PerTransaction;
1754
+
1755
+ thirty_day: AgentWalletSpendLimits.ThirtyDay;
1756
+ }
1757
+
1758
+ export namespace AgentWalletSpendLimits {
1759
+ export interface Daily {
1760
+ /**
1761
+ * Null means unlimited.
1762
+ */
1763
+ limit: number | null;
1764
+
1765
+ /**
1766
+ * Amount still available in the rolling period; null means unlimited.
1767
+ */
1768
+ remaining: number | null;
1769
+
1770
+ /**
1771
+ * Amount already spent in the rolling period.
1772
+ */
1773
+ used: number;
1774
+ }
1775
+
1776
+ export interface PerTransaction {
1777
+ /**
1778
+ * Null means unlimited.
1779
+ */
1780
+ limit: number | null;
1781
+ }
1782
+
1783
+ export interface ThirtyDay {
1784
+ /**
1785
+ * Null means unlimited.
1786
+ */
1787
+ limit: number | null;
1788
+
1789
+ /**
1790
+ * Amount still available in the rolling period; null means unlimited.
1791
+ */
1792
+ remaining: number | null;
1793
+
1794
+ /**
1795
+ * Amount already spent in the rolling period.
1796
+ */
1797
+ used: number;
1798
+ }
1799
+ }
1800
+
1801
+ /**
1802
+ * Verification Link requires from the user before the agent wallet can spend.
1803
+ */
1804
+ export interface AgentWalletStepUp {
1805
+ /**
1806
+ * URL where the user completes verification; null when no action is available.
1807
+ */
1808
+ action_url: string | null;
1809
+
1810
+ /**
1811
+ * Link status such as not_required, ssn_verification, identity_verification,
1812
+ * contact_support or complete.
1813
+ */
1814
+ status: string;
1815
+ }
1816
+ }
1817
+
1530
1818
  export interface ManagedAuthCredentialVaultField {
1531
1819
  /**
1532
1820
  * Text, email, and password have form inputs; totp and passkey do not and are
@@ -1541,7 +1829,7 @@ export interface ManagedAuthCredentialVaultField {
1541
1829
  * `credentialId`, `userHandle` (at most 64 bytes), and `key` (a PKCS#8 ECDSA P-256
1542
1830
  * private key), a lowercase `rpId` domain, and optional `username` and
1543
1831
  * `userDisplayName`. Other CXF members are ignored. Passkeys are never filled into
1544
- * pages.
1832
+ * pages; use arm_passkey to sign in with one and register_passkey to create one.
1545
1833
  */
1546
1834
  type: CredentialVaultFieldType;
1547
1835
  }
@@ -2006,6 +2294,22 @@ export interface OnePasswordRequestAccessVaultItemOperationRequest {
2006
2294
  reason?: string;
2007
2295
  }
2008
2296
 
2297
+ export interface PasskeyVaultItemOperationResult {
2298
+ /**
2299
+ * armed means the browser will answer matching passkey requests; it does not mean
2300
+ * a page has asked yet. disarmed means the browser no longer uses this item's
2301
+ * passkeys.
2302
+ */
2303
+ status: 'armed' | 'disarmed';
2304
+
2305
+ type: 'arm_passkey' | 'register_passkey' | 'disarm_passkey';
2306
+
2307
+ /**
2308
+ * Relying party the armed passkey answers for. Returned by arm_passkey.
2309
+ */
2310
+ rp_id?: string;
2311
+ }
2312
+
2009
2313
  /**
2010
2314
  * Prepare an unused AgentCard card for a supported checkout. Deliver the returned
2011
2315
  * approval URL and keep the approval page open. Poll the item until
@@ -2027,6 +2331,35 @@ export interface PrepareCheckoutVaultItemOperationRequest {
2027
2331
  type: 'prepare_checkout';
2028
2332
  }
2029
2333
 
2334
+ /**
2335
+ * Let a browser attached to the item's vault create a passkey on a website and
2336
+ * store it in an empty passkey field. Only invoke when the item advertises
2337
+ * `register_passkey`; declare the field first, for example by adding an optional
2338
+ * passkey field with a credential update. Returns immediately; there is no time
2339
+ * limit. The next passkey a page in that browser creates
2340
+ * (`navigator.credentials.create`) is generated by Kernel, stored in the field,
2341
+ * and only then returned to the page, so the website never receives a passkey
2342
+ * Kernel failed to store. Each browser has one pending registration; a later
2343
+ * `register_passkey` replaces it. Drive the website's "add a passkey" flow with
2344
+ * your own browser tools, then confirm by reading the item (the field reports
2345
+ * `has_value`) or its `credential_passkey_registered` event, and by signing in
2346
+ * with `arm_passkey`. Only ES256 passkeys are created.
2347
+ */
2348
+ export interface RegisterPasskeyVaultItemOperationRequest {
2349
+ /**
2350
+ * Browser session ID, not a reusable browser name.
2351
+ */
2352
+ browser_id: string;
2353
+
2354
+ type: 'register_passkey';
2355
+
2356
+ /**
2357
+ * Empty passkey field to store the new passkey in. Required when more than one
2358
+ * passkey field is empty.
2359
+ */
2360
+ field?: string;
2361
+ }
2362
+
2030
2363
  /**
2031
2364
  * Explicitly prepare a fresh local verification session for the same Kernel Visa
2032
2365
  * purchase and connected wallet, only when restart_verification is advertised.
@@ -2255,7 +2588,7 @@ export namespace VaultItem {
2255
2588
  export interface AvailableExpansion {
2256
2589
  description: string;
2257
2590
 
2258
- type: 'payment_methods';
2591
+ type: 'payment_methods' | 'link_user_info' | 'link_shipping_addresses';
2259
2592
  }
2260
2593
 
2261
2594
  /**
@@ -2272,6 +2605,9 @@ export namespace VaultItem {
2272
2605
  | 'collect'
2273
2606
  | 'prepare_checkout'
2274
2607
  | 'fill'
2608
+ | 'arm_passkey'
2609
+ | 'register_passkey'
2610
+ | 'disarm_passkey'
2275
2611
  | '1pw_create_access_request'
2276
2612
  | '1pw_access_request_status'
2277
2613
  | '1pw_fill'
@@ -2284,6 +2620,20 @@ export namespace VaultItem {
2284
2620
  * Live, non-persisted data requested through the item GET expand parameter.
2285
2621
  */
2286
2622
  export interface Expanded {
2623
+ /**
2624
+ * Link's saved shipping addresses, present when the `link_shipping_addresses`
2625
+ * expansion is requested.
2626
+ */
2627
+ link_shipping_addresses?: Array<ItemsAPI.LinkShippingAddress>;
2628
+
2629
+ /**
2630
+ * Link's `GET /userinfo` response for the connected wallet, passed through as Link
2631
+ * reports it when the `link_user_info` expansion is requested. Kernel never stores
2632
+ * it. Null fields are null at Link; omitted fields were not reported. Amounts are
2633
+ * in the minor unit of `default_spend_request_currency`.
2634
+ */
2635
+ link_user_info?: ItemsAPI.LinkUserInfo;
2636
+
2287
2637
  payment_methods?: Array<ItemsAPI.VaultPaymentMethod>;
2288
2638
  }
2289
2639
  }
@@ -2335,7 +2685,7 @@ export namespace VaultItem {
2335
2685
  export interface AvailableExpansion {
2336
2686
  description: string;
2337
2687
 
2338
- type: 'payment_methods';
2688
+ type: 'payment_methods' | 'link_user_info' | 'link_shipping_addresses';
2339
2689
  }
2340
2690
 
2341
2691
  /**
@@ -2352,6 +2702,9 @@ export namespace VaultItem {
2352
2702
  | 'collect'
2353
2703
  | 'prepare_checkout'
2354
2704
  | 'fill'
2705
+ | 'arm_passkey'
2706
+ | 'register_passkey'
2707
+ | 'disarm_passkey'
2355
2708
  | '1pw_create_access_request'
2356
2709
  | '1pw_access_request_status'
2357
2710
  | '1pw_fill'
@@ -2431,9 +2784,9 @@ export interface VaultItemEvent {
2431
2784
  }
2432
2785
 
2433
2786
  /**
2434
- * Authorization and preparation return the existing item shape. Fill returns a
2435
- * value-free result; WebMCP invocation returns the tool's output. Neither persists
2436
- * transient outcomes on the item.
2787
+ * Authorization and preparation return the existing item shape. Fill and passkey
2788
+ * operations return value-free results; WebMCP invocation returns the tool's
2789
+ * output. None persist transient outcomes on the item.
2437
2790
  */
2438
2791
  export type VaultItemOperationResponse =
2439
2792
  | VaultItemOperationResponse.WalletVaultItem
@@ -2441,6 +2794,7 @@ export type VaultItemOperationResponse =
2441
2794
  | CredentialAccountVaultItem
2442
2795
  | CredentialVaultItem
2443
2796
  | FillVaultItemOperationResult
2797
+ | PasskeyVaultItemOperationResult
2444
2798
  | OnePasswordFillVaultItemOperationResult
2445
2799
  | WebmcpInvokeVaultItemOperationResult;
2446
2800
 
@@ -2506,7 +2860,7 @@ export namespace VaultItemOperationResponse {
2506
2860
  export interface AvailableExpansion {
2507
2861
  description: string;
2508
2862
 
2509
- type: 'payment_methods';
2863
+ type: 'payment_methods' | 'link_user_info' | 'link_shipping_addresses';
2510
2864
  }
2511
2865
 
2512
2866
  /**
@@ -2523,6 +2877,9 @@ export namespace VaultItemOperationResponse {
2523
2877
  | 'collect'
2524
2878
  | 'prepare_checkout'
2525
2879
  | 'fill'
2880
+ | 'arm_passkey'
2881
+ | 'register_passkey'
2882
+ | 'disarm_passkey'
2526
2883
  | '1pw_create_access_request'
2527
2884
  | '1pw_access_request_status'
2528
2885
  | '1pw_fill'
@@ -2535,6 +2892,20 @@ export namespace VaultItemOperationResponse {
2535
2892
  * Live, non-persisted data requested through the item GET expand parameter.
2536
2893
  */
2537
2894
  export interface Expanded {
2895
+ /**
2896
+ * Link's saved shipping addresses, present when the `link_shipping_addresses`
2897
+ * expansion is requested.
2898
+ */
2899
+ link_shipping_addresses?: Array<ItemsAPI.LinkShippingAddress>;
2900
+
2901
+ /**
2902
+ * Link's `GET /userinfo` response for the connected wallet, passed through as Link
2903
+ * reports it when the `link_user_info` expansion is requested. Kernel never stores
2904
+ * it. Null fields are null at Link; omitted fields were not reported. Amounts are
2905
+ * in the minor unit of `default_spend_request_currency`.
2906
+ */
2907
+ link_user_info?: ItemsAPI.LinkUserInfo;
2908
+
2538
2909
  payment_methods?: Array<ItemsAPI.VaultPaymentMethod>;
2539
2910
  }
2540
2911
  }
@@ -2586,7 +2957,7 @@ export namespace VaultItemOperationResponse {
2586
2957
  export interface AvailableExpansion {
2587
2958
  description: string;
2588
2959
 
2589
- type: 'payment_methods';
2960
+ type: 'payment_methods' | 'link_user_info' | 'link_shipping_addresses';
2590
2961
  }
2591
2962
 
2592
2963
  /**
@@ -2603,6 +2974,9 @@ export namespace VaultItemOperationResponse {
2603
2974
  | 'collect'
2604
2975
  | 'prepare_checkout'
2605
2976
  | 'fill'
2977
+ | 'arm_passkey'
2978
+ | 'register_passkey'
2979
+ | 'disarm_passkey'
2606
2980
  | '1pw_create_access_request'
2607
2981
  | '1pw_access_request_status'
2608
2982
  | '1pw_fill'
@@ -2912,7 +3286,7 @@ export interface ItemRetrieveParams {
2912
3286
  * Query param: Live fields advertised by `available_expansions` to include in
2913
3287
  * `expanded`.
2914
3288
  */
2915
- expand?: Array<'payment_methods'>;
3289
+ expand?: Array<'payment_methods' | 'link_user_info' | 'link_shipping_addresses'>;
2916
3290
 
2917
3291
  /**
2918
3292
  * Query param: Hold for up to this many seconds while the item is pending
@@ -3011,6 +3385,9 @@ export type ItemPerformOperationParams =
3011
3385
  | ItemPerformOperationParams.CollectVaultItemOperationRequest
3012
3386
  | ItemPerformOperationParams.PrepareCheckoutVaultItemOperationRequest
3013
3387
  | ItemPerformOperationParams.FillVaultItemOperationRequest
3388
+ | ItemPerformOperationParams.ArmPasskeyVaultItemOperationRequest
3389
+ | ItemPerformOperationParams.RegisterPasskeyVaultItemOperationRequest
3390
+ | ItemPerformOperationParams.DisarmPasskeyVaultItemOperationRequest
3014
3391
  | ItemPerformOperationParams.OnePasswordRequestAccessVaultItemOperationRequest
3015
3392
  | ItemPerformOperationParams.OnePasswordPollAccessVaultItemOperationRequest
3016
3393
  | ItemPerformOperationParams.OnePasswordFillVaultItemOperationRequest
@@ -3172,11 +3549,81 @@ export declare namespace ItemPerformOperationParams {
3172
3549
  page_url?: string;
3173
3550
 
3174
3551
  /**
3175
- * Body param: Total operation deadline in milliseconds, not a per-field timeout.
3552
+ * @deprecated Body param: Ignored. Fill sets no operation deadline; typing pace
3553
+ * adapts to the length of the values instead. Accepted for compatibility.
3176
3554
  */
3177
3555
  timeout_ms?: number;
3178
3556
  }
3179
3557
 
3558
+ export interface ArmPasskeyVaultItemOperationRequest {
3559
+ /**
3560
+ * Path param
3561
+ */
3562
+ id_or_name: string;
3563
+
3564
+ /**
3565
+ * Body param: Browser session ID, not a reusable browser name.
3566
+ */
3567
+ browser_id: string;
3568
+
3569
+ /**
3570
+ * Body param
3571
+ */
3572
+ type: 'arm_passkey';
3573
+
3574
+ /**
3575
+ * Body param: Passkey field to arm. Required when more than one passkey field
3576
+ * holds a passkey.
3577
+ */
3578
+ field?: string;
3579
+ }
3580
+
3581
+ export interface RegisterPasskeyVaultItemOperationRequest {
3582
+ /**
3583
+ * Path param
3584
+ */
3585
+ id_or_name: string;
3586
+
3587
+ /**
3588
+ * Body param: Browser session ID, not a reusable browser name.
3589
+ */
3590
+ browser_id: string;
3591
+
3592
+ /**
3593
+ * Body param
3594
+ */
3595
+ type: 'register_passkey';
3596
+
3597
+ /**
3598
+ * Body param: Empty passkey field to store the new passkey in. Required when more
3599
+ * than one passkey field is empty.
3600
+ */
3601
+ field?: string;
3602
+ }
3603
+
3604
+ export interface DisarmPasskeyVaultItemOperationRequest {
3605
+ /**
3606
+ * Path param
3607
+ */
3608
+ id_or_name: string;
3609
+
3610
+ /**
3611
+ * Body param: Browser session ID, not a reusable browser name.
3612
+ */
3613
+ browser_id: string;
3614
+
3615
+ /**
3616
+ * Body param
3617
+ */
3618
+ type: 'disarm_passkey';
3619
+
3620
+ /**
3621
+ * Body param: Limit disarming to one passkey field. Omit to disarm every passkey
3622
+ * field of the item.
3623
+ */
3624
+ field?: string;
3625
+ }
3626
+
3180
3627
  export interface OnePasswordRequestAccessVaultItemOperationRequest {
3181
3628
  /**
3182
3629
  * Path param
@@ -3594,6 +4041,7 @@ export declare namespace Items {
3594
4041
  type AgentcardCheckoutAuthorization as AgentcardCheckoutAuthorization,
3595
4042
  type AgentcardCheckoutPreparation as AgentcardCheckoutPreparation,
3596
4043
  type AgentcardPreparedProcessor as AgentcardPreparedProcessor,
4044
+ type ArmPasskeyVaultItemOperationRequest as ArmPasskeyVaultItemOperationRequest,
3597
4045
  type AuthorizeVaultItemOperationRequest as AuthorizeVaultItemOperationRequest,
3598
4046
  type CardVaultItemSpec as CardVaultItemSpec,
3599
4047
  type CardVaultItemState as CardVaultItemState,
@@ -3615,6 +4063,7 @@ export declare namespace Items {
3615
4063
  type CredentialVaultItemSpecUpdate as CredentialVaultItemSpecUpdate,
3616
4064
  type CredentialVaultItemState as CredentialVaultItemState,
3617
4065
  type CredentialVaultItemUpdateRequest as CredentialVaultItemUpdateRequest,
4066
+ type DisarmPasskeyVaultItemOperationRequest as DisarmPasskeyVaultItemOperationRequest,
3618
4067
  type FillVaultItemOperationRequest as FillVaultItemOperationRequest,
3619
4068
  type FillVaultItemOperationResult as FillVaultItemOperationResult,
3620
4069
  type KernelCardState as KernelCardState,
@@ -3624,6 +4073,8 @@ export declare namespace Items {
3624
4073
  type KernelCredentialVaultItemState as KernelCredentialVaultItemState,
3625
4074
  type KernelWalletState as KernelWalletState,
3626
4075
  type KernelWalletVaultItemSpec as KernelWalletVaultItemSpec,
4076
+ type LinkShippingAddress as LinkShippingAddress,
4077
+ type LinkUserInfo as LinkUserInfo,
3627
4078
  type ManagedAuthCredentialVaultField as ManagedAuthCredentialVaultField,
3628
4079
  type ManagedAuthCredentialVaultItemSpec as ManagedAuthCredentialVaultItemSpec,
3629
4080
  type ManagedAuthCredentialVaultItemSpecInput as ManagedAuthCredentialVaultItemSpecInput,
@@ -3638,7 +4089,9 @@ export declare namespace Items {
3638
4089
  type OnePasswordOAuthAction as OnePasswordOAuthAction,
3639
4090
  type OnePasswordRecoverVaultItemOperationRequest as OnePasswordRecoverVaultItemOperationRequest,
3640
4091
  type OnePasswordRequestAccessVaultItemOperationRequest as OnePasswordRequestAccessVaultItemOperationRequest,
4092
+ type PasskeyVaultItemOperationResult as PasskeyVaultItemOperationResult,
3641
4093
  type PrepareCheckoutVaultItemOperationRequest as PrepareCheckoutVaultItemOperationRequest,
4094
+ type RegisterPasskeyVaultItemOperationRequest as RegisterPasskeyVaultItemOperationRequest,
3642
4095
  type RestartVerificationVaultItemOperationRequest as RestartVerificationVaultItemOperationRequest,
3643
4096
  type VaultCardAliases as VaultCardAliases,
3644
4097
  type VaultCardFillField as VaultCardFillField,