Data Type
RPC Calls could include/return these data types:
- Integers, strings, boolean (true or false) or null
- HEXASTRING: String that contains an hexadecimal value (ex. "AAAFFFEE"). An hexadecimal string is always an even character length.
- JSON "specific" Objects: List of some objects returned by RPC calls and used for many methods: (See each method to know which object returns)
Block Object
A "Block object" is a JSON object with information about a Blockchain's block.
Fields are:
| Field | Type | Description |
|---|---|---|
| block | Integer | Block Number |
| ver | Integer | Net protocol version |
| ver_a | Integer | Net protocol available |
| timestamp | Integer | Timestamp of the Block |
| nopsp | Integer | Action value of block |
| niopsp | Integer | InAction value of block |
| hmr | Integer | Protocol reward of block |
| blocksize | Integer | Size of block |
| hash | HEXASTRING | Hash of block |
| one_hash | HEXASTRING | Hash of block - 1 |
| four_hash | HEXASTRING | Hash of block - 4 |
| three_hash | HEXASTRING | Hash of block - 3 |
| payload | HEXASTRING | Block Payload |
| trx_fee | Integer | Operation Fee of block |
| operations | Integer | Operation count of block |
Block Sync Object
A "Block Sync Object" is a JSON object with information about a block sync status.
Fields are:
| Field | Type | Description |
|---|---|---|
| startingBlock | Integer | The block at which the sync started |
| currentBlock | Integer | The current block, same as getBlockCount |
| highestBlock | Integer | The estimated highest block |
Account Object
A "Account object" is a JSON object with information about a Wallet.
Fields are:
| Field | Type | Description |
|---|---|---|
| account | Integer | Wallet Number |
| updated_active | Integer | Wallet active Block |
| updated_passive | Integer | Wallet passive Block |
| n_operation | Integer | Operations made by this account |
| balance | Integer | SNC Quantity |
| wallet | Integer | Wallet Address |
| volume_lock | Integer | Lock SNC Quantity |
| volume_timelock | Integer | TImeLock SNC Quantity |
| state | Integer | Wallet Status(Human readable) |
PrivateKey Object
A "PrivateKey object" is a JSON object with information about a Wallet Privatekey.
Fields are:
| Field | Type | Description |
|---|---|---|
| status | Boolean | PrivateKey Status |
| priv | HEXASTRING | Encoded PrivateKey |
SignMessage Object
A "SignMessage object" is a JSON object with information about a Wallet SignMessage.
Fields are:
| Field | Type | Description |
|---|---|---|
| wallet | String | Wallet Address |
| msg | String | Origin Message |
| enc | HEXASTRING | Encrypt Public Key |
| sig | HEXASTRING | Signature |
| version | Integer | Wallet Version |
Node Object
A "Node object" is a JSON object with information about a Node Server.
Fields are:
| Field | Type | Description |
|---|---|---|
| ready | Boolean | Must be true, otherwise Node is not ready to execute operations |
| ready_s | String | Human readable information about ready or not |
| status_s | String | Human readable information about node status. Running, downloading chain, discovering servers. |
| port | Integer | Server port |
| timestamp | Integer | Timestamp of the Node Server |
| netprotocol | JsonObject | Network Protocol |
| blocks | Integer | Chain blocks |
| datafolder | String | Node Data Directory |
| netstats | JsonObject | Network Info |
| nodeservers | JsonArray | Node Server Info |
Network Protocol Object
A "Network Protocol Object" is a JSON object with information about NetProtocol.
Fields are:
| Field | Type | Description |
|---|---|---|
| ver | Integer | Net protocol version |
| ver_a | Integer | Net protocol available |
Network Infomation Object
A "Network Infomation Object" is a JSON object with information about Network.
Fields are:
| Field | Type | Description |
|---|---|---|
| active | Integer | Number of active network connections |
| clients | Integer | Number of client connections |
| servers | Integer | Number of server connections with responses |
| servers_t | Integer | Total number of server connections |
| total | Integer | Total number of network connections |
| tclients | Integer | Total number of network client connections |
| tservers | Integer | Total number of network server connections |
| breceived | Integer | bytes received |
| bsend | Integer | bytes sent |
| ips | Integer | Number of IP Lists node have |
Node Server Infomation Object
A "Node Server Infomation Object" is a JSON object with information about Node Server.
Fields are:
| Field | Type | Description |
|---|---|---|
| ip | String | Node server IP address you have |
| port | Integer | Node server Port |
| lastcon | Integer | Last communication time with node server |
| attempts | Integer | Number of attempts to connect to the node server |
Connection Object
A "Connection Object" is a JSON object with a connection to other node information.
Fields are:
| Field | Type | Description |
|---|---|---|
| server | Boolean | True if this connection is to a server node. False if this connection is a client node. |
| ip | String | Node IP |
| port | Integer | Node Port |
| secs | Integer | seconds of live of this connection |
| sent | Integer | bytes sent |
| recv | Integer | bytes received |
| appver | String | application version |
| netver | Integer | Net protocol version |
| netver_a | Integer | Net protocol available |
| timediff | Integer | Net timediff of other node (vs my node) |
BlackList Object
A "BlockList Object" is a JSON object with a connection to blacklist node information.
Fields are:
| Field | Type | Description |
|---|---|---|
| blacklist | JsonArray | Blacklist Infomation Object |
| total | Integer | Total number of blacklist nodes. |
BlackList Information Object
"BlackList Information Object" is a JSON object containing the Blacklist information of a node.
Fields are:
| Field | Type | Description |
|---|---|---|
| ip | String | Node IP |
| port | Integer | Node Port |
| LastConnection | String | Last communication time |
| reason | String | Reasons for registration with Blacklist |
Operation Object
A "Operation Object" is a JSON object with a information about an operation.
Fields are:
| Field | Type | Description |
|---|---|---|
| block | Integer | Block number (only When the operation is confirmed). |
| time | Integer | Block timestamp (only When the operation is confirmed). |
| opblock | Integer | Operation index inside a block (0..operations-1). |
| maturation | Integer | Return null when operation is not included on a blockchain yet. |
| optype | Integer | Operation type. |
| subtype | Integer | Operation Subtype. |
| nopsp | Integer | Operation Stemina(Activity) Point. |
| niopsp | Integer | Operation Stemina(Activity) Inner Point. |
| oprice | Integer | Operation Act Price. |
| ioprice | Integer | Operation Act Inner Price. |
| signer_account | String | Signer Wallet Address. |
| n_operation | Integer | Operations made by Signer Wallet. |
| amount | Integer | Amount of coins transferred from sender wallet to receiver wallet. |
| senders | JsonArray | Sender Standard Object |
| receivers | JsonArray | Receiver Wallet List. |
| optxt | String | Human readable operation type. |
| ophash | HEXASTRING | Operation hash used to find this operation in the chain. |
Raw Operation Object
A "Raw Operation Object" is a JSON object with information about a signed operation made by "rawSendTo".
Fields are:
| Field | Type | Description |
|---|---|---|
| amount | Integer | Total Amount. |
| action | Integer | Total Action. |
| actprice | Integer | Action Price. |
| fee | Integer | Calculated fee. |
| rawoperation | HEXASTRING | This is the operations in raw format. |
Sender Standard Object
A "Sender Standard Object" is a JSON object that contains the "Sender" standard information of an Operation.
Fields are:
| Field | Type | Description |
|---|---|---|
| account | String | Wallet Address. |
| payload | HEXASTRING | Wallet Payload. |
| payload_type | Integer | Wallet Payload Type. |
Token Holder Object
A "Token Holder Object" is a JSON object with a information about token holder.
Fields are:
| Field | Type | Description |
|---|---|---|
| transfer | Boolean | Token transferability |
| balance | Integer | Token Balance |
| wallet | String | Wallet Address |
| volumeLock | Integer | Lock Token Quantity |
| volumeTimeLock | Integer | TImeLock Token Quantity |
Token Info Object
A "Token Info Object" is a JSON object with a information about token creation.
Fields are:
| Field | Type | Description |
|---|---|---|
| totalHolder | Boolean | Number of token holders |
| advanced | Boolean | Availability of function |
| symbol | String | Token Symbol |
| name | String | Token Name |
| summary | String | Token Summary |
| issuer | String | Issuer wallet Address |
| owner | String | Owner wallet Address |
| decimal | Integer | Token decimal(Max. 18) |
| totalAmount | Integer | Token Issue Amount |
Part Node Object
A "Part Node Object" is a JSON object with a information of an Node Participation.
Fields are:
| Field | Type | Description |
|---|---|---|
| nodeIndex | Integer | Node participation order. |
| penalty | Integer | Penalty for Cancellation (%). |
| nodeWallet | String | Node Participation Wallet. |
| minerWallet | String | Node Participation Mining Wallet. |
| state | String | Participating node status(MN,SN,STN). |
| startTimestamp | Integer | Start time for participation. |
| lockTime | Integer | Lockup time. |
| code | String | Node participation code. |
| step | String | Indicates the current state of the participating node. |
Part Sub Node Object
A "Part Sub Node Object" is a JSON object with a information of an Node Participation.
Fields are:
| Field | Type | Description |
|---|---|---|
| wallet | String | Sub-Node Participation Wallet. |
| amount | String | Coins to participate (SNC) |
| state | String | Participating node status(Waiting for approval,Approval for participation,Waiting for H/W approval,Final approval for participation,Sub-node is done). |