Skip to main content
This content applies to WaaS 1.0 only. We highly recommend that you upgrade to WaaS 2.0.

Callback API Request Description

request_type

TypeKeySign = 2

request_detail

The format is a serialized JSON string of structure below.
group_id
String
required
Group ID used during transaction signing.
root_pub_key
String
required
MPC root extended public key.
used_node_ids
[]String
required
Node IDs used during transaction signing.
bip32_path_list
[]String
required
Address paths (BIP32).
msg_hash_list
[]String
required
Hashes to be signed.

extra_info

The format is a serialized JSON string of structure below.
cobo_id
String
required
Unique ID of the transaction signing (KeySign) request.
api_request_id
String
required

Request ID of the withdraw request;

If the request is initialized via API, the value should be the same as request_id;

If the request is initialized via Cobo Custody Web, Cobo will automatically generate a Request ID.

transaction_type
TransactionTypeEnum
required
Please refer to TransactionTypeEnum below.
operation
TransactionOperationEnum
required
Please refer to TransactionOperationEnum below.
coin
String
required
Asset name.
decimal
Int
required
Decimal precision.
from_address
String
required
Address from which assets are withdrawn.
amount
String
Transaction amount, which contains decimal places (e.g. one bitcoin is divisible to eight decimal places, and 100000000 represents 1 BTC).
to_address
String
required
Deposit address.
to_address_details
Json
List of deposit addresses; applicable to the UTXO model; the value must meets the JSON structure of list[ToAddressDetail].
fee
Int
For BTC transaction, this field returns the transaction fees per byte; unit: satoshi.
gas_price
Int
Gas fees; applicable to ETH; unit: GWei.
gas_limit
Int
Gas limit; applicable to ETH.
extra_parameters
Json
required
Additional parameters for the transaction; for more information, please refer to the description of create_transaction.
replace_cobo_id
String
ID of a Cobo transaction that has been designated as RBF.
api_key
String
API_KEY of the withdraw request initialized through API.
spender
String
Email information of the withdrawer; applicable to Cobo Custody Web.
raw_tx
List[RawTx]
required
Raw transaction data.
note
String
required
Transaction remarks.
raw_tx_info
Json
required
Raw information for constructing transaction to be signed.

ToAddressDetail

to_address
String
Withdraw address.
amount
String
Transaction amount, which contains decimal places (e.g. one bitcoin is divisible to eight decimal places, and 100000000 represents 1 BTC).

extra_parameters

inputs_to_spend
List[Input]
Unspent Transaction Output (UTXO) to spend; this only applies in UTXO type of blockchains (e.g. bitcoin).
inputs_to_exclude
List[Input]
Unspent Transaction Output (UTXO) to exclude from spending; this only applies in UTXO type of blockchains (e.g bitcoin).

Input

tx_hash
String
Transaction hash.
vout_n
Int
Transaction index/no.

TransactionTypeEnum

  • TYPE_MPC_WEB = 100
  • TYPE_MPC_MMI = 101
  • TYPE_MPC_API = 102
  • TYPE_RBF_API_SPEEDUP = 103
  • TYPE_RBF_WEB_SPEEDUP = 104
  • TYPE_RBF_API_DROP = 105
  • TYPE_RBF_WEB_DROP = 106
  • TYPE_MPC_TRANSACTION_FROM_EXTERNAL = 107
  • TYPE_MPC_WEB3_WEB = 300 # mpc web3 web withdraw
  • TYPE_MPC_WEB3_MMI_TX = 301 # mpc web3 mmi tx
  • TYPE_MPC_WEB3_MMI_MSG = 302 # mpc web3 mmi msg
  • TYPE_MPC_WEB3_API_TRANSACTION = 303
  • TYPE_MPC_WEB3_API_EIP_191 = 304
  • TYPE_MPC_WEB3_API_EIP_712 = 305
  • TYPE_MPC_WEB3_TRANSACTION_FROM_EXTERNAL = 307
  • TYPE_MPC_WEB3_RBF_API_SPEEDUP = 308
  • TYPE_MPC_WEB3_RBF_WEB_SPEEDUP = 309
  • TYPE_MPC_WEB3_RBF_API_DROP = 310
  • TYPE_MPC_WEB3_RBF_WEB_DROP = 311
  • TYPE_MPC_BABYLON_STAKE = 500
  • TYPE_MPC_BABYLON_STAKE_RBF = 501

TransactionOperationEnum

  • OPERATION_TRANSFER = 100
  • OPERATION_CONTRACT_CALL = 200
  • OPERATION_MINT = 201
  • OPERATION_BURN = 202
  • OPERATION_SIGN_MESSAGE = 300

RawTx

raw_tx
String
Hex-encoded transaction information.
derivation_path
String
Derivation path to sign, for example:“m/44/60/3/0/1”.
Feel free to share your feedback to improve our documentation!