Note: If the viewSecretKey argument is not provided, the reset() method resets the wallet and re-syncs it. If the viewSecretKey argument is provided, the reset() method substitutes the existing wallet with a new one with the specified key.
save
save() method allows you to save your wallet by request.
getMnemonicSeed() method returns the mnemonic seed for the given deterministic address. A mnemonic seed is a list of words which can be used to recover a wallet.
Input
Argument
Mandatory
Description
Format
address
Yes
Valid deterministic address that exists in this container
string
Output
Argument
Description
Format
mnemonicSeed
Mnemonic seed
string
Note: The first wallet address that is generated when the container is created is the deterministic address. Only one wallet from a multi-wallet container can be deterministic. If a non-deterministic address is given, the RPC response will be an error with the message: "Keys not deterministic."
createAddress() method creates an additional address in your wallet.
Input
Argument
Mandatory
Description
Format
spendSecretKey
No
Private spend key. If spendSecretKey was specified, RPC Wallet creates spend address
string
spendPublicKey
No
Public spend key. If spendPublicKey was specified, RPC Wallet creates view address
string
newAddress
No
Is this a new address being created? If so, blocks before the creation timestamp will not be scanned. Defaults to true if neither keys are given, as it is guaranteed to be a new address.
bool
scanHeight
No
The height to begin scanning for transactions at. Only applies if a public/secret key is supplied. This can greatly speed up wallet syncing time.
getTransactionHashes() method returns an array of block and transaction hashes. A transaction consists of transfers. A transfer is an amount-address pair. There could be several transfers in a single transaction.
Input
Argument
Mandatory
Description
Format
addresses
No
Array of strings, where each string is an address
array
blockHash
Only one of these parameters (blockHash or firstBlockIndex) is allowed
Hash of the starting block
string
firstBlockIndex
Only one of these parameters (blockHash or firstBlockIndex) is allowed
Starting height
int
blockCount
Yes
Number of blocks to return transaction hashes from
int
paymentId
No
Valid payment ID (64char hex string)
string
If paymentId parameter is set, getTransactionHashes() method returns transaction hashes of transactions that contain specified payment ID in the given block range.
If addresses parameter is set, getTransactionHashes() method returns transaction hashes of transactions that contain transfer from at least one of specified addresses.
If both above mentioned parameters are set, getTransactionHashes() method returns transaction hashes of transactions that contain both specified payment ID and transfer from at least one of specified addresses.
Output
Argument
Description
items
Array of
| **Attribute** | **Description** | **Format** |
| blockHash | Hash of the block which contains transaction hashes | string |
| transactionHashes | Array of strings, where each string is a transaction hash | array |
getTransactions() method returns an array of block and transaction hashes. A transaction consists of transfers. A transfer is an amount-address pair. There could be several transfers in a single transaction.
Input
Argument
Mandatory
Description
Format
addresses
No
Array of strings, where each string is an address
array
blockHash
Only one of these parameters (blockHash or firstBlockIndex) is allowed.
Hash of the starting block
string
firstBlockIndex
Only one of these parameters (blockHash or firstBlockIndex) is allowed.
Starting height >0 (1,2,3...)
int
blockCount
Yes
Number of blocks to return transaction hashes from
int
paymentId
No
Valid payment ID (64char hex string)
string
If paymentId parameter is set, getTransactions() method returns transactions that contain specified payment ID in the given block range.
If addresses parameter is set, getTransactions() method returns transactions that contain transfer from at least one of specified addresses.
If both above mentioned parameters are set, getTransactions() method returns transactions that contain both specified payment ID and transfer from at least one of specified addresses.
Output
Argument
Description
Format
items
Array of
| block_hash | hash of the block which contains a transaction | string
| transactions | see below | array
Transaction attributes:
Argument
Description
Format
transactionHash
Hash of the transaction
string
blockIndex
Number of the block that contains a transaction
int
timestamp
Timestamp of the transaction
int
isBase
Shows if the transaction is a CoinBase transaction or not
boolean
unlockTime
Height of the block when transaction is going to be available for spending
int
amount
Amount of the transaction
int
fee
Transaction fee
int
extra
Hash of the transaction
string
paymentId
Payment ID of the transaction (optional) (64char hex string)
sendTransaction() method allows you to send transaction(s) to one or several addresses. Also, it allows you to use a payment ID for a transaction to a single address.
Input
Argument
Mandatory
Description
Format
addresses
No
Array of strings, where each string is an address to take the funds from
array
transfers
Yes
Array of objects, address: (string address), amount: (int amount)
array
fee
No
Transaction fee. Should be given in atomic units. Leave blank to use the minimum fee possible.
int
feePerByte
No
Fee to pay per byte of the transaction. Should be given in atomic units. If given, should be greater than 1.953125, the minimum network fee per byte.
float
unlockTime
No
The block height at which the transaction will be unlocked for spending.
int
anonymity
Yes
Privacy (mixin) level from block 800,000 three (3)
int
extra
No
String of variable length. Can contain A-Z, 0-9 characters.
string
paymentId
No
Payment ID (64char hex string)
string
changeAddress
No
Valid and existing address in this container.
string
If container contains only 1 address, changeAddress field can be left empty and the change is going to be sent to this address.
If addresses field contains only 1 address, changeAddress can be left empty and the change is going to be sent to this address.
In the rest of the cases, changeAddress field is mandatory and must contain an address.
Output
Argument
Description
Format
transactionHash
Hash of the sent transaction
string
fee
The fee of the send transaction
int
curl -X POST -i -H "Accept: application/json" -d '{"jsonrpc":"2.0","id":"0","password":"passw0rd","method":"sendTransaction","params":{"transfers":[{"amount":5000,"address":"SEKReTFHsz8G4...Y5owuFxLd"}],"fee":100,"anonymity":3,"unlockTime":0}}' http://localhost:8070/json_rpc
createDelayedTransaction() method creates a delayed transaction. Such transactions are not sent into the network automatically and should be pushed using sendDelayedTransaction method.
Input
Argument
Mandatory
Description
Format
addresses
No
Array of strings, where each string is an address
array
transfers
Yes
Array of address (string), amount (int)
array
fee
No
Transaction fee. Should be given in atomic units. Leave blank to use the minimum fee possible.
int
feePerByte
No
Fee to pay per byte of the transaction. Should be given in atomic units. If given, should be greater than 1.953125, the minimum network fee per byte.
float
unlockTime
No
Height of the block until which transaction is going to be locked for spending.
int
anonymity
Yes
Privacy (mixin) level from block 800,000 three (3)
int
extra
No
String of variable length. Can contain A-Z, 0-9 characters.
string
paymentId
No
Payment ID (64char hex string)
string
changeAddress
No
Valid and existing in this container address.
string
If container contains only 1 address, changeAddress field can be left empty and the change is going to be sent to this address
If addresses field contains only 1 address, changeAddress can be left empty and the change is going to be sent to this address
In the rest of the cases, changeAddress field is mandatory and must contain an address.
Outputs that were used for this transactions will be locked until the transaction is sent or cancelled
transaction_hash = '50d83...'
response = walletd.delete_delayed_transaction(transaction_hash)
# If delete is successful, the response will be True
print(response)
transaction_hash = '50d83...'
response = walletd.send_delayed_transaction(transaction_hash)
# If transaction is sent successful, the response will be True
print(response)
sendFusionTransaction() method allows you to send a fusion transaction, by taking funds from selected addresses and transferring them to the destination address. If there aren't any outputs that can be optimized, sendFusionTransaction() will return an error. You can use estimateFusion to check the outputs, available for the optimization.
Input
Argument
Mandatory
Description
Format
threshold
Yes
Value that determines which outputs will be optimized. Only the outputs, lesser than the threshold value, will be included into a fusion transaction.
int
anonymity
Yes
Privacy (mixin) level from block 800,000 three (3)
int
addresses
No
Array of strings, where each string is an address to take the funds from.
array
destinationAddress
No
An address that the optimized funds will be sent to. Valid and existing in this container address.
string
If container contains only 1 address, destinationAddress field can be left empty and the funds are going to be sent to this address.
If addresses field contains only 1 address, destinationAddress can be left empty and the funds are going to be sent to this address.
In the rest of the cases, destinationAddress field is mandatory and must contain an address.
estimateFusion() method counts the number of unspent outputs of the specified addresses and returns how many of those outputs can be optimized. This method is used to understand if a fusion transaction can be created. If fusionReadyCount returns a value = 0, then a fusion transaction cannot be created.
Input
Argument
Mandatory
Description
Format
threshold
Yes
Value that determines which outputs will be optimized. Only the outputs, lesser than the threshold value, will be included into a fusion transaction.
int
addresses
No
Array of strings, where each string is an address to take the funds from.
string
Output
Argument
Description
Format
totalOutputCount
Total number of unspent outputs of the specified addresses.
createIntegratedAddress() method allows you to create a combined address, containing a standard address and a paymentId, to be used in sendTransaction() or for supplying to a user, instead of using an address and paymentId as separate parameters. This is helpful to ensure users cannot forget to supply a payment Id.
getFeeInfo() method retrieves the fee and address (if any) that that kryptokronad walletd is connecting to is using. This fee will automatically be added to any transactions sent by sendTransaction() or sendDelayedTransaction(). Note it does not apply to sendFusionTransaction().
No input.
Output
Argument
Description
Format
address
The address of the node owner
string
amount
The fee that will be sent to the node owners address with each transaction
Also of note, kryptokrona developers have altered and adapted the content to suit our implementation of the API. This was done independently of the Bytecoin development team. They neither endorse or acknowledge our changes. Feel free to adopt or change our content as per the CC BY SA 3.0 license requirements.