Table of Contents
Table of Contents | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Overview
FIO Relic is a fork of Antelope Memento and is intended to receive FIO Chain data stream from the FIO Chain Node via EOS Chronicle. FIO specific data is extracted from the stream and stored in a Relational Database (RDB) for future query via an application which connects to to the FIO Chain node to receive all transaction data, transforms this data into FIO Protocol specific data, inserts int into a relational database and makes the content available via HTTP API. The following document is intended to be functional specification for the FIO Relic System.
Components
Application Components
Data
...
This component is responsible for reading the data in the data stream and looking for FIO-specific data, parsing it, and inserting into RDB.
Example:
When an action registering FIO Domain is observed, insert it into domains table.
Query API
This component is responsible for receiving an API request, fetching relevant data from the RDB and returning to the API user.
Example:
...
Pipeline
Data Pipeline (FIO.Chronicle) is a software application designed to connect to FIO Chain State History, receive the data and transform it to JSON. It is a fork of the EOSChronicle project.
receiver – a new receiver will be made that will meet RELIC specific needs. the receiver will process only relic relevant events from the fio state history node.
decoder – a decoder component will be made that meets relic specific needs, converting relic bin data collected and queued from history node receiver into json to be consumed by a relic specific exporter.
exporter – a new exporter will be made that will export data directly into the relic Postgres relational database.
Database
Postgres Relational Database to store FIO Chain information.
API
HTTP server to return information from database.
Push Notification System
This component will be developed in Phase 2.
...
“Notify supplied webhook on every new FIO Domain registration”
“Notify when a FIO Request for specific FIO Handle is observed”
Specification
Data Model
blocks
...
Deployment Requirements
FIO Relic will likely be run on the same environment as the FIO Chain node. Therefore, it should be compatible with that environment
It should be very easy to configure and deploy FIO Relic as a product.
Avoid:
Long installation instructions
Requiring install of multiple components which may have their own versions and dependancies
Consider:
Clear instructions on installation and dependency requirementgs
Single repo
Single install and run script
Data Model
blocks
Add only. Every block is a new entry.
Field | Description | Relationship | ||||||
---|---|---|---|---|---|---|---|---|
number |
| transactions → block_num | ||||||
id |
| |||||||
timestamp |
| |||||||
producer |
| |||||||
schedule_version |
|
transactions
Add only. Every transaction is a new entry.
Field | Description | Relationship | ||||||
---|---|---|---|---|---|---|---|---|
block_number |
| blocks → number | ||||||
id |
| traces → transaction_id | ||||||
action_account |
| |||||||
action_name |
| |||||||
account |
| |||||||
tpid |
| |||||||
fee |
| |||||||
request_data |
| |||||||
response_data |
| |||||||
status |
|
traces
Add only. Every trace is a new entry.
Field | Description | Relationship | ||||||
---|---|---|---|---|---|---|---|---|
id |
| |||||||
transaction_id |
| transactions → id | ||||||
receiver |
| |||||||
action_ordinal |
| |||||||
action_account |
| |||||||
action_name |
| |||||||
request_data |
|
accounts
Add only. Every account created is a new entry.
Field | Description | Relationship | ||||||
---|---|---|---|---|---|---|---|---|
account |
| account_activity → account domains → account handles → account token_transfers → payer_account token_transfers → payee_account token_staking → staker_account fio_requests → payee_account fio_requests → payer_account fio_data → payee_account fio_data → payer_account | ||||||
public_key |
| |||||||
timestamp |
|
account_activity
Add only. Every activity is a new entry.
Field | Description | Relationship | ||||||
---|---|---|---|---|---|---|---|---|
account |
| accounts → account | ||||||
transaction_id |
| transactions → id | ||||||
type |
|
domains
Add and update. Represents current state of domains. Will be updated every time domain info changes. Records will not be removed, just marked burned.
Field | Description | Relationship | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
domain |
| domain_activity → domain | ||||||||||||
account |
| accounts → account | ||||||||||||
is_public |
| |||||||||||||
expiration |
| |||||||||||||
status |
|
domain_activity
Add only. Every activity is a new entry
Field | Description | Relationship | ||||||
---|---|---|---|---|---|---|---|---|
domain |
| domains → domain | ||||||
transaction_id |
| transactions → id | ||||||
type |
|
handles
Add and update. Represents current state of handles. Will be updated every time handle info changes. Records will not be removed, just marked burned.
Field | Description | Relationship | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
handle |
| handle_activity → handle pub_addresses → handle nft_signatures → handle fio_requests → payer_handle fio_requests → payee_handle fio_data → payer_handle fio_data → payee_handle | ||||||||||||
domain |
| domains → domain | ||||||||||||
account |
| accounts → account | ||||||||||||
encryption_key |
| |||||||||||||
encryption_key_set |
| |||||||||||||
bundled_tx |
| |||||||||||||
expiration |
| |||||||||||||
status |
|
handle_activity
Add only. Every activity is a new entry
Field | Description | Relationship | ||||||
---|---|---|---|---|---|---|---|---|
handle |
| handles → handle | ||||||
transaction_id |
| transactions → id | ||||||
type |
|
pub_addresses
Add, update, delete. Represents current state of mapped public addresses. Will be updated every time mapping changes. Records will be removed if needed.
Field | Description | Relationship | ||||||
---|---|---|---|---|---|---|---|---|
handle |
| handles → handle | ||||||
chain_code |
| |||||||
token_code |
| |||||||
public_address |
|
nft_signatures
Add, update, delete. Represents current state of NFT signatures. Will be updated every time signatures are changed. Records will be removed if needed.
Field | Description | Relationship | ||||||
---|---|---|---|---|---|---|---|---|
handle |
| handles → handle | ||||||
chain_code |
| |||||||
contract_address |
| |||||||
token_id |
| |||||||
url |
| |||||||
hash |
| |||||||
metadata |
|
token_transfers
Add only. Every transfer is a new entry. Includes internal transfers.
Field | Description | Relationship | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
payer_account |
| accounts → account | ||||||||||||
payee_account |
| accounts → account | ||||||||||||
transaction_id |
| transactions → id | ||||||||||||
amount |
| |||||||||||||
type |
| |||||||||||||
memo |
|
token_staking
Add only. Every stake or unstake is a new entry. Includes internal transfers.
Field | Description | Relationship | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
staker_account |
| accounts → account | ||||||||||||
transaction_id |
| transactions → id | ||||||||||||
amount |
|
fio_requests
Add and update. Represents current state of requests. Will be updated every time request status changes. Records will not be removed.
Field | Description | Relationship | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
| fio_data → request_id | ||||||||||||
payee_handle |
| handles → handle | ||||||||||||
payer_handle |
| handles → handle | ||||||||||||
content |
| |||||||||||||
payee_pub_key |
| |||||||||||||
payer_pub_key |
| |||||||||||||
status |
| |||||||||||||
transaction_id |
| transactions → id |
fio_data
Add and update. Represents current state of FIO Data. Will be updated every time request status changes. Records will not be removed.
Field | Description | Relationship | ||||||
---|---|---|---|---|---|---|---|---|
request_id |
| fio_requests → id | ||||||
payee_handle |
| handles → handle | ||||||
payer_handle |
| handles → handle | ||||||
content |
| |||||||
payee_pub_key |
| |||||||
payer_pub_key |
| |||||||
status |
| |||||||
transaction_id |
| transactions → id |
Parsing Rules
The parsing rules below are triggered by any of the following:
...
Note |
---|
Please pay attention to sequence of traces to accommodate relationships, e.g. when transferring tokens to a new account, the account has to be inserted into accounts table, before transfer is recorded. |
Trigger: every block
Table: blocks
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
number |
|
id |
|
timestamp |
|
producer |
|
schedule_version |
|
Trigger: every trace where action_ordinal = 1
Table: transactions
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
block_number |
|
id |
|
action_account |
|
action_name |
|
account |
|
tpid |
|
fee |
|
request_data |
|
response_data |
|
status |
|
Table: account_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
account |
|
transaction_id | Transaction ID |
type | “sender” |
Trigger: every trace where action_ordinal > 1
Table: traces
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
id | Trace id. Auto-generated ID or transaction_id + action_ordinal, e.g. 770989df18fac96e48ca03d6702991d4462bebacceab8cf6b389507e998ca7fe-2 |
transaction_id |
|
receiver |
|
action_ordinal |
|
action_account |
|
action_name |
|
request_data |
|
Trigger: fio.address:bind2eosio
Table: accounts
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
account |
|
public_key |
|
timestamp |
|
Table: account_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
account |
|
transaction_id |
|
type | “receiver” |
Trigger: fio.token:trnsfiopubky and action_ordinal = 1
Table: token_transfers
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
payer_account |
|
payee_account |
|
transaction_id |
|
amount |
|
type | “transfer” |
memo |
Trigger: fio.token:trnsloctoks and action_ordinal = 1
Table: token_transfers
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
payer_account |
|
payee_account |
|
transaction_id |
|
amount |
|
type | “transfer_locked” |
memo |
Trigger: fio.token:transfer and receiver = fio.token
Table: token_transfers
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
payer_account |
|
payee_account |
|
transaction_id |
|
amount |
|
type | If If If If If If If |
memo |
|
Trigger: fio.token:issue and receiver = fio.token
Table: token_transfers
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
payer_account | “eosio” |
payee_account |
|
transaction_id |
|
amount |
|
type | “token_mint” |
memo |
|
Trigger: fio.token:wraptokens and action_ordinal = 1
Table: token_transfers
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
payer_account |
|
payee_account | “fio.oracle" |
transaction_id |
|
amount |
|
type | “wrap” |
memo |
Trigger: fio.token:stakefio and action_ordinal = 1
Table: token_staking
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
staker_account |
|
transaction_id |
|
amount |
|
Trigger: fio.token:retire and action_ordinal = 1
Table: token_transfers
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
payer_account |
|
payee_account | |
transaction_id |
|
amount |
|
type | “retire” |
memo |
|
Trigger: fio.token:unstakefio and action_ordinal = 1
Table: token_staking
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
staker_account |
|
transaction_id |
|
amount | Negative of ( |
Trigger: fio.address:regdomain and action_ordinal = 1
Table: domains
Status | ||||
---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
domain
)Field | Source Data |
---|---|
domain |
|
account |
|
is_public | “false” |
expiration |
|
status | “active" |
Table: domain_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
domain |
|
transaction_id |
|
type | “register” |
Table: account_activity
Status | ||||
---|---|---|---|---|
|
Only insert if trace
→ action_traces
→ act
→ data
→ actor
is not trace
→ action_traces
→ act
→ data
→ owner_fio_public_key
hashed to account.
Field | Source Data |
---|---|
account |
|
transaction_id |
|
type | “receiver” |
Trigger: fio.address:renewdomain and action_ordinal = 1
Table: domains
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
domain |
|
expiration |
|
Table: domain_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
domain |
|
transaction_id |
|
type | “renew” |
Trigger: fio.address:xferdomain and action_ordinal = 1
Table: domains
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
domain |
|
account |
|
Table: domain_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
domain |
|
transaction_id |
|
type | “transfer” |
Table: account_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
account |
|
transaction_id |
|
type | “receiver” |
Trigger: fio.address:setdomainpub and action_ordinal = 1
Table: domains
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
domain |
|
is_public |
|
Table: domain_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
domain |
|
transaction_id |
|
type | is_public: 1 type is “public” is_public: 0 type is “non-public” |
Trigger: fio.address:wrapdomain and action_ordinal = 1
Table: domains
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
domain |
|
account | “fio.oracle” |
Table: domain_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
domain |
|
transaction_id |
|
type | “wrap” |
Table: account_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
account | “fio.oracle” |
transaction_id |
|
type | “receiver” |
Trigger: fio.address:xferescrow
Table: domains
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
domain |
|
account |
|
Table: domain_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
domain |
|
transaction_id |
|
type | “unwrap” |
Table: account_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
account |
|
transaction_id |
|
type | “receiver” |
Field | Source Data |
---|---|
account | “fio.oracle” |
transaction_id |
|
type | “sender” |
Trigger: fio.address:regaddress and action_ordinal = 1
Table: handles
Status | ||||
---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
handle
)Field | Source Data |
---|---|
handle |
|
domain | Domain from ( |
account |
|
encryption_key |
|
encryption_key_set | “false” |
bundled_tx | “100” |
expiration |
|
status | “active" |
Table: handle_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
transaction_id |
|
type | “register” |
Table: account_activity
Status | ||||
---|---|---|---|---|
|
Only insert if trace
→ action_traces
→ act
→ data
→ actor
is not trace
→ action_traces
→ act
→ data
→ owner_fio_public_key
hashed to account.
Field | Source Data |
---|---|
account |
|
transaction_id |
|
type | “receiver” |
Table: pub_addresses
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
chain_code | “FIO” |
token_code | “FIO” |
public_address |
|
Trigger: fio.address:renewaddress and action_ordinal = 1
Table: handles
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
bundled_tx | Increment current value by “100” |
expiration |
|
Table: handle_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
transaction_id |
|
type | “renew” |
Trigger: fio.address:xferaddress and action_ordinal = 1
Table: handles
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
account |
|
encryption_key |
|
encryption_key_set | “false” |
Table: handle_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
transaction_id |
|
type | “transfer” |
Table: account_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
account |
|
transaction_id |
|
type | “receiver” |
Table: pub_addresses
Status | ||||
---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
Remove all objects matching in trace
→ action_traces
→ act
→ data
→ fio_address
and add:
Field | Source Data |
---|---|
handle |
|
chain_code | “FIO” |
token_code | “FIO” |
public_address |
|
Table: nft_signatures
Status | ||||
---|---|---|---|---|
|
Remove all objects matching in trace
→ action_traces
→ act
→ data
→ fio_address
Trigger: fio.address:addbundles and action_ordinal = 1
Table: handles
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
bundled_tx | Increment current value by |
Table: handle_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
transaction_id |
|
type | “add_bundles” |
Trigger: fio.address:addaddress and action_ordinal = 1
Table: handle_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
transaction_id |
|
type | “add_pubbadd” |
Table: pub_addresses
Status | ||||
---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
For each object in trace
→ action_traces
→ act
→ data
→ public_addresses
update or insert new record
Field | Source Data |
---|---|
handle |
|
chain_code |
|
token_code |
|
public_address |
|
Table: handles
Status | ||||
---|---|---|---|---|
|
Update only if encryption_key_set = false and chain_code = “FIO” and (token_code = “FIO” or token_code = “*”)
Field | Source Data |
---|---|
handle |
|
encryption_key |
|
Trigger: fio.address:remaddress and action_ordinal = 1
Table: handle_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
transaction_id |
|
type | “rem_pubbadd” |
Table: pub_addresses
Status | ||||
---|---|---|---|---|
|
Remove each object in trace
→ action_traces
→ act
→ data
→ public_addresses
which matches
Field | Source Data |
---|---|
handle |
|
chain_code |
|
token_code |
|
public_address |
|
Trigger: fio.address:remalladdr and action_ordinal = 1
Table: handle_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
transaction_id |
|
type | “rem_all_pubbadd” |
Table: pub_addresses
Status | ||||
---|---|---|---|---|
|
Remove all objects matching in trace
→ action_traces
→ act
→ data
→ fio_address
Trigger: fio.address:addnft and action_ordinal = 1
Table: handle_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
transaction_id |
|
type | “add_nft” |
Table: nft_signatures
Status | ||||
---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
For each object in trace
→ action_traces
→ act
→ data
→ nfts
update or insert new record
Field | Source Data |
---|---|
handle |
|
chain_code |
|
contract_address |
|
token_id |
|
url |
|
hash |
|
metadata |
|
Trigger: fio.address:remnft and action_ordinal = 1
Table: handle_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
transaction_id |
|
type | “rem_nft” |
Table: nft_signatures
Status | ||||
---|---|---|---|---|
|
Remove each object in trace
→ action_traces
→ act
→ data
→ nfts
which matches
Field | Source Data |
---|---|
handle |
|
chain_code |
|
contract_address |
|
token_id |
|
url |
|
hash |
|
metadata |
|
Trigger: fio.address:remallnfts and action_ordinal = 1
Table: handle_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
transaction_id |
|
type | “rem_all_nft” |
Table: nft_signatures
Status | ||||
---|---|---|---|---|
|
Remove all objects matching in trace
→ action_traces
→ act
→ data
→ fio_address
Trigger: fio.address:updcryptkey and action_ordinal = 1
Table: handles
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
encryption_key |
|
encryption_key_set | “true” |
Table: handle_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
transaction_id |
|
type | “upd_encryptkey” |
Trigger: fio.address:regdomadd and action_ordinal = 1
Execute same as for trigger fio.address:regdomain and fio.address:regaddress except insert only once into account_activity
with type “receiver”.
Trigger: fio.address:burnaddress and action_ordinal = 1
Table: handles
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
status | “burnt” |
Table: handle_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
transaction_id |
|
type | “self_burn” |
Table: pub_addresses
Status | ||||
---|---|---|---|---|
|
Remove all objects matching in trace
→ action_traces
→ act
→ data
→ fio_address
Table: nft_signatures
Status | ||||
---|---|---|---|---|
|
Remove all objects matching in trace
→ action_traces
→ act
→ data
→ fio_address
Trigger: fio.address:newfundsreq and action_ordinal = 1
Table: handle_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
transaction_id |
|
type | “new_request” |
Table: account_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
account |
|
transaction_id |
|
type | “receiver” |
Field | Source Data |
---|---|
account | Look-up |
transaction_id |
|
type | “receiver” |
Table: fio_requests
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
id |
|
payee_handle |
|
payer_handle |
|
content |
|
payee_pub_key | Look-up |
payer_pub_key | Look-up |
status | “pending” |
transaction_id |
|
Trigger: fio.address:cancelfndreq and action_ordinal = 1
Table: handle_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
transaction_id |
|
type | “cancel_request” |
Table: fio_requests
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
id |
|
status | “cancelled” |
Trigger: fio.address:recordobt and action_ordinal = 1
Table: handle_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
transaction_id |
|
type | “record_obt” |
Table: account_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
account |
|
transaction_id |
|
type | “receiver” |
Field | Source Data |
---|---|
account | Look-up |
transaction_id |
|
type | “receiver” |
Table: fio_data
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
request_id |
|
payee_handle |
|
payer_handle |
|
content |
|
payee_pub_key | Look-up |
payer_pub_key | Look-up |
status | “sent_to_blockchain” |
transaction_id |
|
Table: fio_requests
Status | ||||
---|---|---|---|---|
|
Update only if trace
→ action_traces
→ act
→ data
→ fio_request_id
is present
Field | Source Data |
---|---|
id |
|
status | “sent_to_blockchain” |
Trigger: Table Deltas: added:false
and kvo->table:domains
Table: domains
Status | ||||
---|---|---|---|---|
|
...
Field
...
Source Data
...
domain
Secondary conditions (all must be true):
There must be a transaction in the
block_num
which hasaction_name: burnexpired
is_public
forkvo
→value
→name
in domains table has not changedexpiration
forkvo
→value
→name
in domains table has not changed
Table: domains
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
domain |
|
status | “burnt” |
Table: domain_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
domain |
|
transaction_id | transaction id of transaction with |
type | “auto_burn” |
Trigger: Table Deltas: added:false
and kvo->table:fionames
Additional check needs to be performed:
...
Secondary conditions (all must be true):
There must be a transaction in the
block_num
which hasaction_name: burnexpired
and its traces do not have a trace withaction_name: burnaddress and action_ordinal = 1
do not process this trigger.
Table: handles
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
status | “burnt” |
Table: handle_activity
Status | ||||
---|---|---|---|---|
|
Field | Source Data |
---|---|
handle |
|
transaction_id | transaction id of transaction with |
type | “auto_burn” |
API
/get_blocks
Returns block information.
Request
Parameter | Description | ||||||
---|---|---|---|---|---|---|---|
time_start |
timestamp | ||||||
time_end |
timestamp | ||||||
producer |
producer | ||||||
sort |
|
Query
Return records from blocks
which match all request parameters.
...
block_num_asc:
blocks
→number
ASCblock_num_desc:
blocks
→number
DESCtimestamp_asc:
blocks
→timestamp
ASCtimestamp_desc:
blocks
→timestamp
DESC
Response
Group | Field | Source Data |
---|---|---|
blocks | number |
|
blocks | id |
|
blocks | timestamp |
|
blocks | producer |
|
blocks | schedule_version |
|
pagination | limit | Supplied limit |
pagination | offset | Supplied offset |
pagination | total_records | Total number of transactions which meet the criteria |
pagination | next_offset | Offset to supply for next set of records: supplied offset + limit |
pagination | previous_offset | Offset to supply for previous set of records: supplied offset - limit |
Example
Code Block | ||
---|---|---|
| ||
{ "blocks": [ { "number": "2", "id": "00000002953a8ab87a1855c0c40786e6a910a86cb2dd160f181418d05d233ea7", "timestamp": "2020-03-25T00:05:21.000", "producer": "eosio", "schedule_version": "1" } ], "pagination": { "limit": 100, "offset": 0, "total_records": 1, "next_offset": "", "previous_offset": "" } } |
/get_transactions
Returns transaction information.
Request
Parameter | Description | ||||||
---|---|---|---|---|---|---|---|
time_start |
timestamp | ||||||
time_end |
timestamp | ||||||
block_number |
block_number | ||||||
action_account |
action_account | ||||||
action_name |
action_name | ||||||
impacted_account |
| ||||||
impacted_account_direction |
| ||||||
include_traces |
| ||||||
sort |
| ||||||
limit |
| ||||||
offset |
|
Query
Return records from transactions
which match all request parameters except:
...
timestamp_asc:
blocks
→timestamp
ASCtimestamp_desc:
blocks
→timestamp
DESC
Response
Group | Field | Source Data |
---|---|---|
transactions | id |
|
transactions | block_number |
|
transactions | timestamp |
|
transactions | action_account |
|
transactions | action_name |
|
transactions | sender_account |
|
transactions | receiver_account |
|
transactions | impacted_account_direction | See
Blank if impacted_account not supplied. |
transactions | tpid |
|
transactions | fee |
|
transactions | request_data |
|
transactions | request_data |
|
transactions | status |
|
transactions | type_specific_data | This element contains data which is specific to certain types of transactions from the joint tables:
|
transactions | traces array |
For each trace:
|
pagination | limit | Supplied limit |
pagination | offset | Supplied offset |
pagination | total_records | Total number of transactions which meet the criteria |
pagination | next_offset | Offset to supply for next set of records: supplied offset + limit |
pagination | previous_offset | Offset to supply for previous set of records: supplied offset - limit |
Example
Code Block | ||
---|---|---|
| ||
{ "transactions": [ { "id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e", "block_number": "259024750", "timestamp": "2024-05-03T17:00:02.500", "action_account": "fio.address", "action_name": "regaddress", "sender_account": "xghrmfdenyu5", "receiver_account": "1hpxnziaw2ec", "impacted_account_direction": "", "tpid": "tpid@opera", "fee": "55.399150882", "request_data": { "fio_address": "turandb@opera", "owner_fio_public_key": "FIO5PJdEsMQ5Qd2otKVFSXru72KcMx4G2Vafo9MZ6NHttqYCiV5JP", "max_fee": 55399150882, "actor": "xghrmfdenyu5", "tpid": "tpid@opera" }, "response_data": "{\"status\": \"OK\",\"expiration\":\"2105-02-07T06:28:15\",\"fee_collected\":55399150882}", "status": "executed", "type_specific_data": { "token_transfers": [ { "payer_account": "xghrmfdenyu5", "payee_account": "fio.treasury", "amount": "55.399150882", "type": "blockchain_fee", "memo": "FIO fee: register_fio_address" }, { "payer_account": "eosio", "payee_account": "fio.treasury", "amount": "22.159660352", "type": "token_mint", "memo": "New tokens produced from reserves" } ], "domain_activity": [], "handle_activity": [ { "handle": "turandb@opera", "type": "register" } ], "token_staking": [], "fio_requests": [], "fio_data": [] }, "traces": [ { "id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e-2", "receiver": "eosio", "action_ordinal": 2, "action_account": "eosio", "action_name": "newaccount", "request_data": { "creator": "fio.address", "name": "1hpxnziaw2ec", "owner": { "threshold": 1, "keys": [ { "key": "FIO5PJdEsMQ5Qd2otKVFSXru72KcMx4G2Vafo9MZ6NHttqYCiV5JP", "weight": 1 } ], "accounts": [], "waits": [] }, "active": { "threshold": 1, "keys": [ { "key": "FIO5PJdEsMQ5Qd2otKVFSXru72KcMx4G2Vafo9MZ6NHttqYCiV5JP", "weight": 1 } ], "accounts": [], "waits": [] } } }, { "id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e-3", "receiver": "fio.token", "action_ordinal": 3, "action_account": "fio.token", "action_name": "transfer", "request_data": { "from": "xghrmfdenyu5", "to": "fio.treasury", "quantity": "55.399150882 FIO", "memo": "FIO fee: register_fio_address" } }, { "id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e-4", "receiver": "fio.treasury", "action_ordinal": 4, "action_account": "fio.treasury", "action_name": "fdtnrwdupdat", "request_data": { "amount": 2769957544 } }, { "id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e-5", "receiver": "fio.token", "action_ordinal": 5, "action_account": "fio.token", "action_name": "mintfio", "request_data": { "to": "fio.treasury", "amount": 22159660352 } }, { "id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e-6", "receiver": "fio.tpid", "action_ordinal": 6, "action_account": "fio.tpid", "action_name": "updatebounty", "request_data": { "amount": 22159660352 } }, { "id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e-7", "receiver": "fio.tpid", "action_ordinal": 7, "action_account": "fio.tpid", "action_name": "updatetpid", "request_data": { "tpid": "tpid@opera", "owner": "xghrmfdenyu5", "amount": 27699575440 } }, { "id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e-8", "receiver": "fio.treasury", "action_ordinal": 8, "action_account": "fio.treasury", "action_name": "bppoolupdate", "request_data": { "amount": 33239490529 } }, { "id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e-9", "receiver": "fio.staking", "action_ordinal": 9, "action_account": "fio.staking", "action_name": "incgrewards", "request_data": "48fd823903000000" }, { "id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e-10", "receiver": "eosio", "action_ordinal": 10, "action_account": "eosio", "action_name": "incram", "request_data": { "accountmn": "xghrmfdenyu5", "amount": 2560 } }, { "id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e-11", "receiver": "fio.token", "action_ordinal": 11, "action_account": "xghrmfdenyu5", "action_name": "transfer", "request_data": { "from": "xghrmfdenyu5", "to": "fio.treasury", "quantity": "55.399150882 FIO", "memo": "FIO fee: register_fio_address" } }, { "id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e-12", "receiver": "fio.treasury", "action_ordinal": 12, "action_account": "xghrmfdenyu5", "action_name": "transfer", "request_data": { "from": "xghrmfdenyu5", "to": "fio.treasury", "quantity": "55.399150882 FIO", "memo": "FIO fee: register_fio_address" } }, { "id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e-13", "receiver": "eosio", "action_ordinal": 13, "action_account": "eosio", "action_name": "updlocked", "request_data": { "owner": "xghrmfdenyu5", "amountremaining": 165900009925342 } }, { "id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e-14", "receiver": "fio.token", "action_ordinal": 14, "action_account": "fio.token", "action_name": "issue", "request_data": { "to": "fio.treasury", "quantity": "22.159660352 FIO", "memo": "New tokens produced from reserves" } }, { "id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e-15", "receiver": "eosio", "action_ordinal": 15, "action_account": "fio.token", "action_name": "issue", "request_data": { "to": "fio.treasury", "quantity": "22.159660352 FIO", "memo": "New tokens produced from reserves" } }, { "id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e-16", "receiver": "fio.treasury", "action_ordinal": 16, "action_account": "fio.token", "action_name": "issue", "request_data": { "to": "fio.treasury", "quantity": "22.159660352 FIO", "memo": "New tokens produced from reserves" } }, { "id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e-17", "receiver": "eosio", "action_ordinal": 17, "action_account": "eosio", "action_name": "crautoproxy", "request_data": { "proxy": "2m11cvdizsrg", "owner": "xghrmfdenyu5" } } ] } ], "receiver": "eosio", "action_ordinal": 17, "action_account": "eosio", "action_name": "crautoproxy", "request_data": { "proxy": "2m11cvdizsrg", "owner": "xghrmfdenyu5" } } ] } ], "pagination": { "limit": 100, "offset": 0, "total_records": 1, "next_offset": "", "previous_offset": "" } } |
/get_accounts
Returns account information.
Request
Parameter | Description | ||||||
---|---|---|---|---|---|---|---|
time_start |
timestamp | ||||||
time_end |
timestamp | ||||||
sort |
| ||||||
limit |
| ||||||
offset |
|
Query
Return records from accounts
which match all request parameters.
Sort by:
timestamp_asc:
timestamp
ASCtimestamp_desc:
timestamp
DESC
Response
Group | Field | Source Data |
---|---|---|
accounts | account |
|
accounts | public_key |
|
accounts | timestamp |
|
pagination | limit | Supplied limit |
pagination | offset | Supplied offset |
pagination | total_records | Total number of transactions which meet the criteria |
pagination | next_offset | Offset to supply for next set of records: supplied offset + limit |
pagination | previous_offset | Offset to supply for previous set of records: supplied offset - limit |
Example
Code Block | ||
---|---|---|
| ||
{
"accounts": [
{
"account": "1hpxnziaw2ec",
"public_key": "FIO5PJdEsMQ5Qd2otKVFSXru72KcMx4G2Vafo9MZ6NHttqYCiV5JP"
}
],
"pagination": {
"limit": 100,
"offset": 0,
"total_records": 1,
"next_offset": "",
"previous_offset": ""
}
} |
/get_domains
Returns domain information.
Request
Parameter | Description | ||||||
---|---|---|---|---|---|---|---|
account |
| ||||||
is_public |
| ||||||
status |
| ||||||
sort |
| ||||||
limit |
| ||||||
offset |
|
Query
Return records from domains
which match all request parameters.
Sort by:
alphabetical:
domain
ASCexpiration_asc:
expiration
ASCexpiration_asc:
expiration
DESC
Response
Group | Field | Source Data |
---|---|---|
domains | domain |
|
domains | account |
|
domains | is_public |
|
domains | expiration |
|
domains | status |
|
pagination | limit | Supplied limit |
pagination | offset | Supplied offset |
pagination | total_records | Total number of transactions which meet the criteria |
pagination | next_offset | Offset to supply for next set of records: supplied offset + limit |
pagination | previous_offset | Offset to supply for previous set of records: supplied offset - limit |
Example
Code Block | ||
---|---|---|
| ||
{
"domains": [
{
"domain": "bob",
"account": "1hpxnziaw2ec",
"is_public": false,
"expiration": "2024-05-03T17:00:02.500",
"status": "active"
}
],
"pagination": {
"limit": 100,
"offset": 0,
"total_records": 1,
"next_offset": "",
"previous_offset": ""
}
} |
/get_
...
handles
Returns account handle information.
Request
Parameter | Description |
---|
handle |
| ||||||
account |
| ||||||
domain |
|
timestamp
time_endDomain of handle | |||||||
status |
|
timestamp
sort
| |||||||
bundled_tx_max |
|
timestamp_asc (default)
Maximum number of bundled_tx. When supplied only handles which have less than or equal number of bundled_tx will be returned. | |||||||
limit |
| ||||||
offset |
|
Query
Return records from accounts
handles
which match all request parameters.
Sort by:
timestamp_ascalphabetical:
timestamp
handle
ASCtimestamp_desc:
timestamp
DESC
Response
Group | Field | Source Data |
---|
handles | handle |
|
handles | account |
accounts
|
accounts
public_key
accounts
→ public_key
accounts
timestamp
accounts
→ timestamp
handles | domain |
|
handles | encryption_key |
|
handles | encryption_key_set |
|
handles | bundled_tx |
|
handles | expiration |
|
handles | status |
|
pagination | limit | Supplied limit |
pagination | offset | Supplied offset |
pagination | total_records | Total number of transactions which meet the criteria |
pagination | next_offset | Offset to supply for next set of records: supplied offset + limit |
pagination | previous_offset | Offset to supply for previous set of records: supplied offset - limit |
Example
Code Block | ||
---|---|---|
| ||
{ "accountshandles": [ { "handle": "turandb@opera", "account": "1hpxnziaw2ec", "domain": "opera", "publicencryption_key": "FIO5PJdEsMQ5Qd2otKVFSXru72KcMx4G2Vafo9MZ6NHttqYCiV5JP", "encryption_key_set": false, "bundled_tx": 100, "expiration": "2025-05-03T17:00:02.500", "status": "active" } ], "pagination": { "limit": 100, "offset": 0, "total_records": 1, "next_offset": "", "previous_offset": "" } } |
/get_pub_
...
addresses
Returns domain pub_addresses information.
Request
Parameter | Description | ||||||
---|---|---|---|---|---|---|---|
handle |
| ||||||
account |
|
handle owner |
chain_ |
code |
|
true
false
status
Chain code | |||||||
token_code |
|
active (default)
burnt
both
Token code | |||||||
public_address |
|
alphabetical (default)
expiration_asc
expiration_desc
Public Address | |||||||
limit |
| ||||||
offset |
|
Query
Return records from domains
pub_addresses
which match all request parameters.
account
requires join on handles
handle status must be active
Sort by:
alphabetical:
domain
handle
ASCexpiration_asc:
expiration
ASCexpiration_asc:
expiration
DESC
Response
Group | Field | Source Data |
---|
handles |
handle |
domains
|
domain
|
handles | account |
domains
|
domains
is_public
domains
→ is_public
domains
expiration
domains
→ expiration
domains
status
domains
→ status
handles → pub_addresses | chain_code |
|
handles → pub_addresses | token_code |
|
handles → pub_addresses | public_address |
|
pagination | limit | Supplied limit |
pagination | offset | Supplied offset |
pagination | total_records | Total number of transactions which meet the criteria |
pagination | next_offset | Offset to supply for next set of records: supplied offset + limit |
pagination | previous_offset | Offset to supply for previous set of records: supplied offset - limit |
Example
Code Block | ||
---|---|---|
| ||
{ "handles": [ { "handle": "turandb@opera", "account": "1hpxnziaw2ec", "pub_addresses": [ { "chain_code": "FIO", "token_code": "FIO", "public_address": "FIO5PJdEsMQ5Qd2otKVFSXru72KcMx4G2Vafo9MZ6NHttqYCiV5JP" }, "domains": [ { "domainchain_code": "bobETH", "accounttoken_code": "1hpxnziaw2ec*", "ispublic_publicaddress": false,"0x00000000" "expiration": "2024-05-03T17:00:02.500", } "status": "active" ] } ], "pagination": { "limit": 100, "offset": 0, "total_records": 1, "next_offset": "", "previous_offset": "" } } |
/get_nft_
...
signatures
Returns handle nft_signatures information.
Request
Parameter | Description | ||||||
---|---|---|---|---|---|---|---|
handle |
| ||||||
account |
| ||||||
chain_code |
|
Chain code | |||||||
contract_address |
|
active (default)
burnt
both
token_id |
| ||||||
limit |
| ||||||
offset |
|
Query
Return records from handles
which match all request parameters. nft_signatures
which match all request parameters.
account
requires join on handles
handle status must be active
Sort by:
alphabetical:
handle
ASC
Response
Group | Field | Source Data |
---|---|---|
handles | handle |
|
handles | account |
|
handles |
→ nft_signatures | chain_code |
|
handles → |
domain
handles
nft_signatures | contract_address |
|
handles → |
nft_ |
signatures |
token_id |
|
|
|
handles → |
nft_ |
signatures |
url |
|
|
handles → |
nft_ |
signatures |
handles
hash |
|
handles → |
expiration
nft_signatures |
handles
status
handles
→ status
metadata |
| |
pagination | limit | Supplied limit |
pagination | offset | Supplied offset |
pagination | total_records | Total number of transactions which meet the criteria |
pagination | next_offset | Offset to supply for next set of records: supplied offset + limit |
pagination | previous_offset | Offset to supply for previous set of records: supplied offset - limit |
Example
Code Block | ||
---|---|---|
| ||
{ "handles": [ { "handle": "turandb@opera", "account": "1hpxnziaw2ec", "domain"nft_signatures": [ { "chain_code": "operaMATIC", "encryptioncontract_keyaddress": "FIO5PJdEsMQ5Qd2otKVFSXru72KcMx4G2Vafo9MZ6NHttqYCiV5JP0x7bfc7492B32E40D7Dd9B0A241B5d0Ba9CCf1632B", "encryptiontoken_key_setid": false"24254130", "bundled_txurl": 100"", "expirationhash": "2025-05-03T17:00:02.500", "statusmetadata": "active"" } ] } ], "pagination": { "limit": 100, "offset": 0, "total_records": 1, "next_offset": "", "previous_offset": "" } } |
/get_
...
token_
...
transfers
Returns pubtoken_addresses transfers information.
Request
Parameter | Description |
---|
time_start |
|
Filters by | |||||||
time_end |
|
Filters by | |||||||
payer_account |
|
Payer account |
payee_ |
account |
|
Payee account | |||||||
type |
|
Tranfser type | |||||||
limit |
| ||||||
offset |
|
Query
Return records from pubtoken_addressestransfers
which match all request parameters.
account
timestamp
requires join on handles
handle status must be active
transactions
Sort by:
alphabetical:
handle
timestamp
ASC
Response
Group | Field |
---|
Source Data
handles
handle
handles
→ handle
handles
account
handles
→ account
handles → pub_addresses
chain_code
pub_addresses
→ chain_code
handles → pub_addresses
token_code
pub_addresses
→ token_code
handles → pub_addresses
public_address
pub_addresses
→ public_address
Source Data | ||
---|---|---|
token_transfers | transaction_id |
|
token_transfers | timestamp |
|
token_transfers | payer_account |
|
token_transfers | payee_account |
|
token_transfers | amount |
|
token_transfers | type |
|
token_transfers | memo |
|
pagination | limit | Supplied limit |
pagination | offset | Supplied offset |
pagination | total_records | Total number of transactions which meet the criteria |
pagination | next_offset | Offset to supply for next set of records: supplied offset + limit |
pagination | previous_offset | Offset to supply for previous set of records: supplied offset - limit |
Example
Code Block | ||
---|---|---|
| ||
{ "handlestoken_transfers": [ { "handletransaction_id": "turandb@operad3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e", "accounttimestamp": "1hpxnziaw2ec", "pub_addresses": [ { "chain_code": "FIO2024-05-03T17:00:02.500", "tokenpayer_codeaccount": "FIOxghrmfdenyu5", "publicpayee_addressaccount": "FIO5PJdEsMQ5Qd2otKVFSXru72KcMx4G2Vafo9MZ6NHttqYCiV5JP" }fio.treasury", { "chain_code"amount": "ETH55.399150882", "token_codetype": "*blockchain_fee", "public_addressmemo": "0x00000000" } ]FIO fee: register_fio_address" } ], "pagination": { "limit": 100, "offset": 0, "total_records": 1, "next_offset": "", "previous_offset": "" } } |
/get_
...
fio_
...
requests
Returns nftfio_signatures request information.
Request
Parameter | Description |
---|
handle
time_start |
timestamp of associated transaction | ||||||
time_end |
timestamp of associated transaction | ||||||
payee_handle |
|
payer_handle |
|
chain_code
Payer FIO Handle | |||||||
payee_account |
|
Payee account |
payer_ |
account |
|
status |
|
Request status |
limit |
| ||||||
offset |
|
Query
Return records from nftfio_signaturesrequest
which match all request parameters.
timestamp
requires join on transactions
payee_account
and payer_account
requires join on handles
handle status must be active
Sort by:
alphabetical:
handle
timestamp
ASC
Response
Group | Field | Source Data |
---|
handles
fio_requests | id |
|
fio_requests | timestamp |
|
fio_requests | payer_account |
|
handle
|
fio_requests | payee_account |
|
handles → nft_signatures
chain_code
nft_signatures
→ chain_code
handles → nft_signatures
contract_address
nft_signatures
→ contract_address
handles → nft_signatures
token_id
nft_signatures
→ token_id
handles → nft_signatures
url
nft_signatures
→ url
handles → nft_signatures
hash
nft_signatures
→ hash
handles → nft_signatures
metadata
nft_signatures
→ metadata
fio_requests | payee_handle |
|
fio_requests | payer_handle |
|
fio_requests | content |
|
fio_requests | payee_pub_key |
|
fio_requests | payer_pub_key |
|
fio_requests | status |
|
fio_requests | transaction_id |
|
pagination | limit | Supplied limit |
pagination | offset | Supplied offset |
pagination | total_records | Total number of transactions which meet the criteria |
pagination | next_offset | Offset to supply for next set of records: supplied offset + limit |
pagination | previous_offset | Offset to supply for previous set of records: supplied offset - limit |
Example
Code Block | ||
---|---|---|
| ||
{ "handlesfio_requests": [ { "handleid": "turandb@opera"88, "accounttimestamp": "1hpxnziaw2ec2020-03-13T19:52:08", "nftpayee_signaturesaccount": [ { "xghrmfdenyu5", "chainpayer_codeaccount": "MATIC1hpxnziaw2ec", "contractpayee_addresshandle": "0x7bfc7492B32E40D7Dd9B0A241B5d0Ba9CCf1632Bpawel@fiotestnet", "tokenpayer_idhandle": "24254130pawel@person", "urlcontent": "v6Kvk+CvQBGua4V1YpYjBekOzqA9LHWFfKXhfBnhewdGGm5PhPbwC8YQAIISpu/4mGDGR9JhCkyxLFH42Ei/EpSlUUsLD+3H5ckqQm9xFQc+lZdeOW9+6sMnePLsVTGvGF55Hqd1CE3xZaj6OjBz9A==", "hashpayee_pub_key": "FIO8h1Aan6DZJsFjH91BGsQfNt2FsYbVyKeXFETNvYtTW9vaU81ay", "metadatapayer_pub_key": "FIO55BB3WmX7F1VDX7s8LjevJrU8g9G9ptpAmoZu7szYYBw19EZW4", }"status": "requested", ]"transaction_id": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e" } ], "pagination": { "limit": 100, "offset": 0, "total_records": 1, "next_offset": "", "previous_offset": "" } } |
/get_
...
fio_
...
data
Returns tokenfio_transfers data information.
Request
Parameter | Description |
---|---|
time_ |
start |
timestamp of associated transaction | ||||||
time_end |
timestamp of associated transaction | ||||||
payee_handle |
|
timestamp
of associated transactiontime_endPayee FIO Handle | |||||||
payer_handle |
|
timestamp
of associated transactionpayerPayer FIO Handle |
payee_account |
|
Payee account |
payer_account |
|
Payer account |
status |
|
Data status |
limit |
| ||||||
offset |
|
Query
Return records from tokenfio_transfersdata
which match all request parameters.
timestamp
requires join on transactions
payee_account
and payer_account
requires join on handles
Sort by:
alphabetical:
timestamp
ASC
Response
Group | Field | Source Data |
---|
fio_ |
data |
request_id |
transactions
|
fio_ |
data | timestamp |
|
fio_ |
data | payer_account |
token_transfers
→ payer_account
token_transfers
payee_account
token_transfers
→ payee_account
token_transfers
amount
token_transfers
→ amount
token_transfers
type
token_transfers
→ type
token_transfers
memo
token_transfers
→ memo
| ||
fio_data | payee_account |
|
fio_data | payee_handle |
|
fio_data | payer_handle |
|
fio_data | content |
|
fio_data | payee_pub_key |
|
fio_data | payer_pub_key |
|
fio_data | status |
|
fio_data | transaction_id |
|
pagination | limit | Supplied limit |
pagination | offset | Supplied offset |
pagination | total_records | Total number of transactions which meet the criteria |
pagination | next_offset | Offset to supply for next set of records: supplied offset + limit |
pagination | previous_offset | Offset to supply for previous set of records: supplied offset - limit |
Example
Code Block | ||
---|---|---|
| ||
{ "tokenfio_transfersdata": [ { { "request_id": 88, "timestamp": "2020-03-13T19:52:08", "payee_account": "xghrmfdenyu5", "payer_account": "1hpxnziaw2ec", "transactionpayee_idhandle": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6epawel@fiotestnet", "timestamppayer_handle": "2024-05-03T17:00:02.500pawel@person", "payer_accountcontent": "xghrmfdenyu5v6Kvk+CvQBGua4V1YpYjBekOzqA9LHWFfKXhfBnhewdGGm5PhPbwC8YQAIISpu/4mGDGR9JhCkyxLFH42Ei/EpSlUUsLD+3H5ckqQm9xFQc+lZdeOW9+6sMnePLsVTGvGF55Hqd1CE3xZaj6OjBz9A==", "payee_accountpub_key": "fio.treasuryFIO8h1Aan6DZJsFjH91BGsQfNt2FsYbVyKeXFETNvYtTW9vaU81ay", "amountpayer_pub_key": "55.399150882FIO55BB3WmX7F1VDX7s8LjevJrU8g9G9ptpAmoZu7szYYBw19EZW4", "typestatus": "sent_to_blockchain_fee", "memotransaction_id": "FIO fee: register_fio_addressd3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e" } ], "pagination": { "limit": 100, "offset": 0, "total_records": 1, "next_offset": "", "previous_offset": "" } } |
/get_
...
domain_
...
activity
Returns fiodomain_request activity information.
Request
Parameter | Description |
---|---|
time_start |
Status | ||||
---|---|---|---|---|
|
timestamp
of associated transactiontime_end
Status | ||||
---|---|---|---|---|
|
timestamp
of associated transaction
|
Filters by | |||||||
time_end |
|
payee_account
Filters by | |||||||
domain |
|
payer_account
Domain name | |||||||
type |
|
Type |
owner_account |
|
|
Domain owner account |
limit |
| ||||||
offset |
|
Query
Return records from fiodomain_requestactivity
which match all request parameters.
timestamp
requires join on transactions
payee_account
and payerowner_account
requires join on handles
domains
Sort by:
alphabetical:
timestamp
ASC
Response
Group |
---|
Field
Source Data
fio_requests
id
fio_requests
→ id
fio_requests
timestamp
transactions
→ timestamp
fio_requests
payer_account
handles
→ account
fio_requests
payee_account
handles
→ account
fio_requests
payee_handle
fio_requests
→ payee_handle
fio_requests
payer_handle
fio_requests
→ payer_handle
fio_requests
content
fio_requests
→ content
fio_requests
payee_pub_key
fio_requests
→ payee_pub_key
fio_requests
payer_pub_key
fio_requests
→ payer_pub_key
fio_requests
status
fio_requests
→ status
fio_requests
transaction_id
transactions
→ id
Field | Source Data | |
---|---|---|
domain_activity | domain |
|
domain_activity | transaction_id |
|
domain_activity | timestamp |
|
domain_activity | account |
|
domain_activity | type |
|
pagination | limit | Supplied limit |
pagination | offset | Supplied offset |
pagination | total_records | Total number of transactions which meet the criteria |
pagination | next_offset | Offset to supply for next set of records: supplied offset + limit |
pagination | previous_offset | Offset to supply for |
Example
...
language | json |
---|
...
previous set of records: supplied offset - limit |
Example
Code Block | ||
---|---|---|
| ||
{ "domain_activity": [ { "domain": "bob", "payertransaction_handleid": "pawel@persond3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e", "contenttimestamp": "v6Kvk+CvQBGua4V1YpYjBekOzqA9LHWFfKXhfBnhewdGGm5PhPbwC8YQAIISpu/4mGDGR9JhCkyxLFH42Ei/EpSlUUsLD+3H5ckqQm9xFQc+lZdeOW9+6sMnePLsVTGvGF55Hqd1CE3xZaj6OjBz9A==", "payee_pub_key": "FIO8h1Aan6DZJsFjH91BGsQfNt2FsYbVyKeXFETNvYtTW9vaU81ay", "payer_pub_key": "FIO55BB3WmX7F1VDX7s8LjevJrU8g9G9ptpAmoZu7szYYBw19EZW4"2020-03-13T19:52:08", "statusaccount": "requested1hpxnziaw2ec", "transaction_idtype": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6eregister" } ], "pagination": { "limit": 100, "offset": 0, "total_records": 1, "next_offset": "", "previous_offset": "" } } |
/get_
...
handle_
...
activity
Returns fiohandle_data activity information.
Request
Parameter | Description | ||||||
---|---|---|---|---|---|---|---|
time_start |
timestamp of associated transaction | ||||||
time_end |
timestamp of associated transaction |
handle |
|
Handle name |
type |
|
Type |
owner_account |
|
payer_account
Status | ||||
---|---|---|---|---|
|
status
Status | ||||
---|---|---|---|---|
|
Handle owner account | |||||||
limit |
| ||||||
offset |
|
Query
Return records from fiohandle_dataactivity
which match all request parameters.
timestamp
requires join on transactions
payee_account
and payerowner_account
requires join on handles
...
alphabetical:
timestamp
ASC
Response
Group | Field |
---|
Source Data
fio_data
request_id
fio_data
→ _requestid
fio_data
timestamp
transactions
→ timestamp
fio_data
payer_account
handles
→ account
fio_data
payee_account
handles
→ account
fio_data
payee_handle
fio_data
→ payee_handle
fio_data
payer_handle
fio_data
→ payer_handle
fio_data
content
fio_data
→ content
fio_data
payee_pub_key
fio_data
→ payee_pub_key
fio_data
payer_pub_key
fio_data
→ payer_pub_key
fio_data
status
fio_data
→ status
fio_data
transaction_id
transactions
→ id
Source Data | ||
---|---|---|
handle_activity | domain |
|
handle_activity | transaction_id |
|
handle_activity | timestamp |
|
handle_activity | account |
|
handle_activity | type |
|
pagination | limit | Supplied limit |
pagination | offset | Supplied offset |
pagination | total_records | Total number of transactions which meet the criteria |
pagination | next_offset | Offset to supply for next set of records: supplied offset + limit |
pagination | previous_offset | Offset to supply for |
Example
...
language | json |
---|
...
previous set of records: supplied offset - limit |
Example
Code Block | ||
---|---|---|
| ||
{ "handle_activity": [ { "handle": "pawel@fiotestnetturandb@opera", "payertransaction_handleid": "pawel@persond3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6e", "contenttimestamp": "v6Kvk+CvQBGua4V1YpYjBekOzqA9LHWFfKXhfBnhewdGGm5PhPbwC8YQAIISpu/4mGDGR9JhCkyxLFH42Ei/EpSlUUsLD+3H5ckqQm9xFQc+lZdeOW9+6sMnePLsVTGvGF55Hqd1CE3xZaj6OjBz9A==", "payee_pub_key": "FIO8h1Aan6DZJsFjH91BGsQfNt2FsYbVyKeXFETNvYtTW9vaU81ay", "payer_pub_key": "FIO55BB3WmX7F1VDX7s8LjevJrU8g9G9ptpAmoZu7szYYBw19EZW4"2024-05-03T17:00:02.500", "statusaccount": "sent_to_blockchain1hpxnziaw2ec", "transaction_idtype": "d3dcd291eb7caadab12f2b9bcacdc5df6b8a5c1455072d9454a3b43956677b6eregister" } ], "pagination": { "limit": 100, "offset": 0, "total_records": 1, "next_offset": "", "previous_offset": "" } } |