latest contributor to this doc

Last Edit: @smk762 ,

Activation Structures

The ActivationParams object defines additional parameters used for activation. These params may vary depending on the coin type.

The following methods use this structure:

  • TBA
ParameterTypeDescription
required_confirmationsintegerOptional. Confirmations to wait for steps in swap. Defaults to value in the coins file if not set.
requires_notarizationbooleanOptional, defaults to false. For dPoW protected coins, a true value will wait for transactions to be notarised when doing swaps. Overrides value if set in coins file.
priv_key_policystringDefaults to ContextPrivkey. Set as Trezor to activate in Trezor mode.
min_addresses_numberintegerHD wallets only. How many additional addreesses to generate at a minimum.
scan_policystringHD wallets only. Whether or not to scan for new addresses. Select from do_not_scan, scan_if_new_wallet or scan. Note that scan will result in multple requests to the Komodo DeFi SDK.
gap_limitintegerHD wallets only. The max number of empty addresses in a row. If transactions were sent to an address outside the gap_limit, they will not be identified when scanning.
zcash_params_pathstringZHTLC coins only. Path to folder containing Zcash parameters. Optional, defaults to standard location as defined in this guide
scan_blocks_per_iterationintegerZHTLC coins only. Sets the number of scanned blocks per iteration during BuildingWalletDb state. Optional, default value is 1000.
scan_interval_msintegerZHTLC coins only. Sets the interval in milliseconds between iterations of BuildingWalletDb state. Optional, default value is 0.
modeobjectQTUM, UTXO & ZHTLC coins only. A standard ActivationMode object.

For ZHTLC coins, older wallets need to set the sync_params field to a date before its first transaction to see all balance and history. This may take a long time on the first activation, but subsequent activations will be much faster. Using a smaller scan_blocks_per_iteration and larger scan_interval_ms, will reduce the average CPU load during ZHTLC coin activation (at the cost of a longer activation time). These optional fields are recommended when developing for iOS, where a high CPU load may kill the activation process. Android & desktop operating systems do not appear to have any problems with high CPU load during ZHTLC coin activation.

Defines the activation mode for QTUM, BCH, UTXO & ZHTLC coins.

The following methods use this structure:

  • TBA
ParameterTypeDescription
rpcstringNative if running a native blockchain node, Electrum if using electrum servers or Light for ZHTLC coins.
rpc_dataobjectElectrum or Light mode only. A standard ActivationRpcData object.

Contains information about electrum & lightwallet_d servers for coins being used in Electrum or Light mode.

ParameterTypeDescription
light_wallet_d_serverslistZHTLC only. A list of urls which are hosting lightwallet_d servers for a coin.
electrum_serverslist of objectsZHTLC only. A list of standard ActivationServers objects.
electrumlist of objectsQTUM, BCH & UTXO coins only. A list of standard ActivationServers objects.
sync_paramsinteger or stringZHTLC coins only. Optional, defaults to two days ago. Defines where to start scanning blockchain data upon initial activation. Options: "earliest" (the coin's sapling_activation_height), height (a specific block height) or date (a unix timestamp).

The following methods use this structure:

  • TBA

Contains information electrum servers for coins being used in Electrum or Light mode.

ParameterTypeDescription
urlstringThe URL and port for an electrum server.
ws_urlstringOptional, for WSS only. The URL and port for an electrum server's WSS port.
protocolstringOptional, defaults to TCP. Transport protocol used to connect to the server. Options: TCP or SSL
disable_cert_verificationbooleanOptional, defaults to false. If true, this disables server SSL/TLS certificate verification (e.g. for self-signed certificates). Use at your own risk!

ParameterTypeDescription
typeintegerOne of the supported [coin types](link TBA)
protocol_dataobjectA standard CoinProtocolData object.

ParameterTypeDescription
platformstringIndicates the platform parent coin for EMV-like protocols, or the coin used for lightning nodes.
networkstringEither mainnet or `testnet
confirmation_targetsobjectA standard ConfirmationTargets object.

The EvmNode object includes the following items for a given coin or token:

ParameterTypeDescription
urlstringURL of an RPC node
gui_authbooleanOptional, defaults to false. Must be set to true to access RPC nodes run officially by the Komodo Platform team