Skip to Content
DocumentationReferenceSDK Reference

keepkey-vault-sdk

Classes

KeepKeySdk

Typed client for the KeepKey REST API.

The KeepKey desktop application exposes a local REST API on http://localhost:1646. This SDK is a thin, typed wrapper around that API — zero dependencies, native fetch, works in browser, Node, Bun, and edge runtimes.

Example

import { KeepKeySdk } from 'keepkey-vault-sdk' const sdk = await KeepKeySdk.create({ serviceName: 'My App', serviceImageUrl: 'https://example.com/icon.png', }) const { address } = await sdk.address.ethGetAddress({ address_n: [0x8000002C, 0x8000003C, 0x80000000, 0, 0], show_display: true, })

Properties

PropertyTypeDescription
address{ bnbGetAddress: (params: AddressRequest) => Promise<{ address: string; }>; cosmosGetAddress: (params: AddressRequest) => Promise<{ address: string; }>; ethGetAddress: (params: AddressRequest) => Promise<{ address: string; }>; mayachainGetAddress: (params: AddressRequest) => Promise<{ address: string; }>; osmosisGetAddress: (params: AddressRequest) => Promise<{ address: string; }>; solanaGetAddress: (params: AddressRequest) => Promise<{ address: string; }>; tendermintGetAddress: (params: AddressRequest) => Promise<{ address: string; }>; thorchainGetAddress: (params: AddressRequest) => Promise<{ address: string; }>; tonGetAddress: (params: AddressRequest) => Promise<{ address: string; }>; tronGetAddress: (params: AddressRequest) => Promise<{ address: string; }>; utxoGetAddress: (params: AddressRequest) => Promise<{ address: string; }>; xrpGetAddress: (params: AddressRequest) => Promise<{ address: string; }>; }Derive receive addresses on the device. Every method takes a BIP32 derivation path (address_n) and returns the derived address. Pass show_display: true to have the device show the address on-screen so the user can visually verify it before use.
address.bnbGetAddress(params: AddressRequest) => Promise<{ address: string; }>Derive a BNB Beacon Chain address.
address.cosmosGetAddress(params: AddressRequest) => Promise<{ address: string; }>Derive a Cosmos Hub (ATOM) address.
address.ethGetAddress(params: AddressRequest) => Promise<{ address: string; }>Derive an Ethereum (or EVM-compatible) address.
address.mayachainGetAddress(params: AddressRequest) => Promise<{ address: string; }>Derive a MAYAChain (CACAO) address.
address.osmosisGetAddress(params: AddressRequest) => Promise<{ address: string; }>Derive an Osmosis (OSMO) address.
address.solanaGetAddress(params: AddressRequest) => Promise<{ address: string; }>Derive a Solana (SOL) address.
address.tendermintGetAddress(params: AddressRequest) => Promise<{ address: string; }>Derive a generic Tendermint-based address.
address.thorchainGetAddress(params: AddressRequest) => Promise<{ address: string; }>Derive a THORChain (RUNE) address.
address.tonGetAddress(params: AddressRequest) => Promise<{ address: string; }>Derive a TON address.
address.tronGetAddress(params: AddressRequest) => Promise<{ address: string; }>Derive a TRON (TRX) address.
address.utxoGetAddress(params: AddressRequest) => Promise<{ address: string; }>Derive a UTXO (BTC/LTC/BCH/DOGE/DASH) address.
address.xrpGetAddress(params: AddressRequest) => Promise<{ address: string; }>Derive an XRP (Ripple) address.
binance{ binanceSignTransaction: (params: BnbSignTxParams) => Promise<SignedTx>; }BNB Beacon Chain signing.
binance.binanceSignTransaction(params: BnbSignTxParams) => Promise<SignedTx>Sign a BNB Beacon Chain transaction.
btc{ btcSignTransaction: (params: BtcSignTxParams) => Promise<SignedTx>; }Bitcoin and UTXO chain signing.
btc.btcSignTransaction(params: BtcSignTxParams) => Promise<SignedTx>Sign a UTXO transaction (BTC, LTC, BCH, DOGE, DASH, etc.).
chain{ broadcast: (params: BroadcastParams) => Promise<any>; getAvailableAssets: () => Promise<any>; getBalance: (params: NetworkAddressParams) => Promise<any>; getFeeRate: (params: NetworkIdParams) => Promise<any>; getGasPrice: (params: NetworkIdParams) => Promise<any>; getInboundAddresses: () => Promise<any>; getMarketInfo: (params: MarketInfoParams) => Promise<any>; getNonce: (params: NetworkAddressParams) => Promise<any>; getPortfolioBalances: (params: PortfolioBalancesParams) => Promise<any>; getPubkeyInfo: (params: PubkeyInfoParams) => Promise<any>; getStakingPositions: (params: StakingParams) => Promise<any>; getSwapQuote: (params: SwapQuoteParams) => Promise<any>; getTokenDecimals: (params: TokenDecimalsParams) => Promise<any>; getTransactionHistory: (params: TxHistoryParams) => Promise<any>; listUnspent: (params: ListUnspentParams) => Promise<any>; searchAssets: (params: SearchAssetsParams) => Promise<any>; }Chain data queries: portfolio balances, market prices, UTXOs, transaction history, fee estimation, and swap quotes. Pulls data from upstream indexers — does not require the device to be connected.
chain.broadcast(params: BroadcastParams) => Promise<any>Broadcast a signed transaction to the network.
chain.getAvailableAssets() => Promise<any>List all assets the chain indexer knows about.
chain.getBalance(params: NetworkAddressParams) => Promise<any>Get the native asset balance for an address.
chain.getFeeRate(params: NetworkIdParams) => Promise<any>Get the current recommended fee rate for a UTXO network.
chain.getGasPrice(params: NetworkIdParams) => Promise<any>Get the current gas price for an EVM network.
chain.getInboundAddresses() => Promise<any>Get THORChain/Mayachain inbound addresses (for swap deposits).
chain.getMarketInfo(params: MarketInfoParams) => Promise<any>Get market info (price, market cap) for the supplied CAIPs.
chain.getNonce(params: NetworkAddressParams) => Promise<any>Get the nonce (tx count) for an EVM address.
chain.getPortfolioBalances(params: PortfolioBalancesParams) => Promise<any>Get portfolio balances across the supplied pubkeys.
chain.getPubkeyInfo(params: PubkeyInfoParams) => Promise<any>Get pubkey info (balance, tx count) for a UTXO xpub.
chain.getStakingPositions(params: StakingParams) => Promise<any>Get staking positions for an address.
chain.getSwapQuote(params: SwapQuoteParams) => Promise<any>Get a swap quote from the integrated aggregator.
chain.getTokenDecimals(params: TokenDecimalsParams) => Promise<any>Get the decimals for an ERC-20 / token contract.
chain.getTransactionHistory(params: TxHistoryParams) => Promise<any>Get transaction history for one or more pubkeys.
chain.listUnspent(params: ListUnspentParams) => Promise<any>List unspent outputs for a UTXO xpub.
chain.searchAssets(params: SearchAssetsParams) => Promise<any>Search assets by symbol or name.
cosmos{ cosmosSignAmino: (params: CosmosAminoSignParams) => Promise<SignedTx>; cosmosSignAminoDelegate: (params: CosmosAminoSignParams) => Promise<SignedTx>; cosmosSignAminoIbcTransfer: (params: CosmosAminoSignParams) => Promise<SignedTx>; cosmosSignAminoRedelegate: (params: CosmosAminoSignParams) => Promise<SignedTx>; cosmosSignAminoUndelegate: (params: CosmosAminoSignParams) => Promise<SignedTx>; cosmosSignAminoWithdrawRewards: (params: CosmosAminoSignParams) => Promise<SignedTx>; }Cosmos Hub amino signing (transfer, staking, IBC).
cosmos.cosmosSignAmino(params: CosmosAminoSignParams) => Promise<SignedTx>Sign a generic Cosmos amino message.
cosmos.cosmosSignAminoDelegate(params: CosmosAminoSignParams) => Promise<SignedTx>Sign a Cosmos MsgDelegate.
cosmos.cosmosSignAminoIbcTransfer(params: CosmosAminoSignParams) => Promise<SignedTx>Sign a Cosmos IBC MsgTransfer.
cosmos.cosmosSignAminoRedelegate(params: CosmosAminoSignParams) => Promise<SignedTx>Sign a Cosmos MsgBeginRedelegate.
cosmos.cosmosSignAminoUndelegate(params: CosmosAminoSignParams) => Promise<SignedTx>Sign a Cosmos MsgUndelegate.
cosmos.cosmosSignAminoWithdrawRewards(params: CosmosAminoSignParams) => Promise<SignedTx>Sign a Cosmos MsgWithdrawDelegatorReward for all delegations.
deviceStatus{ isDeviceConnected: () => Promise<boolean>; }Quick device connection status.
deviceStatus.isDeviceConnected() => Promise<boolean>Returns true if a KeepKey device is currently connected and responsive.
eth{ ethSignMessage: (params: EthSignMessageParams) => Promise<any>; ethSignTransaction: (params: EthSignTxParams) => Promise<SignedTx>; ethSignTypedData: (params: EthSignTypedDataParams) => Promise<any>; ethVerifyMessage: (params: EthVerifyMessageParams) => Promise<boolean>; }Ethereum and EVM-compatible signing (sign-tx, sign-message, EIP-712).
eth.ethSignMessage(params: EthSignMessageParams) => Promise<any>Sign a personal message (eth_sign / personal_sign).
eth.ethSignTransaction(params: EthSignTxParams) => Promise<SignedTx>Sign an Ethereum or EVM transaction. Supports legacy and EIP-1559.
eth.ethSignTypedData(params: EthSignTypedDataParams) => Promise<any>Sign an EIP-712 typed data structure.
eth.ethVerifyMessage(params: EthVerifyMessageParams) => Promise<boolean>Verify an Ethereum personal message signature. Returns true if valid.
mayachain{ mayachainSignAminoDeposit: (params: CosmosAminoSignParams) => Promise<SignedTx>; mayachainSignAminoTransfer: (params: CosmosAminoSignParams) => Promise<SignedTx>; }MAYAChain signing (CACAO transfers and deposits).
mayachain.mayachainSignAminoDeposit(params: CosmosAminoSignParams) => Promise<SignedTx>Sign a MAYAChain MsgDeposit (used for swaps).
mayachain.mayachainSignAminoTransfer(params: CosmosAminoSignParams) => Promise<SignedTx>Sign a MAYAChain MsgSend transfer.
osmosis{ osmosisSignAmino: (params: CosmosAminoSignParams) => Promise<SignedTx>; osmosisSignAminoDelegate: (params: CosmosAminoSignParams) => Promise<SignedTx>; osmosisSignAminoIbcTransfer: (params: CosmosAminoSignParams) => Promise<SignedTx>; osmosisSignAminoLpAdd: (params: CosmosAminoSignParams) => Promise<SignedTx>; osmosisSignAminoLpRemove: (params: CosmosAminoSignParams) => Promise<SignedTx>; osmosisSignAminoRedelegate: (params: CosmosAminoSignParams) => Promise<SignedTx>; osmosisSignAminoSwap: (params: CosmosAminoSignParams) => Promise<SignedTx>; osmosisSignAminoUndelegate: (params: CosmosAminoSignParams) => Promise<SignedTx>; osmosisSignAminoWithdrawRewards: (params: CosmosAminoSignParams) => Promise<SignedTx>; }Osmosis amino signing — transfer, staking, IBC, LP, swap.
osmosis.osmosisSignAmino(params: CosmosAminoSignParams) => Promise<SignedTx>Sign a generic Osmosis amino message.
osmosis.osmosisSignAminoDelegate(params: CosmosAminoSignParams) => Promise<SignedTx>Sign an Osmosis MsgDelegate.
osmosis.osmosisSignAminoIbcTransfer(params: CosmosAminoSignParams) => Promise<SignedTx>Sign an Osmosis IBC MsgTransfer.
osmosis.osmosisSignAminoLpAdd(params: CosmosAminoSignParams) => Promise<SignedTx>Sign an Osmosis MsgJoinPool (add liquidity).
osmosis.osmosisSignAminoLpRemove(params: CosmosAminoSignParams) => Promise<SignedTx>Sign an Osmosis MsgExitPool (remove liquidity).
osmosis.osmosisSignAminoRedelegate(params: CosmosAminoSignParams) => Promise<SignedTx>Sign an Osmosis MsgBeginRedelegate.
osmosis.osmosisSignAminoSwap(params: CosmosAminoSignParams) => Promise<SignedTx>Sign an Osmosis MsgSwapExactAmountIn (swap).
osmosis.osmosisSignAminoUndelegate(params: CosmosAminoSignParams) => Promise<SignedTx>Sign an Osmosis MsgUndelegate.
osmosis.osmosisSignAminoWithdrawRewards(params: CosmosAminoSignParams) => Promise<SignedTx>Sign an Osmosis MsgWithdrawDelegatorReward for all delegations.
ripple{ xrpSignTransaction: (params: XrpSignTxParams) => Promise<SignedTx>; }XRP (Ripple) signing.
ripple.xrpSignTransaction(params: XrpSignTxParams) => Promise<SignedTx>Sign an XRP payment transaction.
solana{ solanaSignTransaction: (params: SolanaSignTxParams) => Promise<SignedTx>; }Solana signing (supports SPL tokens).
solana.solanaSignTransaction(params: SolanaSignTxParams) => Promise<SignedTx>Sign a Solana transaction. raw_tx must be the base64-encoded serialized transaction.
sweep{ execute: (params: SweepExecuteParams) => Promise<SweepExecuteResult>; getScanStatus: (scanId: string) => Promise<SweepScanStatus>; startScan: (params?: SweepScanParams) => Promise<{ scanId: string; }>; }Async sweep tool for recovering BTC from non-standard derivation paths (e.g. mistakes from other wallets). Workflow: startScan → poll getScanStatusexecute with a destination.
sweep.execute(params: SweepExecuteParams) => Promise<SweepExecuteResult>Execute a sweep: build the tx, sign on device, broadcast.
sweep.getScanStatus(scanId: string) => Promise<SweepScanStatus>Poll scan progress and results.
sweep.startScan(params?: SweepScanParams) => Promise<{ scanId: string; }>Start an async scan for funds on non-standard BTC paths. Returns a scanId to poll.
system{ device: { applyPolicies: (params: any) => Promise<{ success: boolean; }>; applySettings: (params: ApplySettingsParams) => Promise<{ success: boolean; }>; changePin: (remove?: boolean) => Promise<{ success: boolean; }>; clearSession: () => Promise<{ success: boolean; }>; loadDevice: (params: any) => Promise<{ success: boolean; }>; ping: () => Promise<{ message: string; }>; recoverDevice: (params: { label?: string; passphrase_protection?: boolean; pin_protection?: boolean; word_count?: number; }) => Promise<{ success: boolean; }>; resetDevice: (params: { label?: string; passphrase_protection?: boolean; pin_protection?: boolean; word_count?: number; }) => Promise<{ success: boolean; }>; sendPin: (pin: string) => Promise<{ success: boolean; }>; wipe: () => Promise<{ success: boolean; }>; }; info: { getDevices: () => Promise<{ devices: DeviceInfo[]; total: number; }>; getFeatures: () => Promise<DeviceFeatures>; getHealth: () => Promise<HealthResponse>; getPublicKey: (params: GetPublicKeyRequest) => Promise<{ xpub: string; }>; getSupportedAssets: () => Promise<{ assets: SupportedAsset[]; }>; listCoins: () => Promise<any[]>; }; }Device information, health, and initialization.
system.device{ applyPolicies: (params: any) => Promise<{ success: boolean; }>; applySettings: (params: ApplySettingsParams) => Promise<{ success: boolean; }>; changePin: (remove?: boolean) => Promise<{ success: boolean; }>; clearSession: () => Promise<{ success: boolean; }>; loadDevice: (params: any) => Promise<{ success: boolean; }>; ping: () => Promise<{ message: string; }>; recoverDevice: (params: { label?: string; passphrase_protection?: boolean; pin_protection?: boolean; word_count?: number; }) => Promise<{ success: boolean; }>; resetDevice: (params: { label?: string; passphrase_protection?: boolean; pin_protection?: boolean; word_count?: number; }) => Promise<{ success: boolean; }>; sendPin: (pin: string) => Promise<{ success: boolean; }>; wipe: () => Promise<{ success: boolean; }>; }Device management — PIN, recovery, settings, firmware.
system.device.applyPolicies(params: any) => Promise<{ success: boolean; }>Apply device policy changes.
system.device.applySettings(params: ApplySettingsParams) => Promise<{ success: boolean; }>Change device label, passphrase protection, or auto-lock delay.
system.device.changePin(remove?: boolean) => Promise<{ success: boolean; }>Start a PIN change flow. Pass remove: true to remove the PIN.
system.device.clearSession() => Promise<{ success: boolean; }>Clear the device session (forces PIN re-entry for the next sensitive call).
system.device.loadDevice(params: any) => Promise<{ success: boolean; }>Load a device with a specific seed (testing only).
system.device.ping() => Promise<{ message: string; }>Ping the device. Useful for connection checks.
system.device.recoverDevice(params: { label?: string; passphrase_protection?: boolean; pin_protection?: boolean; word_count?: number; }) => Promise<{ success: boolean; }>Recover an existing device from a seed phrase. Requires user input on device.
system.device.resetDevice(params: { label?: string; passphrase_protection?: boolean; pin_protection?: boolean; word_count?: number; }) => Promise<{ success: boolean; }>Initialize a new device with a fresh seed. Requires user confirmation.
system.device.sendPin(pin: string) => Promise<{ success: boolean; }>Send a PIN entered via matrix input during a recovery flow.
system.device.wipe() => Promise<{ success: boolean; }>Wipe all secrets from the device. Requires user confirmation on device.
system.info{ getDevices: () => Promise<{ devices: DeviceInfo[]; total: number; }>; getFeatures: () => Promise<DeviceFeatures>; getHealth: () => Promise<HealthResponse>; getPublicKey: (params: GetPublicKeyRequest) => Promise<{ xpub: string; }>; getSupportedAssets: () => Promise<{ assets: SupportedAsset[]; }>; listCoins: () => Promise<any[]>; }Read-only device info and health endpoints.
system.info.getDevices() => Promise<{ devices: DeviceInfo[]; total: number; }>List all connected KeepKey devices.
system.info.getFeatures() => Promise<DeviceFeatures>Get full device features — model, firmware version, PIN/passphrase state, policies.
system.info.getHealth() => Promise<HealthResponse>Check REST API health and device connection state. Does not require auth.
system.info.getPublicKey(params: GetPublicKeyRequest) => Promise<{ xpub: string; }>Derive an extended public key (xpub) at the given BIP32 path.
system.info.getSupportedAssets() => Promise<{ assets: SupportedAsset[]; }>List assets supported by the connected device.
system.info.listCoins() => Promise<any[]>List all coins the firmware knows about.
thorchain{ thorchainSignAminoDeposit: (params: CosmosAminoSignParams) => Promise<SignedTx>; thorchainSignAminoTransfer: (params: CosmosAminoSignParams) => Promise<SignedTx>; }THORChain signing (RUNE transfers and deposits for swaps).
thorchain.thorchainSignAminoDeposit(params: CosmosAminoSignParams) => Promise<SignedTx>Sign a THORChain MsgDeposit (used for swaps and loans).
thorchain.thorchainSignAminoTransfer(params: CosmosAminoSignParams) => Promise<SignedTx>Sign a THORChain MsgSend transfer.
ton{ tonSignTransaction: (params: TonSignTxParams) => Promise<SignedTx>; }TON signing (supports Jettons).
ton.tonSignTransaction(params: TonSignTxParams) => Promise<SignedTx>Sign a TON transaction. raw_tx must be the base64- or hex-encoded raw transaction.
tron{ tronSignTransaction: (params: TronSignTxParams) => Promise<SignedTx>; }TRON (TRX) signing, including TRC-20 tokens.
tron.tronSignTransaction(params: TronSignTxParams) => Promise<SignedTx>Sign a TRON transaction. amount is in sun (1 TRX = 1,000,000 sun).
xpub{ getPublicKey: (params: GetPublicKeyRequest) => Promise<{ xpub: string; }>; getPublicKeys: (paths: BatchPubkeysPath[]) => Promise<{ cached_count: number; pubkeys: any[]; total_requested: number; }>; }Extended public key (xpub) derivation — single and batch.
xpub.getPublicKey(params: GetPublicKeyRequest) => Promise<{ xpub: string; }>Derive a single xpub at the given BIP32 path.
xpub.getPublicKeys(paths: BatchPubkeysPath[]) => Promise<{ cached_count: number; pubkeys: any[]; total_requested: number; }>Derive many xpubs in a single request. The server caches results, so subsequent calls for the same path are fast.

Accessors

apiKey
Get Signature
get apiKey(): string;

The current API key, or null if not yet paired.

Returns

string

Methods

getClient()
getClient(): VaultClient;

Access the underlying HTTP client for advanced use cases (custom endpoints, raw requests).

Returns

VaultClient

create()
static create(config?: SdkConfig): Promise<KeepKeySdk>;

Create a connected KeepKeySdk instance.

Verifies the local REST API is reachable, then either validates the supplied apiKey or initiates a new pairing (which requires the user to approve on the device).

Parameters
ParameterTypeDescription
config?SdkConfigOptional configuration. If apiKey is omitted, the SDK will auto-pair, which shows an approval prompt in the KeepKey app.
Returns

Promise<KeepKeySdk>

A connected KeepKeySdk ready to make API calls.

Throws

SdkError if the REST API is not reachable or pairing fails.


SdkError

SDK-specific error with HTTP status

Extends

  • Error

Constructors

Constructor
new SdkError(status: number, message: string): SdkError;
Parameters
ParameterType
statusnumber
messagestring
Returns

SdkError

Overrides
Error.constructor

Properties

PropertyModifierTypeDescriptionInherited from
messagepublicstring-Error.message
namepublicstring-Error.name
stack?publicstring-Error.stack
statuspublicnumber--
stackTraceLimitstaticnumberThe Error.stackTraceLimit property specifies the number of stack frames collected by a stack trace (whether generated by new Error().stack or Error.captureStackTrace(obj)). The default value is 10 but may be set to any valid JavaScript number. Changes will affect any stack trace captured after the value has been changed. If set to a non-number value, or set to a negative number, stack traces will not capture any frames.Error.stackTraceLimit

Methods

captureStackTrace()
static captureStackTrace(targetObject: object, constructorOpt?: Function): void;

Creates a .stack property on targetObject, which when accessed returns a string representing the location in the code at which Error.captureStackTrace() was called.

const myObject = {}; Error.captureStackTrace(myObject); myObject.stack; // Similar to `new Error().stack`

The first line of the trace will be prefixed with ${myObject.name}: ${myObject.message}.

The optional constructorOpt argument accepts a function. If given, all frames above constructorOpt, including constructorOpt, will be omitted from the generated stack trace.

The constructorOpt argument is useful for hiding implementation details of error generation from the user. For instance:

function a() { b(); } function b() { c(); } function c() { // Create an error without stack trace to avoid calculating the stack trace twice. const { stackTraceLimit } = Error; Error.stackTraceLimit = 0; const error = new Error(); Error.stackTraceLimit = stackTraceLimit; // Capture the stack trace above function b Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace throw error; } a();
Parameters
ParameterType
targetObjectobject
constructorOpt?Function
Returns

void

Inherited from
Error.captureStackTrace
prepareStackTrace()
static prepareStackTrace(err: Error, stackTraces: CallSite[]): any;
Parameters
ParameterType
errError
stackTracesCallSite[]
Returns

any

See

https://v8.dev/docs/stack-trace-api#customizing-stack-traces

Inherited from
Error.prepareStackTrace

Interfaces

AddressRequest

Properties

PropertyType
address_nnumber[]
coin?string
script_type?string
show_display?boolean

AddressResult

Properties

PropertyType
addressstring

ApplySettingsParams

Properties

PropertyType
autolock_delay_ms?number
label?string
use_passphrase?boolean

BatchPubkeysPath

Properties

PropertyType
address_nnumber[]
coin?string
networks?string[]
note?string
script_type?string
type?"xpub" | "address"

BnbSignTxParams

Indexable

[key: string]: any

BroadcastParams

Properties

PropertyType
networkIdstring
serializedstring

BtcSignTxParams

Properties

PropertyType
coin?string
inputsany[]
locktime?number
outputsany[]
version?number

CosmosAminoSignParams

Properties

PropertyType
signDocany
signerAddressstring

DeviceFeatures

Properties

PropertyType
auto_lock_delay_msnumber
bootloader_hashstring
bootloader_modeboolean
device_idstring
firmware_hashstring
firmware_variantstring
importedboolean
initializedboolean
labelstring
languagestring
major_versionnumber
minor_versionnumber
modelstring
no_backupboolean
passphrase_cachedboolean
passphrase_protectionboolean
patch_versionnumber
pin_cachedboolean
pin_protectionboolean
policies{ enabled: boolean; policy_name: string; }[]
revisionstring
vendorstring
wipe_code_protectionboolean

DeviceInfo

Properties

PropertyType
device_id?string
features?Partial<DeviceFeatures>
is_active?boolean
name?string
statestring

EthSignMessageParams

Properties

PropertyType
addressstring
messagestring

EthSignTxParams

Properties

PropertyType
address_n_list?number[]
addressNList?number[]
chainId?number
data?string
from?string
gas?string
gasLimit?string
gasPrice?string
maxFeePerGas?string
maxPriorityFeePerGas?string
nonce?string
tostring
valuestring

EthSignTypedDataParams

Properties

PropertyType
addressstring
typedDataany

EthVerifyMessageParams

Properties

PropertyType
addressstring
messagestring
signaturestring

GetPublicKeyRequest

Properties

PropertyType
address_nnumber[]
coin_name?string
ecdsa_curve_name?string
script_type?string
show_display?boolean

HealthResponse

Properties

PropertyType
apiVersionnumber
cached_pubkeysnumber
connectedboolean
device_connectedboolean
readyboolean
statusstring
uptimenumber
versionstring

ListUnspentParams

Properties

PropertyType
networkstring
xpubstring

MarketInfoParams

Properties

PropertyType
caipsstring[]

NetworkAddressParams

Properties

PropertyType
addressstring
networkIdstring

NetworkIdParams

Properties

PropertyType
networkIdstring

PairResponse

Properties

PropertyType
apiKeystring

PortfolioBalancesParams

Properties

PropertyType
pubkeysPubkeyEntry[]

PubkeyEntry

Properties

PropertyType
caipstring
pubkeystring

PubkeyInfoParams

Properties

PropertyType
networkstring
xpubstring

SdkConfig

Properties

PropertyTypeDescription
apiKey?stringExisting API key (from previous pairing). If omitted, SDK will auto-pair.
basePath?stringAlias for baseUrl (v1 SDK compat)
baseUrl?stringVault REST API base URL. Default: http://localhost:1646
pairingInfo?{ basePath?: string; imageUrl?: string; name?: string; url?: string; }v1 SDK compat — pairing info object
pairingInfo.basePath?string-
pairingInfo.imageUrl?string-
pairingInfo.name?string-
pairingInfo.url?string-
serviceImageUrl?stringImage URL shown in pairing approval dialog
serviceKey?stringService key (unused, kept for Pioneer SDK compat)
serviceName?stringName shown in pairing approval dialog

SearchAssetsParams

Properties

PropertyType
limit?number
qstring

SignedTx

Properties

PropertyType
r?string
s?string
serialized?string
serializedTx?string
signature?string
v?number

SolanaSignTxParams

Properties

PropertyType
address_n?number[]
addressNList?number[]
raw_txstring

StakingParams

Properties

PropertyType
addressstring
networkstring

SupportedAsset

Properties

PropertyType
caipstring
chainstring
chainFamilystring
coinstring
networkIdstring
symbolstring

SwapQuoteParams

Properties

PropertyType
buyAssetstring
recipientAddressstring
sellAmountstring
sellAssetstring
senderAddressstring
slippage?number

SweepExecuteParams

Properties

PropertyType
destinationAddress?string
dryRun?boolean
scanIdstring

SweepExecuteResult

Properties

PropertyType
destinationstring
dryRun?boolean
feenumber
inputCountnumber
outputSatsnumber
totalSweptSatsnumber
txid?string
unsignedTx?any

SweepResult

Properties

PropertyType
accountIndex?number
addressstring
balanceSatsnumber
category"account-key" | "mismatch" | "higher-account"
pathstring
scriptTypestring
utxoCountnumber

SweepScanParams

Properties

PropertyType
accountRange?[number, number]
currentMaxAccount?number
higherAccountScanLimit?number
mismatchAccounts?number

SweepScanStatus

Properties

PropertyType
completedAt?number
error?string
idstring
progress{ current: number; phase: string; total: number; }
progress.currentnumber
progress.phasestring
progress.totalnumber
resultsSweepResult[]
startedAtnumber
status"scanning" | "complete" | "error"
totalFoundSatsnumber

TokenDecimalsParams

Properties

PropertyType
contractAddressstring
networkIdstring

TonSignTxParams

Properties

PropertyType
address_n?number[]
addressNList?number[]
raw_txstring

TronSignTxParams

Properties

PropertyType
addressNListnumber[]
amountnumber
fromstring
memo?string
tostring

TxHistoryParams

Properties

PropertyType
queries{ caip: string; pubkey: string; }[]

XrpSignTxParams

Indexable

[key: string]: any
Last updated on