diff --git a/modules/sdk-core/src/bitgo/keychain/iKeychains.ts b/modules/sdk-core/src/bitgo/keychain/iKeychains.ts index 82fbfe5014..7f40a86fd7 100644 --- a/modules/sdk-core/src/bitgo/keychain/iKeychains.ts +++ b/modules/sdk-core/src/bitgo/keychain/iKeychains.ts @@ -141,8 +141,13 @@ export interface AddKeychainOptions { // indicates if the key is MPCv2 or not isMPCv2?: boolean; coinSpecific?: { [coinName: string]: unknown }; - /** WebAuthn devices that have an additional encrypted copy of the private key, keyed by PRF-derived passphrases. */ + /** WebAuthn devices that have an additional encrypted copy of the private key, keyed by PRF-derived passphrases. + * @deprecated Use {@link webauthnInfo} instead — the backend reads `webauthnInfo` (single object), not `webauthnDevices`. */ webauthnDevices?: WebauthnInfo[]; + /** Single webauthn device to atomically attach during key creation. + * Sent as `webauthnInfo` in the POST /key body so the backend can link + * the passkey to the keychain in the same request. */ + webauthnInfo?: WebauthnInfo; } export interface ApiKeyShare { diff --git a/modules/sdk-core/src/bitgo/keychain/keychains.ts b/modules/sdk-core/src/bitgo/keychain/keychains.ts index e933cb32e5..44e3f02dc6 100644 --- a/modules/sdk-core/src/bitgo/keychain/keychains.ts +++ b/modules/sdk-core/src/bitgo/keychain/keychains.ts @@ -307,6 +307,7 @@ export class Keychains implements IKeychains { isMPCv2: params.isMPCv2, coinSpecific: params.coinSpecific, webauthnDevices: params.webauthnDevices, + webauthnInfo: params.webauthnInfo, }) .result(); }