Bitcoin: authorize coinjoin
Allow device to do preauthorized operations in signTransaction
and getOwnershipProof
methods without further user interaction.
Permission persists until physical device disconnection or maxRounds
limit is reached.
const result = await TrezorConnect.authorizeCoinjoin(params);
:warning: This feature is experimental! Do not use it in production!
:note: Supported only by T2T1 with Firmware 2.5.3 or higher!
Params
Exporting single id
path
— requiredstring | Array<number>
prefix of the BIP-32 path leading to the account (m / purpose' / coin_type' / account')read more
coordinator
— requiredstring
coordinator identifier to approve as a prefix in commitment data (max. 36 ASCII characters)
maxRounds
— requirednumber
maximum number of rounds that Trezor is authorized to take part in
maxCoordinatorFeeRate
— requirednumber
maximum coordination fee rate in units of 10**6 percent
maxFeePerKvbyte
— requirednumber
maximum mining fee rate in units of satoshis per 1000 vbytes
coin
- optionalstring
Determines network definition specified in coins.json file. Coin
shortcut
,name
orlabel
can be used.scriptType
— optionalPROTO.InputScriptType
used to distinguish between various address formats (non-segwit, segwit, etc.)
amountUnit
— optionalPROTO.AmountUnit
show amounts in
preauthorized
— optionalCheck if device session is already preauthorized and take no further action if so
coinjoinRequest
— optionalPROTO.CoinJoinRequest
Signing request for a coinjoin transaction
Example:
TrezorConnect.authorizeCoinjoin({
path: "m/10086'/0'/0'",
maxRounds: 3,
maxCoordinatorFeeRate: 500000, // 0.5% => 0.005 * 10**8;
maxFeePerKvbyte: 3500,
scriptType: 'SPENDWITNESS',
});
Result
Success type
{
success: true,
payload: {
message: 'Coinjoin authorized'
}
}
Error
{
success: false,
payload: {
error: string // error message
}
}