# TRANSFER example:
request(
"POST",
"/v1/custody/mpc/create_transaction/",
{
"coin": "VET",
"from_address": "0xe0cc496b3d9b0f8019b678066b9db81261d827bc",
"to_address": "0x51d91dd9d7af32fe3aebf7e257c74d24baffa692",
"amount": 1,
"request_id": "1671699717647"
},
api_key, api_secret, host
)
# UTXO example:
request(
"POST",
"/v1/custody/mpc/create_transaction/",
{
'coin': 'XTN',
'request_id': 'mpc_api_1674896802004',
'to_address': '2N4J1WajwKZKpRtzzUmaW9B5GEqkppqdVY9',
'amount': '400003',
'extra_parameters': '{"input_selection":
{"inputs_to_spend":
[{"tx_hash": "e7ddfa61cc2a78e1661da44b10cdc862256573d2dc0485dc989fb7045ed9032c", "vout_n": 1},
{"tx_hash": "eabaee1f1a196b087e78303c6eaaeb9d1166de5f8d85f4ef7872b88bfcd60914", "vout_n": 2}]
}
}'
}
api_key, api_secret, host
# Web3 example:
request(
"POST",
"/v1/custody/mpc/create_transaction/",
{
'coin': 'GETH',
'request_id': 'mpc_api_1674896802004',
'from_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'to_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'amount': '100000000',
'gas_price':2613036
'gas_limit':21000
'extra_parameters':'{"calldata": "0xa8059cbb000000000000000000000000971948873f869e4517311b190d7eb31e30eba0ef000000000000000000000000000000000000000000000000002386f26fc10000"}'
}
api_key, api_secret, host
//TRANSFER example:
coboFetch('POST', '/v1/custody/mpc/create_transaction/', {
"coin": "VET",
"from_address": "0xe0cc496b3d9b0f8019b678066b9db81261d827bc",
"to_address": "0x51d91dd9d7af32fe3aebf7e257c74d24baffa692",
"amount": 1,
"request_id": "1671699717647"
}, api_key, api_secret, host)
.then(res => {
res.json().then((data)=>{
console.log(JSON.stringify(data, null, 4));
})
}).catch(err => {
console.log(err)
});
//UTXO example:
coboFetch('POST', '/v1/custody/mpc/create_transaction/',{
'coin': 'XTN',
'request_id': 'mpc_api_1674896802004',
'to_address': '2N4J1WajwKZKpRtzzUmaW9B5GEqkppqdVY9',
'amount': '400003',
'extra_parameters': '{"input_selection":
{"inputs_to_spend":
[{"tx_hash": "e7ddfa61cc2a78e1661da44b10cdc862256573d2dc0485dc989fb7045ed9032c", "vout_n": 1},
{"tx_hash": "eabaee1f1a196b087e78303c6eaaeb9d1166de5f8d85f4ef7872b88bfcd60914", "vout_n": 2}]
}
}'
}, api_key, api_secret, host)
.then(res => {
res.json().then((data)=>{
console.log(JSON.stringify(data, null, 4));
})
}).catch(err => {
console.log(err)
});
//Web3 example:
coboFetch('POST', '/v1/custody/mpc/create_transaction/',{
'coin': 'GETH',
'request_id': 'mpc_api_1674896802004',
'from_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'to_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'amount': '100000000',
'gas_price':2613036
'gas_limit':21000
'extra_parameters':'{"calldata": "0xa8059cbb000000000000000000000000971948873f869e4517311b190d7eb31e30eba0ef000000000000000000000000000000000000000000000000002386f26fc10000"}'
}, api_key, api_secret, host)
.then(res => {
res.json().then((data)=>{
console.log(JSON.stringify(data, null, 4));
})
}).catch(err => {
console.log(err)
});
//TRANSFER example:
Request("POST", "/v1/custody/mpc/create_transaction/", map[string]string{
"coin": "VET",
"from_address": "0xe0cc496b3d9b0f8019b678066b9db81261d827bc",
"to_address": "0x51d91dd9d7af32fe3aebf7e257c74d24baffa692",
"amount": 1,
"request_id": "1671699717647"
})
//UTXO example:
Request("POST", "/v1/custody/mpc/create_transaction/", map[string]string{
'coin': 'XTN',
'request_id': 'mpc_api_1674896802004',
'to_address': '2N4J1WajwKZKpRtzzUmaW9B5GEqkppqdVY9',
'amount': '400003',
'extra_parameters': '{"input_selection":
{"inputs_to_spend":
[{"tx_hash": "e7ddfa61cc2a78e1661da44b10cdc862256573d2dc0485dc989fb7045ed9032c", "vout_n": 1},
{"tx_hash": "eabaee1f1a196b087e78303c6eaaeb9d1166de5f8d85f4ef7872b88bfcd60914", "vout_n": 2}]
}
}'
})
//Web3 example:
Request("POST", "/v1/custody/mpc/create_transaction/", map[string]string{
'coin': 'GETH',
'request_id': 'mpc_api_1674896802004',
'from_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'to_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'amount': '100000000',
'gas_price':2613036
'gas_limit':21000
'extra_parameters':'{"calldata": "0xa8059cbb000000000000000000000000971948873f869e4517311b190d7eb31e30eba0ef000000000000000000000000000000000000000000000000002386f26fc10000"}'
})
{
"success": true,
"result": {
"cobo_id": "20221227195133000378036000001822"
}
}
Withdraw
Create Transaction
This content applies to WaaS 1.0 only. We highly recommend that you upgrade to WaaS 2.0.
POST
/
v1
/
custody
/
mpc
/
create_transaction
/
# TRANSFER example:
request(
"POST",
"/v1/custody/mpc/create_transaction/",
{
"coin": "VET",
"from_address": "0xe0cc496b3d9b0f8019b678066b9db81261d827bc",
"to_address": "0x51d91dd9d7af32fe3aebf7e257c74d24baffa692",
"amount": 1,
"request_id": "1671699717647"
},
api_key, api_secret, host
)
# UTXO example:
request(
"POST",
"/v1/custody/mpc/create_transaction/",
{
'coin': 'XTN',
'request_id': 'mpc_api_1674896802004',
'to_address': '2N4J1WajwKZKpRtzzUmaW9B5GEqkppqdVY9',
'amount': '400003',
'extra_parameters': '{"input_selection":
{"inputs_to_spend":
[{"tx_hash": "e7ddfa61cc2a78e1661da44b10cdc862256573d2dc0485dc989fb7045ed9032c", "vout_n": 1},
{"tx_hash": "eabaee1f1a196b087e78303c6eaaeb9d1166de5f8d85f4ef7872b88bfcd60914", "vout_n": 2}]
}
}'
}
api_key, api_secret, host
# Web3 example:
request(
"POST",
"/v1/custody/mpc/create_transaction/",
{
'coin': 'GETH',
'request_id': 'mpc_api_1674896802004',
'from_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'to_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'amount': '100000000',
'gas_price':2613036
'gas_limit':21000
'extra_parameters':'{"calldata": "0xa8059cbb000000000000000000000000971948873f869e4517311b190d7eb31e30eba0ef000000000000000000000000000000000000000000000000002386f26fc10000"}'
}
api_key, api_secret, host
//TRANSFER example:
coboFetch('POST', '/v1/custody/mpc/create_transaction/', {
"coin": "VET",
"from_address": "0xe0cc496b3d9b0f8019b678066b9db81261d827bc",
"to_address": "0x51d91dd9d7af32fe3aebf7e257c74d24baffa692",
"amount": 1,
"request_id": "1671699717647"
}, api_key, api_secret, host)
.then(res => {
res.json().then((data)=>{
console.log(JSON.stringify(data, null, 4));
})
}).catch(err => {
console.log(err)
});
//UTXO example:
coboFetch('POST', '/v1/custody/mpc/create_transaction/',{
'coin': 'XTN',
'request_id': 'mpc_api_1674896802004',
'to_address': '2N4J1WajwKZKpRtzzUmaW9B5GEqkppqdVY9',
'amount': '400003',
'extra_parameters': '{"input_selection":
{"inputs_to_spend":
[{"tx_hash": "e7ddfa61cc2a78e1661da44b10cdc862256573d2dc0485dc989fb7045ed9032c", "vout_n": 1},
{"tx_hash": "eabaee1f1a196b087e78303c6eaaeb9d1166de5f8d85f4ef7872b88bfcd60914", "vout_n": 2}]
}
}'
}, api_key, api_secret, host)
.then(res => {
res.json().then((data)=>{
console.log(JSON.stringify(data, null, 4));
})
}).catch(err => {
console.log(err)
});
//Web3 example:
coboFetch('POST', '/v1/custody/mpc/create_transaction/',{
'coin': 'GETH',
'request_id': 'mpc_api_1674896802004',
'from_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'to_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'amount': '100000000',
'gas_price':2613036
'gas_limit':21000
'extra_parameters':'{"calldata": "0xa8059cbb000000000000000000000000971948873f869e4517311b190d7eb31e30eba0ef000000000000000000000000000000000000000000000000002386f26fc10000"}'
}, api_key, api_secret, host)
.then(res => {
res.json().then((data)=>{
console.log(JSON.stringify(data, null, 4));
})
}).catch(err => {
console.log(err)
});
//TRANSFER example:
Request("POST", "/v1/custody/mpc/create_transaction/", map[string]string{
"coin": "VET",
"from_address": "0xe0cc496b3d9b0f8019b678066b9db81261d827bc",
"to_address": "0x51d91dd9d7af32fe3aebf7e257c74d24baffa692",
"amount": 1,
"request_id": "1671699717647"
})
//UTXO example:
Request("POST", "/v1/custody/mpc/create_transaction/", map[string]string{
'coin': 'XTN',
'request_id': 'mpc_api_1674896802004',
'to_address': '2N4J1WajwKZKpRtzzUmaW9B5GEqkppqdVY9',
'amount': '400003',
'extra_parameters': '{"input_selection":
{"inputs_to_spend":
[{"tx_hash": "e7ddfa61cc2a78e1661da44b10cdc862256573d2dc0485dc989fb7045ed9032c", "vout_n": 1},
{"tx_hash": "eabaee1f1a196b087e78303c6eaaeb9d1166de5f8d85f4ef7872b88bfcd60914", "vout_n": 2}]
}
}'
})
//Web3 example:
Request("POST", "/v1/custody/mpc/create_transaction/", map[string]string{
'coin': 'GETH',
'request_id': 'mpc_api_1674896802004',
'from_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'to_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'amount': '100000000',
'gas_price':2613036
'gas_limit':21000
'extra_parameters':'{"calldata": "0xa8059cbb000000000000000000000000971948873f869e4517311b190d7eb31e30eba0ef000000000000000000000000000000000000000000000000002386f26fc10000"}'
})
{
"success": true,
"result": {
"cobo_id": "20221227195133000378036000001822"
}
}
Request
String
required
coin code
String
required
transaction ID (unique identifier of a transaction request, which must correspond to a client’s transaction; UUID should be used and the length should be equal to or less than 120 characters)
Int
transaction amount in decimal places (e.g. one bitcoin is divisible to eight decimal places, and 100000000 represents 1 BTC)Account Model: this parameter is requiredUTXO Model: this parameter is optional. The transaction sending amount will be based on the
to_address_details parameter if the amount is zero or emptyString
Account Model: this parameter is requiredUTXO Model: this parameter is optional, the input will be selected based off the
extra_parameters parameter if the from_address is empty or not passed. The from_address will also be used as the change address of UTXO transactions when utxo_change_address not specified in extra_parametersString
to address
String
list of addresses used for receiving coins associated with the UTXO model; this value must be a JSON string and has a parameter type that fits.
Please note that the
Please note that the
to_address_details parameter and amount parameter are alternative. Please set the amount parameter to 0 or leave it empty when using the to_address_details parameter.Sample
to_address_details: '[{"to_address": "2N4J1WajwKZKpRtzzUmaW9B5GEqkppqdVY9","amount": "547"},
{"to_address": "tb1qycxy8d8jgff8hql09y62smw5s5mrf3ryn2j9lk","amount": "548"}]'
Float
transaction fees per byte; applicable to UTXO model; use either fee or fee_amount for UTXO model
If you have previously called the
estimate_fee API to obtain an estimated fee for UTXO transactions before creating the transaction, please use the fee_amount parameter instead of fee to specify the transaction fee. Otherwise, it will re-estimate the transaction fee based on the fee parameter when creating the transaction.Int
gas price; applicable to ETH; unit: wei
Int
gas limit, applicable to ETH
Int
action type,
100: TRANSFER (default);
200: CONTRACT_CALL
String
UTXO Model:Web3 wallet:
- input_selection: inputs to be excluded and included in transactions associated with the UTXO model; inputs must be in correspondence with from_address (if specified); it must be a JSON string and has a structure that fits InputSelection
- inputs_to_spend: UTXO you want as input. Please note that the length of the list of UTXOs should be less than or equal to 100.
- tx_hash: Transaction tx_hash
- vout_n: UTXO index
- inputs_to_exclude: UTXO you don’t want as input
- tx_hash: Transaction tx_hash
- vout_n: UTXO index
- utxo_change_address: the change address for UTXO transactions. if parameter from_address passed and utxo_change_address not passed, from_address will be used as the change address. otherwise, the permanent address (SegWit) will be used as the change address
Sample
extra_parameters: '{"input_selection":
{"inputs_to_spend":[
{"tx_hash": "e7ddfa61cc2a78e1661da44b10cdc862256573d2dc0485dc989fb7045ed9032c", "vout_n": 1},
{"tx_hash": "eabaee1f1a196b087e78303c6eaaeb9d1166de5f8d85f4ef7872b88bfcd60914", "vout_n": 2}],
"inputs_to_exclude":[
{"tx_hash": "e7ddfa61cc2a78e1661da44b10cdc862256573d2dc0485dc989fb7045ed9032c", "vout_n": 3},
{"tx_hash": "eabaee1f1a196b087e78303c6eaaeb9d1166de5f8d85f4ef7872b88bfcd60914", "vout_n": 4}]
},
"utxo_change_address": "2MznT7D2tKZKshfQPfhTuLYB7Bw9TZqb17w"
}'
- calldata: request data associated with an EVM transaction; When deploying a new contract, the
to_addressparameter should be set to0x0000000000000000000000000000000000000000. Please note that when usingcalldata, thegas_limitparameter should be set to an appropriate value based on the data being sent and the contract’s execution requirements.
Sample
extra_parameters: '{"calldata": "0xa8059cbb000000000000000000000000971948873f869e4517311b190d7eb31e30eba0ef000000000000000000000000000000000000000000000000002386f26fc10000"}'
- instructions: request data associated with a Solana transaction. This parameter is in JSON format and contains a list of instructions. Each instruction includes the following parameters:
- accounts: a list of accounts associated with Solana contract, each of which has the following attributes:
- pubkey: account address. If the account is signer,
pubkeyneeds to match thefrom_addressparameter. - is_signer: boolean value indicating whether the account can sign transactions.
- is_writable: boolean value indicating whether the account can be modified.
- pubkey: account address. If the account is signer,
- data: data used for calling Solana contract.
- program_id: contract address. when calling a Solana contract, the
to_addressparameter needs to match theprogram_idparameter. If multiple contracts are being called, then theto_addressparameter should match theprogram_idparameter of the first instruction.
- accounts: a list of accounts associated with Solana contract, each of which has the following attributes:
Sample
extra_parameters: '{"instructions": "[{\\"accounts\\":[{\\"pubkey\\":\\"E4MhQWiqCLER3fFZNf8LyQFpLWW3BRxtsR5eps3c3vNS\\",\\"is_signer\\":true,\\"is_writable\\":true}],\\"data\\":\\"Canary TX 4, slot: 219858117\\",\\"program_id\\":\\"MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr\\"}]"}'
Int
transaction fee; applicable to UTXO model; use either fee or fee_amount for UTXO model
String
The remark to withdraw. The length should be less than 2048 characters
Int
How the transaction utilizes the gas station, 0: no refueling(default); 1: passive use of the gas station; 2: active use of the gas station.
This parameter is used when you’ve activated the gas station service and use the gas station to support the transaction fee for MPC transactions.
This parameter is used when you’ve activated the gas station service and use the gas station to support the transaction fee for MPC transactions.
The gas station will definitely refuel for the transaction when in active use, while for passive use, refueling by the gas station occurs only when the address balance is insufficient for transaction fees.
Please note that due to the TRON chain’s fee delegation mechanism, only no refueling and active use of the gas station are supported for the TRON chain; passive use of the gas station is not supported.
Please note that due to the TRON chain’s fee delegation mechanism, only no refueling and active use of the gas station are supported for the TRON chain; passive use of the gas station is not supported.
String
Needed when you withdraw XRP
Response
bool
request successful or failed
# TRANSFER example:
request(
"POST",
"/v1/custody/mpc/create_transaction/",
{
"coin": "VET",
"from_address": "0xe0cc496b3d9b0f8019b678066b9db81261d827bc",
"to_address": "0x51d91dd9d7af32fe3aebf7e257c74d24baffa692",
"amount": 1,
"request_id": "1671699717647"
},
api_key, api_secret, host
)
# UTXO example:
request(
"POST",
"/v1/custody/mpc/create_transaction/",
{
'coin': 'XTN',
'request_id': 'mpc_api_1674896802004',
'to_address': '2N4J1WajwKZKpRtzzUmaW9B5GEqkppqdVY9',
'amount': '400003',
'extra_parameters': '{"input_selection":
{"inputs_to_spend":
[{"tx_hash": "e7ddfa61cc2a78e1661da44b10cdc862256573d2dc0485dc989fb7045ed9032c", "vout_n": 1},
{"tx_hash": "eabaee1f1a196b087e78303c6eaaeb9d1166de5f8d85f4ef7872b88bfcd60914", "vout_n": 2}]
}
}'
}
api_key, api_secret, host
# Web3 example:
request(
"POST",
"/v1/custody/mpc/create_transaction/",
{
'coin': 'GETH',
'request_id': 'mpc_api_1674896802004',
'from_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'to_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'amount': '100000000',
'gas_price':2613036
'gas_limit':21000
'extra_parameters':'{"calldata": "0xa8059cbb000000000000000000000000971948873f869e4517311b190d7eb31e30eba0ef000000000000000000000000000000000000000000000000002386f26fc10000"}'
}
api_key, api_secret, host
//TRANSFER example:
coboFetch('POST', '/v1/custody/mpc/create_transaction/', {
"coin": "VET",
"from_address": "0xe0cc496b3d9b0f8019b678066b9db81261d827bc",
"to_address": "0x51d91dd9d7af32fe3aebf7e257c74d24baffa692",
"amount": 1,
"request_id": "1671699717647"
}, api_key, api_secret, host)
.then(res => {
res.json().then((data)=>{
console.log(JSON.stringify(data, null, 4));
})
}).catch(err => {
console.log(err)
});
//UTXO example:
coboFetch('POST', '/v1/custody/mpc/create_transaction/',{
'coin': 'XTN',
'request_id': 'mpc_api_1674896802004',
'to_address': '2N4J1WajwKZKpRtzzUmaW9B5GEqkppqdVY9',
'amount': '400003',
'extra_parameters': '{"input_selection":
{"inputs_to_spend":
[{"tx_hash": "e7ddfa61cc2a78e1661da44b10cdc862256573d2dc0485dc989fb7045ed9032c", "vout_n": 1},
{"tx_hash": "eabaee1f1a196b087e78303c6eaaeb9d1166de5f8d85f4ef7872b88bfcd60914", "vout_n": 2}]
}
}'
}, api_key, api_secret, host)
.then(res => {
res.json().then((data)=>{
console.log(JSON.stringify(data, null, 4));
})
}).catch(err => {
console.log(err)
});
//Web3 example:
coboFetch('POST', '/v1/custody/mpc/create_transaction/',{
'coin': 'GETH',
'request_id': 'mpc_api_1674896802004',
'from_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'to_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'amount': '100000000',
'gas_price':2613036
'gas_limit':21000
'extra_parameters':'{"calldata": "0xa8059cbb000000000000000000000000971948873f869e4517311b190d7eb31e30eba0ef000000000000000000000000000000000000000000000000002386f26fc10000"}'
}, api_key, api_secret, host)
.then(res => {
res.json().then((data)=>{
console.log(JSON.stringify(data, null, 4));
})
}).catch(err => {
console.log(err)
});
//TRANSFER example:
Request("POST", "/v1/custody/mpc/create_transaction/", map[string]string{
"coin": "VET",
"from_address": "0xe0cc496b3d9b0f8019b678066b9db81261d827bc",
"to_address": "0x51d91dd9d7af32fe3aebf7e257c74d24baffa692",
"amount": 1,
"request_id": "1671699717647"
})
//UTXO example:
Request("POST", "/v1/custody/mpc/create_transaction/", map[string]string{
'coin': 'XTN',
'request_id': 'mpc_api_1674896802004',
'to_address': '2N4J1WajwKZKpRtzzUmaW9B5GEqkppqdVY9',
'amount': '400003',
'extra_parameters': '{"input_selection":
{"inputs_to_spend":
[{"tx_hash": "e7ddfa61cc2a78e1661da44b10cdc862256573d2dc0485dc989fb7045ed9032c", "vout_n": 1},
{"tx_hash": "eabaee1f1a196b087e78303c6eaaeb9d1166de5f8d85f4ef7872b88bfcd60914", "vout_n": 2}]
}
}'
})
//Web3 example:
Request("POST", "/v1/custody/mpc/create_transaction/", map[string]string{
'coin': 'GETH',
'request_id': 'mpc_api_1674896802004',
'from_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'to_address': '0x7c524e7c37b9b8279aaf9b10940a8368540f2aec',
'amount': '100000000',
'gas_price':2613036
'gas_limit':21000
'extra_parameters':'{"calldata": "0xa8059cbb000000000000000000000000971948873f869e4517311b190d7eb31e30eba0ef000000000000000000000000000000000000000000000000002386f26fc10000"}'
})
{
"success": true,
"result": {
"cobo_id": "20221227195133000378036000001822"
}
}
