Global protocol stats
Full code example
This query returns to you the global protocol stats of key metrics.
API Design
query GlobalProtocolStats {
globalProtocolStats(request: null) {
totalProfiles
totalBurntProfiles
totalPosts
totalMirrors
totalComments
totalCollects
totalFollows
totalRevenue {
asset {
name
symbol
decimals
address
}
value
}
}
}
{
"data": {
"globalProtocolStats": {
"totalProfiles": 291,
"totalBurntProfiles": 10,
"totalPosts": 186,
"totalMirrors": 23,
"totalComments": 59,
"totalCollects": 19,
"totalFollows": 85,
"totalRevenue": [
{
"asset": {
"name": "Wrapped Matic",
"symbol": "WMATIC",
"decimals": 18,
"address": "0x9c3C9283D3e44854697Cd22D3Faa240Cfb032889"
},
"value": "6.94648"
}
]
}
}
}
type Query {
globalProtocolStats(request: GlobalProtocolStatsRequest): GlobalProtocolStats!
}
input GlobalProtocolStatsRequest {
# Unix time from timestamp - if not supplied it will go from 0 timestamp
fromTimestamp: UnixTimestamp
# Unix time to timestamp - if not supplied it go to the present timestamp
toTimestamp: UnixTimestamp
# The App Id
sources: [Sources!]
}
type GlobalProtocolStats {
totalProfiles: Int!
totalBurntProfiles: Int!
totalPosts: Int!
totalMirrors: Int!
totalComments: Int!
totalCollects: Int!
totalFollows: Int!
totalRevenue: [Erc20Amount!]!
}
Request
Let's look at the query options we can use here to get for different things.
{
// if this is not supplied it will not have a from cap
// it is a unix timestamp
"fromTimestamp": 1642934933,
// if this is not supplied it will not have a to cap
// it is a unix timestamp
"toTimestamp": 1648032533
// also dont forget you can filter these stats on sources
// this will adjust the posts, mirrors and comments stats
// "sources": ["lost-place-dapp"]
}
Using LensClient SDK
const result = await lensClient.stats.fetch({
fromTimestamp: 1642934933,
toTimestamp: 1648032533,
sources: ['someAppId']
});
Updated about 1 year ago