{% hint style="warning" %} Collections is an analytics API (not real-time, though it may look like one).
Not all filters and sortings are working now. Data is provided only for the past 7 days. {% endhint %}
If you want to apply some aggregators like COUNT, MAX, MIN, SUM, AVERAGE on some blockchain data.
const aggregationFunctionsResults = result =
(await client.net.aggregate_collection({
collection: 'accounts',
fields: [
{
field: "balance",
fn: "MIN"
},
{
field: "balance",
fn: "MAX"
}, {
field: "balance",
fn: "AVERAGE"
}, {
field: "balance",
fn: "SUM"
},
{
field: "balance",
fn: "COUNT"
}
]
})).values;
console.log("Minimum account balance: " + aggregationFunctionsResults[0]);
console.log("Maximum account balance: " + aggregationFunctionsResults[1]);
console.log("Average balance: " + aggregationFunctionsResults[2]);
console.log("Total balance of all accounts: " + aggregationFunctionsResults[3]);
console.log("Number of accounts: " + aggregationFunctionsResults[4] + '\n');
There are a few collections with blockchain data:
- accounts: blockchain account data;
- transactions: transactions related to accounts;
- messages: input and output messages related to transactions;
- blocks: blockchain blocks.
- block_signatures : validator block signatures
Sample: https://github.com/everx-labs/sdk-samples/tree/master/core-examples/node-js/query