Data Science on NFT Projects

Dear support,
I have watched the content of the Moralis YT channel and I found a video that seems interesting:

I can replicate the procedure displayed on the video, however, for this particular example (CryptoPunks), the contract has an event called “punksBought” which contains the value or price of the punk, and it’s pretty easy to track.

event PunkBought(uint indexed punkIndex, uint value, address indexed fromAddress, address indexed toAddress);

I have checked many other NFT projects and the price info is not contained within the event, but in another place in the contract code. Example:
Bored Ape Yacht Club

event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);
event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);
event ApprovalForAll(address indexed owner, address indexed operator, bool approved);
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

As you can see, no info about the price or value is provided at the events.

How can I track the price of the NFTs projects with Moralis when the price is not contained at the events?


That is a good question. If it isn’t stored in the contract’s event, it might be pretty difficult. For example, say you buy a bored ape from someone selling on openSea. 3 events occur. A Transfer, an approval, and an OrdersMatched event from the opensea contract facilitating. The amount paid is visible in the OrdersMatched event, but the contract address is not. Therefore, you would need to track Transfer events from BoredApe and Ordersmatched from the opensea contract and join them on transaction hash to get all the data I believe.
Unfortunately, moralis will not allow you to sync historical events for any contract with > 500k records, so getting OrdersMatched historical events is impossible through moralis. Probably better off trying to use Etherscan api or opensea api, but I haven’t yet used either myself so not sure what the best course of action is.
Here is an example event log of a bored ape purchase to verify what im talking about is true

There is possible now to sync more than 500k events with a nitro server and only from code for now with limit parameter

That’s unfortunate.
I have reviewed some of the popular NFT projects and I have not found another smart contract that contains the price at the events.
So, I guess you can’t do much, in regards to data science, without over-complicating the whole process to extract the info

I have a similar if not the same issue.
When I follow the tutorial step by step, i don’t get any rows synced to my dashboard.
Any help? This tool, if it actually works, could be very useful. But so far, I haven’t been able to use any of it successfully.

Screenshot 2022-04-21 at 12.24.59


Is there some part where you got some error?
I can not help only with this information.