Skip to main content

Get Daily Snapshots Of Certain Creator Coin

In this tutorial, you will learn how to get all the daily snapshots of certain Creator Coin by calling the Moxie Protocol Subgraph API.

Pre-requisites

Install dependencies graphql and graphql-request to your project :
npm install graphql graphql-request 

Step 1: Add The API Query To Your Code

To get all the daily snapshots of certain Creator Coin, you can use the following query:

query MyQuery($fanTokenAddress: ID) {
subjectTokens(where: { id: $fanTokenAddress }) {
dailySnapshots {
dailyPriceChange
dailyProtocolFeeChange
dailyUniqueHoldersChange
dailyVolumeChange
endPrice
endProtocolFee
endTimestamp
endUniqueHolders
endVolume
reserve
startPrice
startProtocolFee
startUniqueHolders
startVolume
totalSupply
}
}
}
With this GraphQL query, you can add it to your source code and call the API with the graphql-request library:
index.ts
import { gql, GraphQLClient } from "graphql-request";


const graphQLClient = new GraphQLClient(
"https://api.studio.thegraph.com/query/23537/moxie_protocol_stats_mainnet/version/latest"
);

const query = gql`
query MyQuery($fanTokenAddress: ID) {
subjectTokens(where: { id: $fanTokenAddress }) {
dailySnapshots {
dailyPriceChange
dailyProtocolFeeChange
dailyUniqueHoldersChange
dailyVolumeChange
endPrice
endProtocolFee
endTimestamp
endUniqueHolders
endVolume
reserve
startPrice
startProtocolFee
startUniqueHolders
startVolume
totalSupply
}
}
}
`;

const variable = {
"fanTokenAddress": "0x0045214aa342f75ff65c0208002302b57ddb9c22"
}


try {
const data = await graphQLClient.request(query, variable);
console.log(data);
} catch (e) {
throw new Error(e);
}

Step 2: Execute Your Code

Once you have your code ready, you can execute it by running the following command:

ts-node index.ts

If it runs successfully, you should see the data returned in the terminal:

{
"data": {
"subjectTokens": [
{
"dailySnapshots": [
{
"dailyPriceChange": "0.01536057923231617336512979146637123",
"dailyProtocolFeeChange": "2000000000000",
"dailyUniqueHoldersChange": "4",
"dailyVolumeChange": "10092000000000000",
"endPrice": "0.01536057923231617336512979146637123",
"endProtocolFee": "2000000000000",
"endTimestamp": "1721260800",
"endUniqueHolders": "4",
"endVolume": "10092000000000000",
"reserve": "9892000000000000",
"startPrice": "0",
"startProtocolFee": "0",
"startUniqueHolders": "0",
"startVolume": "0",
"totalSupply": "1013020342330530893"
}
]
}
]
}
}

Congrats! 🥳🎉 You've just fetched the daily snapshots of a certain Creator Coin!

Developer Support

If you have any questions or need help with other use cases, feel free to join the Moxie Official Warpcast channel and ask your questions there.

Our team is always ready to help you with any questions you may have.