This guide is designed to help you connect your CAS to a working BitGo Express server. |
BitGo Express is designed and written by BitGo for their BitGo website wallet.
BitGo holds and secures your cryptocurrency keys. BitGo Wallet is a hot wallet option in the Crypto Application Server (CAS). BitGo Express is used to interface with BitGo. CAS does not interact with BitGo directly. |
Parameters are host : port : token : wallet_id : wallet_passphrase
port: 3080 is the default port, and is used in most every case & examples below.
Understanding “host”:The “host” is where CAS will steer RPC communications: the target server. The server will vary upon your implementation, and the IP will vary depending upon your actual assigned IP for your server.
|
Navigate to: https://www.bitgo.com/settings#developerOptions
Click + Add Access Token
Enter a descriptive name for the API token.
“Spending Limits” should be non-zero. Enter appropriate amounts.
Enter your BitGo Express node server IP.
Enable all permissions by checking all boxes.
Agree to the terms, and click "Add Token".
The next screen reveals your developer API token. Save it!
It cannot be displayed again!
Normally this is your account password -unless- you created a new wallet and chose a separate password (which is recommended).
host is explained towards the top of this article: Understanding “host”.
port is explained towards the top of this article: Understanding “host”.
token is from: Create a new access token (above)
wallet_id is from: Locate your wallet_id (above)
wallet_passphrase is from: Determine your wallet_passphrase (above)
num_blocks (optional, default=2) (BTC only): the targeted number of blocks for confirmation. The lower the number, the higher the mining fees (but confirmation is faster).
See: this Bitgo article.
fee_rate (optional): the MINIMUM amount in the basic units of the given cryptocurrency.
e.g. Bitcoin: “satoshis per kvByte” (minimum: 1000), must be less than max_fee_rate.
max_fee_rate (optional): the MAXIMUM amount in the basic units of the given cryptocurrency.
e.g. Bitcoin: “satoshis per kvByte” (minimum: 1000).
In this example, using the above, our "Parameters" looks like this (all one line, no spaces):
http://localhost:3080:v2x922bc21177ad708ebbce21fbd7bb4faba5e5f71d7364a901ac6387bd18402aa4:5b58f06d239b32e506435b664b72945d:b788PqEE8cwtFP8nsJTd |
NOTE:You must have an INSTITUTIONAL account with Bitgo to send or receive ETH (or any ETH derivatives).
|
The Hot Wallet BUY test validates your parameters.
The other Crypto Setting tests are irrelevant in this scope.
The master log will contain relevant entries regarding any failures.
Spending Limits are set when creating the access token at Bitgo. A non-zero amount must be listed for each desired coin. If the amount is left as zero, the Crypto Test will pass, while the live transaction will fail.
A “best practice” is to set the limit to a reasonable minimum. See: https://generalbytes.atlassian.net/l/cp/Xv9ihqgM
Create a new access token at Bitgo if you experience this issue.
You’ll see this in the log if the tunnel is connecting correctly:
DEBUG com.generalbytes.batm.server.e.b - opening new tunnel on port 22222, remoteWalletAddress: xxx.xxx.xxx.xxx:3080
DEBUG com.generalbytes.batm.server.e.b - tunnel connected: ClientSessionImpl[batmsshtunnel@yyy.yyy.yyy.yyy/yyy.yyy.yyy.yyy:22222] 42087->3080
this indicates a secure connection is active between CAS (yyy.yyy.yyy.yyy
) and your BitGo Node (xxx.xxx.xxx.xxx
). If you don’t see “connected”, then please double-check your tunnel password.
these log entries have been truncated for ease of viewing. They’ll be somewhat different in your log.
See the instructions above: https://generalbytes.atlassian.net/wiki/spaces/ESD/pages/1001848911/Hot+Wallet+BitGo+Express#2.-Prepare-your-developer-API-token-at-BitGo.
BitGo must permit your BitGo Express node to connect to it’s network.
Bitcoin (BTC) Ripple (XRP) Bitcoin Cash (BCH) Litecoin (LTC) Stellar (XLM) Eos (EOS) Tron (TRX) Dash (DASH) ZCash (ZEC) Algorand (ALGO) Mainnet Hedera HBAR (HBAR) Bitcoin Gold (BTG) Casper (CSPR) Polkadot (DOT) Stacks (STX) Solana (SOL) Near (NEAR) |
Currently, these are the additional coins that a Bitgo ENTERPRISE account allows:
Ethereum (ETH) Ethereum Classic (ETC) Celo Gold (CELO) Bitcoin SV (BSV) Avalanche C-Chain (AVAXC) Rootstock RSK (RBTC) Stacks (STX) Polygon (POLYGON) |