Create Addresses
Create a new receive address for a BitGo wallet to enhance privacy. See the Guide.
-
Create a new receive address for your wallet. You can create a new address for every transaction to enhance privacy. There's no limit to the number of addresses you can create.
Account-based assets can withdraw only from the base address. If you have multiple receive addresses, you must periodically consolidate balances to the base address. UTXO-based assets can withdraw from any address.
Prerequisites: You must have an existing wallet. See Create Wallets.
// 1. Create Address
export COIN="<ASSET_ID>"
export WALLET_ID="<YOUR_WALLET_ID>"
export ACCESS_TOKEN="<YOUR_ACCESS_TOKEN>"
curl -X POST \
https://app.bitgo-test.com/api/v2/$COIN/wallet/$WALLET_ID/address \
-H 'Content-Type: application/json' \
-H "Authorization: Bearer $ACCESS_TOKEN"
// 1. Create Address
const { BitGo } = require('bitgo');
// Fill in with actual access token
const accessToken = '<your_actual_access_token>';
// Initialize the SDK
const bitgo = new BitGo({
accessToken: accessToken,
env: 'custom',
customRootURI: 'https://app.bitgo.com',
});
// Create the wallet
const { wallet } = await bitgo.coin('tbtc4').wallets().generateWallet({
label: 'my hot Wallet',
passphrase: 'VerySecurePassword1234',
enterprise: '5612c2beeecf83610b621b90964448cd'
});
// Or Alternatively you can get an existing wallet
const walletId = '63bc8506e014900008265c65363245f4'
const existingWallet = await bitgo.coin('tbtc4').wallets().get({ id: walletId });
// use the appropriate wallet instance to create new address
const address = await wallet.createAddress();
console.log(JSON.stringify(address, undefined, 2));
Response
// 1. Create Address Response
{
"id": "631283e10e052800066295e210da142a",
"address": "2N9wCEV3KGEFsyo9xoUGjVYaSVwjSueutjz",
"chain": 10,
"index": 2,
"coin": "tbtc4",
"wallet": "6312824bf3281c0006fedaad1d667e67",
"coinSpecific": {
"redeemScript": "00200fdaf19ad268ab964d2e3fd352b69365d29d7a61cca4224eb5ef2b05fdcab106",
"witnessScript": "522103938ad2f9cb72f6d2001927afaa1f0fc66ed377ac0d19712565447d4c6b17c1db2102ccbaceae6b7bc2d34eec97787f8159dd2152a62103470f87c6736b0650b60aff2102c5b2bc81c2678d225f1defbe0e7acb48aca06fe15ea8beb107e4b729d788cf3e53ae"
},
"addressType": "p2shP2wsh",
"keychains": [
{
"id": "6312824b86f4aa0007dd283d1253ac33",
"pub": "xpub661MyMwAqRbcEeuE59B7icbdeDQYFbCTxLRCjSkVYZmgKUZzwjwdXW1V8X33gRmR3LjQsFK9EbzgZ9NezZW2Wj55mScfPHwPitaGdiKJAe8",
"ethAddress": "0x94bbb7c3582ae9fbb829daa9fd81e112184df260",
"source": "user",
"type": "independent",
"encryptedPrv": "{\"iv\":\"T+GU0GhX4XHRRg2ohnzp1w==\",\"v\":1,\"iter\":10000,\"ks\":256,\"ts\":64,\"mode\":\"ccm\",\"adata\":\"\",\"cipher\":\"aes\",\"salt\":\"Yn45uWDyOuM=\",\"ct\":\"dbc8wRJU0art3tW6R/wCs2X3F8Fx4cS+sYw1/rPewTqgwuBoUUn+TO2otaxiWaw1lRKjF3mP+2IHTUif6W2n9ByCiva+xWO8l45nxWMG8RHABA5h0mmNZCZzNAD+0Eyd7MuU/9u0tqI81HBJcppgGu0FegdXbKc=\"}"
},
{
"id": "6312824bb6b93a00078c5624bc86a9b6",
"pub": "xpub661MyMwAqRbcFbRoBvNZ7hmNLD1E67drVGYjVQGBPBeZFRowbPnDNPdKK9c7oq19ekqrAQrJJjPVzepH1dDCJWdLu6Vjgt6BWuToUnkfxDw",
"ethAddress": "0xbecce05e0b880092bd0d2c85b368ec563751b266",
"source": "backup",
"type": "independent"
},
{
"id": "6312824b86f4aa0007dd284157374ba2",
"pub": "xpub661MyMwAqRbcGcpsPgX4ZuS4PP7FHW7JzuDLeydN3iF66vka87L6SNaLMc3k4EUUnbFHswyEBX6SXsoQVH6MUvNjFAGGKB5xekSAe2yP5ne",
"ethAddress": "0xc3a3c72b10d5b448533ff18b3254ca6bbf0d1ba3",
"source": "bitgo",
"type": "independent",
"isBitGo": true
}
]
}