Cirquityd

Cirquityd

new Cirquityd()

Source:

Methods

(async) block(hash) → {Promise.<Cirquityd.BlockSummary>}

Returns information on a single block by hash
Source:
Parameters:
Name Type Description
hash string the hash of the block to retrieve
Returns:
Type:
Promise.<Cirquityd.BlockSummary>
resolves with block summary or rejects with error

(async) blockCount() → {Promise.<number>}

Gets the current block count
Source:
Returns:
Type:
Promise.<number>
resolves with the current block count or rejects with error

(async) blockHeaderByHash(hash) → {Promise.<Cirquityd.BlockHeader>}

Gets the block header
Source:
Parameters:
Name Type Description
hash string the hash of the block to retrieve
Returns:
Type:
Promise.<Cirquityd.BlockHeader>
resolves with block header or rejects with error

(async) blockHeaderByHeight(height) → {Promise.<Cirquityd.BlockHeader>}

Gets the block header
Source:
Parameters:
Name Type Description
height number the height of the block to retrieve
Returns:
Type:
Promise.<Cirquityd.BlockHeader>
resolves with block header or rejects with error

(async) blocksDetailed(optsopt) → {Promise.<Cirquityd.BlocksDetailedResponse>}

Returns up to 100 blocks. If blockHashes are given, it will return beginning from the height of the first hash it finds, plus one. However, if timestamp is given, and this value is higher than the blockHashes, it will start returning from that height instead. The blockHashes should be given with the highest block height hashes first. First 10 blocks hashes go sequential, next in pow(2,n) offset, like 2, 4, 8, 16, 32, 64 and so on, and the last one is always genesis block Typical usage: specify a start timestamp initially, and from then on, also provide the returned block hashes.
Source:
Parameters:
Name Type Attributes Description
opts Object <optional>
the options to use when syncing
Name Type Attributes Default Description
timestamp number <optional>
0 the timestamp to start from
blockHashes Array.<string> <optional>
the block hashes
blockCount number <optional>
0 the number of blocks to return
Returns:
Type:
Promise.<Cirquityd.BlocksDetailedResponse>
resolves with blocks detail information or rejects with error

(async) blockShortHeaders(height) → {Promise.<Array.<Cirquityd.BlockShortHeader>>}

Gets the summary block information for the last 30 blocks before height (inclusive)
Source:
Parameters:
Name Type Description
height number the height of the block to retrieve
Returns:
Type:
Promise.<Array.<Cirquityd.BlockShortHeader>>
resolves with block short headers or rejects with error

(async) blocksLite(optsopt) → {Promise.<Cirquityd.BlocksLiteResponse>}

Returns up to 100 blocks. If blockHashes are given, it will return beginning from the height of the first hash it finds, plus one. However, if timestamp is given, and this value is higher than the blockHashes, it will start returning from that height instead. The blockHashes should be given with the highest block height hashes first. First 10 blocks hashes go sequential, next in pow(2,n) offset, like 2, 4, 8, 16, 32, 64 and so on, and the last one is always genesis block Typical usage: specify a start timestamp initially, and from then on, also provide the returned block hashes.
Source:
Parameters:
Name Type Attributes Description
opts Object <optional>
the options to use when syncing
Name Type Attributes Default Description
timestamp number <optional>
0 the timestamp to start from
blockHashes Array.<string> <optional>
the block hashes
Returns:
Type:
Promise.<Cirquityd.BlocksLiteResponse>
resolves with block information or rejects with error

(async) blockTemplate(walletAddress, reserveSize) → {Promise.<Cirquityd.BlockTemplateResponse>}

Gets the block template using the supplied parameters
Source:
Parameters:
Name Type Description
walletAddress string the wallet address for the block template
reserveSize number the amount of block template reserve space to generate
Returns:
Type:
Promise.<Cirquityd.BlockTemplateResponse>
resolves with block template response or rejects with error

(async) fee() → {Promise.<Cirquityd.NodeFee>}

Retrieves the node fee in atomic units
Source:
Returns:
Type:
Promise.<Cirquityd.NodeFee>
resolves with node fee information or rejects with error

(async) globalIndexes(transactionHash) → {Promise.<Array.<number>>}

Returns the global output indexes of the transaction
Source:
Parameters:
Name Type Description
transactionHash string the hash of the transaction to retrieve
Returns:
Type:
Promise.<Array.<number>>
resolves with indexes global output indexes or rejects with error

(async) globalIndexesForRange(startHeight, endHeight) → {Promise.<Array.<Cirquityd.GlobalIndexesResponse>>}

Returns the global indexes for any transactions in the range [startHeight .. endHeight]. Generally, you only want the global index for a specific transaction, however, this reveals that you probably are the recipient of this transaction. By supplying a range of blocks, you can obfusticate which transaction you are enquiring about.
Source:
Parameters:
Name Type Description
startHeight number The height to begin returning indices from
endHeight number The height to end returning indices from
Returns:
Type:
Promise.<Array.<Cirquityd.GlobalIndexesResponse>>
resolves with global indexes information or rejects with error

(async) height() → {Promise.<Cirquityd.NodeHeight>}

Returns the current daemon height statistics
Source:
Returns:
Type:
Promise.<Cirquityd.NodeHeight>
resolves with node height information or rejects with error

(async) info() → {Promise.<Cirquityd.NodeInfo>}

Returns the current daemon information
Source:
Returns:
Type:
Promise.<Cirquityd.NodeInfo>
resolves with node information or rejects with error

(async) lastBlockHeader() → {Promise.<Cirquityd.BlockHeader>}

Retrieves the last block header
Source:
Returns:
Type:
Promise.<Cirquityd.BlockHeader>
resolves with block header or rejects with error

(async) peers() → {Promise.<Cirquityd.NodePeers>}

Returns the current daemon peers
Source:
Returns:
Type:
Promise.<Cirquityd.NodePeers>
resolves with node peer information or rejects with error

(async) poolChanges(tailBlockHash, knownTransactionHashes) → {Promise.<Cirquityd.PoolChanges>}

Returns updates regarding the transaction mempool
Source:
Parameters:
Name Type Description
tailBlockHash string the last known block hash
knownTransactionHashes Array.<string> the transaction hashes that we know of
Returns:
Type:
Promise.<Cirquityd.PoolChanges>
resolves with pool change information or rejects with error

(async) randomOutputs(amounts, mixin) → {Promise.<Cirquityd.RandomOutputsResponse>}

Retrieves random outputs for mixing
Source:
Parameters:
Name Type Description
amounts Array.<number> the amounts that we need mixins for
mixin number the number of mixins we need
Returns:
Type:
Promise.<Cirquityd.RandomOutputsResponse>
resolves with random outputs information or rejects with error

(async) rawBlocks(blockHashes, blockCountopt) → {Promise.<Cirquityd.RawBlocksResponse>}

Get raw blocks
Source:
Parameters:
Name Type Attributes Description
blockHashes Array.<string> first 10 blocks id goes sequential, next goes in pow(2,n) offset, like 2, 4, 8, 16, 32, 64 and so on, and the last one is always genesis block
blockCount number <optional>
the number of blocks to retrieve
Returns:
Type:
Promise.<Cirquityd.RawBlocksResponse>
resolves with raw blocks information or rejects with error

(async) sendRawTransaction(transaction) → {Promise.<Cirquityd.SendRawTransactionResponse>}

Sends a raw transaction to the daemon
Source:
Parameters:
Name Type Description
transaction string the raw transaction
Returns:
Type:
Promise.<Cirquityd.SendRawTransactionResponse>
resolves with send raw transaction information or rejects with error

(async) submitBlock(blockBlob) → {Promise.<Cirquityd.SubmitBlockResponse>}

Sends a new block for the chain to the daemon
Source:
Parameters:
Name Type Description
blockBlob string the raw block blob
Returns:
Type:
Promise.<Cirquityd.SubmitBlockResponse>
resolves with submit block response or rejects with error

(async) transaction(hash) → {Promise.<Cirquityd.TransactionResponse>}

Retrieves a single transaction's information
Source:
Parameters:
Name Type Description
hash string the transaction hash
Returns:
Type:
Promise.<Cirquityd.TransactionResponse>
resolves with transaction response or rejects with error

(async) transactionPool() → {Promise.<Array.<Cirquityd.TransactionSummary>>}

Retrieves the summary information of the transactions in the mempool
Source:
Returns:
Type:
Promise.<Array.<Cirquityd.TransactionSummary>>
resolves with the transaction summaries or rejects with error

(async) transactionsStatus(transactionHashes) → {Promise.<Cirquityd.TransactionsStatusResponse>}

Returns the status of the transaction hashes provided
Source:
Parameters:
Name Type Description
transactionHashes Array.<string> the transaction hashes to checked
Returns:
Type:
Promise.<Cirquityd.TransactionsStatusResponse>
resolves with the transactions statuses or rejects with error

(async) walletSyncData(optsopt) → {Promise.<Cirquityd.WalletSyncDataResponse>}

Returns up to 100 blocks. If block hash checkpoints are given, it will return beginning from the height of the first hash it finds, plus one. However, if startHeight or startTimestamp is given, and this value is higher than the block hash checkpoints, it will start returning from that height instead. The block hash checkpoints should be given with the highest block height hashes first. Typical usage: specify a start height/timestamp initially, and from then on, also provide the returned block hashes.
Source:
Parameters:
Name Type Attributes Description
opts Object <optional>
the options to use when syncing
Name Type Attributes Default Description
startHeight number <optional>
0 the height to start from
startTimestamp number <optional>
0 the timestamp to start from
blockHashCheckpoints Array.<string> <optional>
the block hash checkpoints
skipCoinbaseTransactions boolean <optional>
false whether to skip returning blocks with just coinbase transactions
Returns:
Type:
Promise.<Cirquityd.WalletSyncDataResponse>
resolves with sync data response or rejects with error

Type Definitions

BlockDetails

Block Details
Properties:
Name Type Description
alreadyGeneratedCoins number the number of already generated coins
alreadyGeneratedTransactions number the number of already generated transactions
baseReward number the block base reward
blockSize number the block size
depth number the depth of the block in the chain (aka. confirmations)
difficulty number the block difficulty
hash string the block hash
index number the block index (aka. height)
majorVersion number the block major version
minorVersion number the block minor version
nonce number the block nonce
prevBlockHash string the previous block hash
reward number the block reward
sizeMedian number the median block size
timestamp number the block timestamp
totalFeeAmount number the total amount of fees in the block
transactions Array.<Cirquityd.TransactionDetail>
transactionsCumulativeSize number the total size of the transactions in the block
Source:
Type:
  • Object

BlockHeader

Block Header
Properties:
Name Type Description
block_size number the block size
depth number the depth of the block in the chain (aka. confirmations)
difficulty number the block difficulty
hash string the block hash
height number the block height
major_version number the block major version
minor_version number the block minor version
nonce number the block nonce
num_txes number the number of transactions in the block
orphan_status boolean whether the block is an orphan
prev_hash string the previous block hash
reward number the block reward
timestamp number the block timestamp total size of the transactions in the block
Source:
Type:
  • Object

BlockLite

Properties:
Name Type Description
block string the hexadecimcal representation of the block
hash string the block hash
transactions Array.<Cirquityd.TransactionPrefix> the transactions in the block
Source:

BlocksDetailedResponse

Query Blocks Detailed Response
Properties:
Name Type Description
blocks Cirquityd.BlockDetails the blocks
currentHeight number the current height of the blockchain
fullOffset number
startHeight number the height at which this response starts
status string the response status
Source:
Type:
  • Object

BlockShortHeader

Block Short Summary
Properties:
Name Type Description
cumul_size number the total size of the block
difficulty number the difficulty of the block
hash string the block hash
height number the height of the block
timestamp number the timestamp of the block
tx_count number the number of transactions in the block
Source:
Type:
  • Object

BlocksLiteResponse

Properties:
Name Type Description
currentHeight number the current height
fullOffset number the full offset height
items Array.<Cirquityd.BlockLite> the block data
startHeight number the height the response starts from
status string the status of the request
Source:

BlockSummary

Block Summary
Properties:
Name Type Description
alreadyGeneratedCoins number the number of already generated coins
alreadyGeneratedTransactions number the number of already generated transactions
baseReward number the block base reward
blockSize number the block size
depth number the depth of the block in the chain (aka. confirmations)
difficulty number the block difficulty
effectiveSizeMedian number the effective median size of the blocks
hash string the block hash
height number the block height
major_version number the block major version
minor_version number the block minor version
nonce number the block nonce
orphan_status boolean whether the block is an orphan
penalty number the block penalty
prev_hash string the previous block hash
reward number the block reward
sizeMedian number the median block size
timestamp number the block timestamp
totalFeeAmount number the total amount of fees in the block
transactions Array.<Cirquityd.TransactionSummary>
transactionsCumulativeSize number the total size of the transactions in the block
Source:
Type:
  • Object

BlockTemplateResponse

Block Template Response
Properties:
Name Type Description
blocktemplate_blob string the raw block template
difficulty number the target difficulty
height number the block height
reserved_offset number the reserved offset location in the raw block template
status string the response status
Source:
Type:
  • Object

GlobalIndexesResponse

Global Indexes Range Response
Properties:
Name Type Description
key string the transaction hash
value Array.<number> the global output indexes
Source:
Type:
  • Object

NodeFee

Node Fee Response
Properties:
Name Type Description
address string the node fee address
amount number the node fee amount
status string the response status
Source:
Type:
  • Object

NodeHeight

Node Height Response
Properties:
Name Type Description
height number the current height of the node
network_height number the observed network height
status string the response status
Source:
Type:
  • Object

NodeInfo

Node Info Response
Properties:
Name Type Description
alt_blocks_count number the number of alternate blocks the node knows about
difficulty number the current network difficulty
grey_peerlist_size number the number of currently gray listed peers
hashrate number the network hash rate
height number the current height of the node
incoming_connections_count number the number of incoming connections to the node
last_known_block_index number the last known block index
major_version number the current block major version
minor_version number the current block minor version
network_height number the observed network height
outgoing_connections_count number the number of outgoing connections from the node
start_time number the timestamp of when the node was started
status string the response status
supported_height number the height as which the code the node is running is supported until
synced boolean whether the node is fully synced with the network or not
tx_count number the number of transactions the node knows of
tx_pool_size number the number of transactions in the node's mempool
upgrade_heights Array.<number> the list of upgrade heights the node is aware of
version string the version number of the node software
white_peerlist_size number the number of currently whitelisted peers
Source:
Type:
  • Object

NodePeers

Node Peers Response
Properties:
Name Type Description
gray_peers Array.<string> graylisted peers
peers Array.<string> peers
status string the response status
Source:
Type:
  • Object

PoolChanges

Properties:
Name Type Description
addedTxs Cirquityd.PoolChangesAdded the recently added pool transactions
deletedTxsIds Array.<string> the transaction hashes of transactions removed from the pool
isTailBlockActual boolean whether the tail block hash supplied is really the top
status string the status of the request
Source:

PoolChangesAdded

Properties:
Name Type Description
hash string the transaction hash
prefix Cirquityd.TransactionPrefix the transaction prefix
Source:

RandomOutput

A Random Output
Properties:
Name Type Description
global_amount_index number the output global index
out_key string the output key
Source:
Type:
  • Object

RandomOutputsResponse

Random Outputs Response
Properties:
Name Type Description
outs Array.<Cirquityd.RandomOuts> a list of random outs
status string the response status
Source:
Type:
  • Object

RandomOuts

A Random Outs object
Properties:
Name Type Description
amount number the amount of the output
outs Array.<Cirquityd.RandomOutput> a list of random outputs
Source:
Type:
  • Object

RawBlock

A Raw Block
Properties:
Name Type Description
block string the raw block hex
block_size number the size of the block
transactions Array.<Cirquityd.RawTransaction> a list of raw transactions
tx_count number the number of transactions in the block
Source:
Type:
  • Object

RawBlocksResponse

Get Blocks Fast Response
Properties:
Name Type Description
blocks Array.<Cirquityd.RawBlock> the raw blocks
current_height number the current height of the blockchain
start_height number the starting height of the blocks in the response
status string the response status
Source:
Type:
  • Object

RawTransaction

A Raw Transaction
Properties:
Name Type Description
transaction string the raw transaction hex
tx_size number the size of the transaction
Source:
Type:
  • Object

SendRawTransactionResponse

Send Raw Transaction Response
Properties:
Name Type Attributes Description
status string the response status
error string <optional>
the error message if failed
Source:
Type:
  • Object

SubmitBlockResponse

Submit Block Response
Properties:
Name Type Description
status string the response status
Source:
Type:
  • Object

TransactionDetail

Transaction Details
Properties:
Name Type Description
blockHash string the block hash
blockIndex number the block index (aka. height)
extra Cirquityd.TransactionExtraDetail the transaction extra
fee number the transaction fee
hash string the transaction hash
inBlockchain boolean whether the transaction is in the blockchain
inputs Array.<Cirquityd.TransactionDetailInput> the inputs of the transaction
mixin number the number of transaction mixins
outputs Array.<Cirquityd.TransactionDetailOutput> the outputs of the transaction
paymentId string the payment ID of the transaction
signatures Array.<string> the signatures of the transaction
signaturesSize number the size of the signatures
size number the transaction size
timestamp number the transaction timestamp
totalInputsAmount number the total amount of the transaction's inputs
totalOutputsAmount number the total amount of the transaction's outputs
unlockTime number the unlock time/block of the transaction
Source:
Type:
  • Object

TransactionDetailInput

Transaction Detail Input
Properties:
Name Type Description
data Cirquityd.TransactionDetailInputCoinbase | Cirquityd.TransactionDetailInputKey the input data
type string the input type
Source:
Type:
  • Object

TransactionDetailInputCoinbase

Properties:
Name Type Description
amount number the amount of the input
input Cirquityd.TransactionDetailInputCoinbaseInput the input
Source:
Type:
  • Object

TransactionDetailInputCoinbaseInput

Properties:
Name Type Description
height number the height of the block
Source:
Type:
  • Object

TransactionDetailInputKey

Properties:
Name Type Description
input Cirquityd.TransactionDetailInputKeyInput the input
mixin number the ring size
output Cirquityd.TransactionDetailInputKeyOutput the related output information
Source:
Type:
  • Object

TransactionDetailInputKeyInput

Properties:
Name Type Description
number number the output index of the output used
transactionHash string the transaction hash of the output /**
amount number the amount of the input
k_image string the key image of the input
key_offsets Array.<number> the key offsets of the input
Source:
Type:
  • Object

TransactionDetailOutput

Transaction Detail Output
Properties:
Name Type Description
globalIndex number the global index of the output
output Cirquityd.TransactionOutput The transaction output
Source:
Type:
  • Object

TransactionExtraDetail

Transaction Extra Detail
Properties:
Name Type Attributes Description
nonce Array.<number> <optional>
the nonce
publicKey string the public key
raw string the raw transaction extra
Source:
Type:
  • Object

TransactionMetadata

Properties:
Name Type Description
amount_out number the sum of the transaction outputs
fee number the network fee of the transaction
hash string the transaction hash
mixin number the transaction ring size
paymentId string the payment ID of the transaction if any
size number the size of the transaction in bytes
Source:

TransactionOutput

Transaction Output
Properties:
Name Type Description
amount number the amount of the output
target Cirquityd.TransactionOutputTarget the output target
Source:
Type:
  • Object

TransactionOutputTarget

Transaction Output Target
Properties:
Name Type Description
data Cirquityd.TransactionOutputTargetData output data structure
type string the output type
Source:
Type:
  • Object

TransactionOutputTargetData

Transaction Output Target Data
Properties:
Name Type Description
key string the output key
Source:
Type:
  • Object

TransactionPrefix

Properties:
Name Type Description
extra string the transaction extra information as hexadecimcal
unlock_time number the transaction unlock time
version number the transaction version number
vin Cirquityd.VINCoinbase | Array.<Cirquityd.VIN> the transaction inputs
vout Array.<Cirquityd.VOUT> the transaction outputs
Source:

TransactionResponse

Properties:
Name Type Description
block BlockShortHeader the header of the block containing the transaction
status string the status of the request
tx Cirquityd.TransactionPrefix the transaction structured information
txDetails Cirquityd.TransactionMetadata the transaction meta information
Source:

TransactionsStatusResponse

Transactions Status Response
Properties:
Name Type Description
transactionsInBlock Array.<string> transaction hashes that are in blocks
transactionsInPool Array.<string> transaction hashes that are in the mempool
transactionsUnknown Array.<string> unknown transaction hashes
Source:
Type:
  • Object

TransactionSummary

Transaction Summary
Properties:
Name Type Description
amount_out number the amount of the transaction
fee number the fee of the transaction
hash string the hash of the transaction
size number the size of the transaction
Source:
Type:
  • Object

VIN

Properties:
Properties
Name Type Description
type string the type of the input in hexadecimcal
value Object the input data
Name Type Description
amount number the input amount
k_image number the input key image
key_offsets Array.<number> the input key offsets
Source:

VINCoinbase

Properties:
Properties
Name Type Description
type string the input type in hexadecimcal
value Object the input value
Name Type Description
height number the input height
Source:

VOUT

Properties:
Name Type Description
amount number the amount of the output
target Cirquityd.VOUTTarget the output target
Source:

VOUTTarget

Properties:
Name Type Description
data Cirquityd.VOUTTargetData output target data
type string the output target type in hexadecimcal
Source:

VOUTTargetData

Properties:
Name Type Description
key string the output target key
Source:

WalletSyncDataBlock

Properties:
Name Type Attributes Description
blockHash string the block hash
blockHeight number the block height
blockTimestamp number the block timestamp
coinbaseTX Cirquityd.WalletSyncTransaction <optional>
the block coinbase transaction
transactions Array.<Cirquityd.WalletSyncTransaction> the transactions in the block
Source:

WalletSyncDataResponse

Properties:
Name Type Attributes Description
items Array.<Cirquityd.WalletSyncDataBlock> block data array
status string the reponse status message
synced boolean whether the request is fully synched
topBlock Cirquityd.WalletSyncDataTopBlock <optional>
the top block information
Source:

WalletSyncDataTopBlock

Properties:
Name Type Description
hash string the top block hash
height number the top block height
Source:

WalletSyncTransaction

Properties:
Name Type Attributes Description
hash string the transaction hash
inputs Cirquityd.TransactionDetailInputKeyInput <optional>
the transaction inputs
outputs Array.<Cirquityd.WalletSyncTransactionOutput> the transaction outputs
txPublicKey string the one-time public key of the transaction
unlockTime number the unlock time (or block) of the transaction
Source:

WalletSyncTransactionOutput

Properties:
Name Type Description
amount number the output amount
key string the output key
Source:

Cirquityd

new Cirquityd(optsopt)

Initializes a new Cirquityd object
Source:
Parameters:
Name Type Attributes Description
opts Object <optional>
Configuration options
Name Type Attributes Default Description
host string <optional>
127.0.0.1 the address of the daemon
port string <optional>
11898 the RPC port number of the daemon
timeout number <optional>
2000 the timeout to use during RPC calls
ssl boolean <optional>
false whether the daemon uses SSL (HTTPS) or not
userAgent string <optional>
cirquity-rpc/version the user agent string to use with requests
keepAlive boolean <optional>
true whether the underlying HTTP(s) connection should be kept alive and reused

Methods

(async) block(hash) → {Promise.<Cirquityd.BlockSummary>}

Returns information on a single block by hash
Source:
Parameters:
Name Type Description
hash string the hash of the block to retrieve
Returns:
Type:
Promise.<Cirquityd.BlockSummary>
resolves with block summary or rejects with error

(async) blockCount() → {Promise.<number>}

Gets the current block count
Source:
Returns:
Type:
Promise.<number>
resolves with the current block count or rejects with error

(async) blockHeaderByHash(hash) → {Promise.<Cirquityd.BlockHeader>}

Gets the block header
Source:
Parameters:
Name Type Description
hash string the hash of the block to retrieve
Returns:
Type:
Promise.<Cirquityd.BlockHeader>
resolves with block header or rejects with error

(async) blockHeaderByHeight(height) → {Promise.<Cirquityd.BlockHeader>}

Gets the block header
Source:
Parameters:
Name Type Description
height number the height of the block to retrieve
Returns:
Type:
Promise.<Cirquityd.BlockHeader>
resolves with block header or rejects with error

(async) blocksDetailed(optsopt) → {Promise.<Cirquityd.BlocksDetailedResponse>}

Returns up to 100 blocks. If blockHashes are given, it will return beginning from the height of the first hash it finds, plus one. However, if timestamp is given, and this value is higher than the blockHashes, it will start returning from that height instead. The blockHashes should be given with the highest block height hashes first. First 10 blocks hashes go sequential, next in pow(2,n) offset, like 2, 4, 8, 16, 32, 64 and so on, and the last one is always genesis block Typical usage: specify a start timestamp initially, and from then on, also provide the returned block hashes.
Source:
Parameters:
Name Type Attributes Description
opts Object <optional>
the options to use when syncing
Name Type Attributes Default Description
timestamp number <optional>
0 the timestamp to start from
blockHashes Array.<string> <optional>
the block hashes
blockCount number <optional>
0 the number of blocks to return
Returns:
Type:
Promise.<Cirquityd.BlocksDetailedResponse>
resolves with blocks detail information or rejects with error

(async) blockShortHeaders(height) → {Promise.<Array.<Cirquityd.BlockShortHeader>>}

Gets the summary block information for the last 30 blocks before height (inclusive)
Source:
Parameters:
Name Type Description
height number the height of the block to retrieve
Returns:
Type:
Promise.<Array.<Cirquityd.BlockShortHeader>>
resolves with block short headers or rejects with error

(async) blocksLite(optsopt) → {Promise.<Cirquityd.BlocksLiteResponse>}

Returns up to 100 blocks. If blockHashes are given, it will return beginning from the height of the first hash it finds, plus one. However, if timestamp is given, and this value is higher than the blockHashes, it will start returning from that height instead. The blockHashes should be given with the highest block height hashes first. First 10 blocks hashes go sequential, next in pow(2,n) offset, like 2, 4, 8, 16, 32, 64 and so on, and the last one is always genesis block Typical usage: specify a start timestamp initially, and from then on, also provide the returned block hashes.
Source:
Parameters:
Name Type Attributes Description
opts Object <optional>
the options to use when syncing
Name Type Attributes Default Description
timestamp number <optional>
0 the timestamp to start from
blockHashes Array.<string> <optional>
the block hashes
Returns:
Type:
Promise.<Cirquityd.BlocksLiteResponse>
resolves with block information or rejects with error

(async) blockTemplate(walletAddress, reserveSize) → {Promise.<Cirquityd.BlockTemplateResponse>}

Gets the block template using the supplied parameters
Source:
Parameters:
Name Type Description
walletAddress string the wallet address for the block template
reserveSize number the amount of block template reserve space to generate
Returns:
Type:
Promise.<Cirquityd.BlockTemplateResponse>
resolves with block template response or rejects with error

(async) fee() → {Promise.<Cirquityd.NodeFee>}

Retrieves the node fee in atomic units
Source:
Returns:
Type:
Promise.<Cirquityd.NodeFee>
resolves with node fee information or rejects with error

(async) globalIndexes(transactionHash) → {Promise.<Array.<number>>}

Returns the global output indexes of the transaction
Source:
Parameters:
Name Type Description
transactionHash string the hash of the transaction to retrieve
Returns:
Type:
Promise.<Array.<number>>
resolves with indexes global output indexes or rejects with error

(async) globalIndexesForRange(startHeight, endHeight) → {Promise.<Array.<Cirquityd.GlobalIndexesResponse>>}

Returns the global indexes for any transactions in the range [startHeight .. endHeight]. Generally, you only want the global index for a specific transaction, however, this reveals that you probably are the recipient of this transaction. By supplying a range of blocks, you can obfusticate which transaction you are enquiring about.
Source:
Parameters:
Name Type Description
startHeight number The height to begin returning indices from
endHeight number The height to end returning indices from
Returns:
Type:
Promise.<Array.<Cirquityd.GlobalIndexesResponse>>
resolves with global indexes information or rejects with error

(async) height() → {Promise.<Cirquityd.NodeHeight>}

Returns the current daemon height statistics
Source:
Returns:
Type:
Promise.<Cirquityd.NodeHeight>
resolves with node height information or rejects with error

(async) info() → {Promise.<Cirquityd.NodeInfo>}

Returns the current daemon information
Source:
Returns:
Type:
Promise.<Cirquityd.NodeInfo>
resolves with node information or rejects with error

(async) lastBlockHeader() → {Promise.<Cirquityd.BlockHeader>}

Retrieves the last block header
Source:
Returns:
Type:
Promise.<Cirquityd.BlockHeader>
resolves with block header or rejects with error

(async) peers() → {Promise.<Cirquityd.NodePeers>}

Returns the current daemon peers
Source:
Returns:
Type:
Promise.<Cirquityd.NodePeers>
resolves with node peer information or rejects with error

(async) poolChanges(tailBlockHash, knownTransactionHashes) → {Promise.<Cirquityd.PoolChanges>}

Returns updates regarding the transaction mempool
Source:
Parameters:
Name Type Description
tailBlockHash string the last known block hash
knownTransactionHashes Array.<string> the transaction hashes that we know of
Returns:
Type:
Promise.<Cirquityd.PoolChanges>
resolves with pool change information or rejects with error

(async) randomOutputs(amounts, mixin) → {Promise.<Cirquityd.RandomOutputsResponse>}

Retrieves random outputs for mixing
Source:
Parameters:
Name Type Description
amounts Array.<number> the amounts that we need mixins for
mixin number the number of mixins we need
Returns:
Type:
Promise.<Cirquityd.RandomOutputsResponse>
resolves with random outputs information or rejects with error

(async) rawBlocks(blockHashes, blockCountopt) → {Promise.<Cirquityd.RawBlocksResponse>}

Get raw blocks
Source:
Parameters:
Name Type Attributes Description
blockHashes Array.<string> first 10 blocks id goes sequential, next goes in pow(2,n) offset, like 2, 4, 8, 16, 32, 64 and so on, and the last one is always genesis block
blockCount number <optional>
the number of blocks to retrieve
Returns:
Type:
Promise.<Cirquityd.RawBlocksResponse>
resolves with raw blocks information or rejects with error

(async) sendRawTransaction(transaction) → {Promise.<Cirquityd.SendRawTransactionResponse>}

Sends a raw transaction to the daemon
Source:
Parameters:
Name Type Description
transaction string the raw transaction
Returns:
Type:
Promise.<Cirquityd.SendRawTransactionResponse>
resolves with send raw transaction information or rejects with error

(async) submitBlock(blockBlob) → {Promise.<Cirquityd.SubmitBlockResponse>}

Sends a new block for the chain to the daemon
Source:
Parameters:
Name Type Description
blockBlob string the raw block blob
Returns:
Type:
Promise.<Cirquityd.SubmitBlockResponse>
resolves with submit block response or rejects with error

(async) transaction(hash) → {Promise.<Cirquityd.TransactionResponse>}

Retrieves a single transaction's information
Source:
Parameters:
Name Type Description
hash string the transaction hash
Returns:
Type:
Promise.<Cirquityd.TransactionResponse>
resolves with transaction response or rejects with error

(async) transactionPool() → {Promise.<Array.<Cirquityd.TransactionSummary>>}

Retrieves the summary information of the transactions in the mempool
Source:
Returns:
Type:
Promise.<Array.<Cirquityd.TransactionSummary>>
resolves with the transaction summaries or rejects with error

(async) transactionsStatus(transactionHashes) → {Promise.<Cirquityd.TransactionsStatusResponse>}

Returns the status of the transaction hashes provided
Source:
Parameters:
Name Type Description
transactionHashes Array.<string> the transaction hashes to checked
Returns:
Type:
Promise.<Cirquityd.TransactionsStatusResponse>
resolves with the transactions statuses or rejects with error

(async) walletSyncData(optsopt) → {Promise.<Cirquityd.WalletSyncDataResponse>}

Returns up to 100 blocks. If block hash checkpoints are given, it will return beginning from the height of the first hash it finds, plus one. However, if startHeight or startTimestamp is given, and this value is higher than the block hash checkpoints, it will start returning from that height instead. The block hash checkpoints should be given with the highest block height hashes first. Typical usage: specify a start height/timestamp initially, and from then on, also provide the returned block hashes.
Source:
Parameters:
Name Type Attributes Description
opts Object <optional>
the options to use when syncing
Name Type Attributes Default Description
startHeight number <optional>
0 the height to start from
startTimestamp number <optional>
0 the timestamp to start from
blockHashCheckpoints Array.<string> <optional>
the block hash checkpoints
skipCoinbaseTransactions boolean <optional>
false whether to skip returning blocks with just coinbase transactions
Returns:
Type:
Promise.<Cirquityd.WalletSyncDataResponse>
resolves with sync data response or rejects with error

Type Definitions

BlockDetails

Block Details
Properties:
Name Type Description
alreadyGeneratedCoins number the number of already generated coins
alreadyGeneratedTransactions number the number of already generated transactions
baseReward number the block base reward
blockSize number the block size
depth number the depth of the block in the chain (aka. confirmations)
difficulty number the block difficulty
hash string the block hash
index number the block index (aka. height)
majorVersion number the block major version
minorVersion number the block minor version
nonce number the block nonce
prevBlockHash string the previous block hash
reward number the block reward
sizeMedian number the median block size
timestamp number the block timestamp
totalFeeAmount number the total amount of fees in the block
transactions Array.<Cirquityd.TransactionDetail>
transactionsCumulativeSize number the total size of the transactions in the block
Source:
Type:
  • Object

BlockHeader

Block Header
Properties:
Name Type Description
block_size number the block size
depth number the depth of the block in the chain (aka. confirmations)
difficulty number the block difficulty
hash string the block hash
height number the block height
major_version number the block major version
minor_version number the block minor version
nonce number the block nonce
num_txes number the number of transactions in the block
orphan_status boolean whether the block is an orphan
prev_hash string the previous block hash
reward number the block reward
timestamp number the block timestamp total size of the transactions in the block
Source:
Type:
  • Object

BlockLite

Properties:
Name Type Description
block string the hexadecimcal representation of the block
hash string the block hash
transactions Array.<Cirquityd.TransactionPrefix> the transactions in the block
Source:

BlocksDetailedResponse

Query Blocks Detailed Response
Properties:
Name Type Description
blocks Cirquityd.BlockDetails the blocks
currentHeight number the current height of the blockchain
fullOffset number
startHeight number the height at which this response starts
status string the response status
Source:
Type:
  • Object

BlockShortHeader

Block Short Summary
Properties:
Name Type Description
cumul_size number the total size of the block
difficulty number the difficulty of the block
hash string the block hash
height number the height of the block
timestamp number the timestamp of the block
tx_count number the number of transactions in the block
Source:
Type:
  • Object

BlocksLiteResponse

Properties:
Name Type Description
currentHeight number the current height
fullOffset number the full offset height
items Array.<Cirquityd.BlockLite> the block data
startHeight number the height the response starts from
status string the status of the request
Source:

BlockSummary

Block Summary
Properties:
Name Type Description
alreadyGeneratedCoins number the number of already generated coins
alreadyGeneratedTransactions number the number of already generated transactions
baseReward number the block base reward
blockSize number the block size
depth number the depth of the block in the chain (aka. confirmations)
difficulty number the block difficulty
effectiveSizeMedian number the effective median size of the blocks
hash string the block hash
height number the block height
major_version number the block major version
minor_version number the block minor version
nonce number the block nonce
orphan_status boolean whether the block is an orphan
penalty number the block penalty
prev_hash string the previous block hash
reward number the block reward
sizeMedian number the median block size
timestamp number the block timestamp
totalFeeAmount number the total amount of fees in the block
transactions Array.<Cirquityd.TransactionSummary>
transactionsCumulativeSize number the total size of the transactions in the block
Source:
Type:
  • Object

BlockTemplateResponse

Block Template Response
Properties:
Name Type Description
blocktemplate_blob string the raw block template
difficulty number the target difficulty
height number the block height
reserved_offset number the reserved offset location in the raw block template
status string the response status
Source:
Type:
  • Object

GlobalIndexesResponse

Global Indexes Range Response
Properties:
Name Type Description
key string the transaction hash
value Array.<number> the global output indexes
Source:
Type:
  • Object

NodeFee

Node Fee Response
Properties:
Name Type Description
address string the node fee address
amount number the node fee amount
status string the response status
Source:
Type:
  • Object

NodeHeight

Node Height Response
Properties:
Name Type Description
height number the current height of the node
network_height number the observed network height
status string the response status
Source:
Type:
  • Object

NodeInfo

Node Info Response
Properties:
Name Type Description
alt_blocks_count number the number of alternate blocks the node knows about
difficulty number the current network difficulty
grey_peerlist_size number the number of currently gray listed peers
hashrate number the network hash rate
height number the current height of the node
incoming_connections_count number the number of incoming connections to the node
last_known_block_index number the last known block index
major_version number the current block major version
minor_version number the current block minor version
network_height number the observed network height
outgoing_connections_count number the number of outgoing connections from the node
start_time number the timestamp of when the node was started
status string the response status
supported_height number the height as which the code the node is running is supported until
synced boolean whether the node is fully synced with the network or not
tx_count number the number of transactions the node knows of
tx_pool_size number the number of transactions in the node's mempool
upgrade_heights Array.<number> the list of upgrade heights the node is aware of
version string the version number of the node software
white_peerlist_size number the number of currently whitelisted peers
Source:
Type:
  • Object

NodePeers

Node Peers Response
Properties:
Name Type Description
gray_peers Array.<string> graylisted peers
peers Array.<string> peers
status string the response status
Source:
Type:
  • Object

PoolChanges

Properties:
Name Type Description
addedTxs Cirquityd.PoolChangesAdded the recently added pool transactions
deletedTxsIds Array.<string> the transaction hashes of transactions removed from the pool
isTailBlockActual boolean whether the tail block hash supplied is really the top
status string the status of the request
Source:

PoolChangesAdded

Properties:
Name Type Description
hash string the transaction hash
prefix Cirquityd.TransactionPrefix the transaction prefix
Source:

RandomOutput

A Random Output
Properties:
Name Type Description
global_amount_index number the output global index
out_key string the output key
Source:
Type:
  • Object

RandomOutputsResponse

Random Outputs Response
Properties:
Name Type Description
outs Array.<Cirquityd.RandomOuts> a list of random outs
status string the response status
Source:
Type:
  • Object

RandomOuts

A Random Outs object
Properties:
Name Type Description
amount number the amount of the output
outs Array.<Cirquityd.RandomOutput> a list of random outputs
Source:
Type:
  • Object

RawBlock

A Raw Block
Properties:
Name Type Description
block string the raw block hex
block_size number the size of the block
transactions Array.<Cirquityd.RawTransaction> a list of raw transactions
tx_count number the number of transactions in the block
Source:
Type:
  • Object

RawBlocksResponse

Get Blocks Fast Response
Properties:
Name Type Description
blocks Array.<Cirquityd.RawBlock> the raw blocks
current_height number the current height of the blockchain
start_height number the starting height of the blocks in the response
status string the response status
Source:
Type:
  • Object

RawTransaction

A Raw Transaction
Properties:
Name Type Description
transaction string the raw transaction hex
tx_size number the size of the transaction
Source:
Type:
  • Object

SendRawTransactionResponse

Send Raw Transaction Response
Properties:
Name Type Attributes Description
status string the response status
error string <optional>
the error message if failed
Source:
Type:
  • Object

SubmitBlockResponse

Submit Block Response
Properties:
Name Type Description
status string the response status
Source:
Type:
  • Object

TransactionDetail

Transaction Details
Properties:
Name Type Description
blockHash string the block hash
blockIndex number the block index (aka. height)
extra Cirquityd.TransactionExtraDetail the transaction extra
fee number the transaction fee
hash string the transaction hash
inBlockchain boolean whether the transaction is in the blockchain
inputs Array.<Cirquityd.TransactionDetailInput> the inputs of the transaction
mixin number the number of transaction mixins
outputs Array.<Cirquityd.TransactionDetailOutput> the outputs of the transaction
paymentId string the payment ID of the transaction
signatures Array.<string> the signatures of the transaction
signaturesSize number the size of the signatures
size number the transaction size
timestamp number the transaction timestamp
totalInputsAmount number the total amount of the transaction's inputs
totalOutputsAmount number the total amount of the transaction's outputs
unlockTime number the unlock time/block of the transaction
Source:
Type:
  • Object

TransactionDetailInput

Transaction Detail Input
Properties:
Name Type Description
data Cirquityd.TransactionDetailInputCoinbase | Cirquityd.TransactionDetailInputKey the input data
type string the input type
Source:
Type:
  • Object

TransactionDetailInputCoinbase

Properties:
Name Type Description
amount number the amount of the input
input Cirquityd.TransactionDetailInputCoinbaseInput the input
Source:
Type:
  • Object

TransactionDetailInputCoinbaseInput

Properties:
Name Type Description
height number the height of the block
Source:
Type:
  • Object

TransactionDetailInputKey

Properties:
Name Type Description
input Cirquityd.TransactionDetailInputKeyInput the input
mixin number the ring size
output Cirquityd.TransactionDetailInputKeyOutput the related output information
Source:
Type:
  • Object

TransactionDetailInputKeyInput

Properties:
Name Type Description
number number the output index of the output used
transactionHash string the transaction hash of the output /**
amount number the amount of the input
k_image string the key image of the input
key_offsets Array.<number> the key offsets of the input
Source:
Type:
  • Object

TransactionDetailOutput

Transaction Detail Output
Properties:
Name Type Description
globalIndex number the global index of the output
output Cirquityd.TransactionOutput The transaction output
Source:
Type:
  • Object

TransactionExtraDetail

Transaction Extra Detail
Properties:
Name Type Attributes Description
nonce Array.<number> <optional>
the nonce
publicKey string the public key
raw string the raw transaction extra
Source:
Type:
  • Object

TransactionMetadata

Properties:
Name Type Description
amount_out number the sum of the transaction outputs
fee number the network fee of the transaction
hash string the transaction hash
mixin number the transaction ring size
paymentId string the payment ID of the transaction if any
size number the size of the transaction in bytes
Source:

TransactionOutput

Transaction Output
Properties:
Name Type Description
amount number the amount of the output
target Cirquityd.TransactionOutputTarget the output target
Source:
Type:
  • Object

TransactionOutputTarget

Transaction Output Target
Properties:
Name Type Description
data Cirquityd.TransactionOutputTargetData output data structure
type string the output type
Source:
Type:
  • Object

TransactionOutputTargetData

Transaction Output Target Data
Properties:
Name Type Description
key string the output key
Source:
Type:
  • Object

TransactionPrefix

Properties:
Name Type Description
extra string the transaction extra information as hexadecimcal
unlock_time number the transaction unlock time
version number the transaction version number
vin Cirquityd.VINCoinbase | Array.<Cirquityd.VIN> the transaction inputs
vout Array.<Cirquityd.VOUT> the transaction outputs
Source:

TransactionResponse

Properties:
Name Type Description
block BlockShortHeader the header of the block containing the transaction
status string the status of the request
tx Cirquityd.TransactionPrefix the transaction structured information
txDetails Cirquityd.TransactionMetadata the transaction meta information
Source:

TransactionsStatusResponse

Transactions Status Response
Properties:
Name Type Description
transactionsInBlock Array.<string> transaction hashes that are in blocks
transactionsInPool Array.<string> transaction hashes that are in the mempool
transactionsUnknown Array.<string> unknown transaction hashes
Source:
Type:
  • Object

TransactionSummary

Transaction Summary
Properties:
Name Type Description
amount_out number the amount of the transaction
fee number the fee of the transaction
hash string the hash of the transaction
size number the size of the transaction
Source:
Type:
  • Object

VIN

Properties:
Properties
Name Type Description
type string the type of the input in hexadecimcal
value Object the input data
Name Type Description
amount number the input amount
k_image number the input key image
key_offsets Array.<number> the input key offsets
Source:

VINCoinbase

Properties:
Properties
Name Type Description
type string the input type in hexadecimcal
value Object the input value
Name Type Description
height number the input height
Source:

VOUT

Properties:
Name Type Description
amount number the amount of the output
target Cirquityd.VOUTTarget the output target
Source:

VOUTTarget

Properties:
Name Type Description
data Cirquityd.VOUTTargetData output target data
type string the output target type in hexadecimcal
Source:

VOUTTargetData

Properties:
Name Type Description
key string the output target key
Source:

WalletSyncDataBlock

Properties:
Name Type Attributes Description
blockHash string the block hash
blockHeight number the block height
blockTimestamp number the block timestamp
coinbaseTX Cirquityd.WalletSyncTransaction <optional>
the block coinbase transaction
transactions Array.<Cirquityd.WalletSyncTransaction> the transactions in the block
Source:

WalletSyncDataResponse

Properties:
Name Type Attributes Description
items Array.<Cirquityd.WalletSyncDataBlock> block data array
status string the reponse status message
synced boolean whether the request is fully synched
topBlock Cirquityd.WalletSyncDataTopBlock <optional>
the top block information
Source:

WalletSyncDataTopBlock

Properties:
Name Type Description
hash string the top block hash
height number the top block height
Source:

WalletSyncTransaction

Properties:
Name Type Attributes Description
hash string the transaction hash
inputs Cirquityd.TransactionDetailInputKeyInput <optional>
the transaction inputs
outputs Array.<Cirquityd.WalletSyncTransactionOutput> the transaction outputs
txPublicKey string the one-time public key of the transaction
unlockTime number the unlock time (or block) of the transaction
Source:

WalletSyncTransactionOutput

Properties:
Name Type Description
amount number the output amount
key string the output key
Source: