@turnkey/sdk-browser
is our legacy TypeScript SDK for building embedded wallet experiences in browser applications.
This package will soon be discontinued, if you’re starting a new project, we recommend using @turnkey/core
instead. If you’re using React, please consider using the @turnkey/react-wallet-kit
for a more tailored experience.
@turnkey/sdk-browser
package enables developers to build browser-based applications that interact with the Turnkey API using multiple authentication methods.
It includes:
indexedDbClient
: The recommended client for authentication and session creation using secure, unextractable P-256 keys stored in the browser’s IndexedDB.passkeyClient
: For passkey registration and signing flows.iframeClient
: Used for secure credential injection and import/export operations.walletClient
: For signing with external wallets like MetaMask.@turnkey/sdk-react
package.
loginWithPasskey
localStorage
, and signing operations are done with an unextractable keypair stored in IndexedDB.
loginWithBundle
iframeClient
.
loginWithSession
indexedDbClient
.
loginWithWallet
refreshSession
publicKey
must be provided for read-write sessions.
indexedDbClient
is the recommended way to manage secure keys for session-based authentication.
init
getPublicKey
clear
resetKeyPair
injectCredentialBundle
injectWalletExportBundle
injectKeyExportBundle
injectImportBundle
extractWalletEncryptedBundle
extractKeyEncryptedBundle
getEmbeddedPublicKey
initEmbeddedKey
clearEmbeddedKey
createUserPasskey
getPublicKey
getWalletInterface
getSession
getRawSession
logout
passkeyClient()
indexedDbClient()
iframeClient()
walletClient(wallet)
serverSign(methodName, params, [serverSignUrl])