Open vintrocode opened 2 years ago
@vintrocode thanks for the feedback! If I'm understanding your question correctly, here's how it works...
The nft-analyst-starter-pack generates a transfers.csv file based on event logs. This means that transfers are associated with the events emitted by whichever contract address you provide. The "to_address" and "from_address" are associated with the NFT transfer log itself, irrespective of which address triggered the transaction or the contract it initially interacts with.
In your example, transfers from 0x00... (i.e., mints) will show up when running the script on the NFT contract address. The minting module contract is not emitting any transfer logs, so they won't show up there.
For example, this transaction was sent by 0x1d0 to the minting module contract at 0xe20. However, the NFT contract at 0xFd0 is where the mint actually happened, with 0x000... as the "from_address" and 0x1d0 as the "to_address".
I suspect that the data you are interested in analyzing will come from the NFT contract, which means you can use the 0xFd09eb152263488Dc5E4654D9F91F0aEbeE45423 address on this tool to fetch all the data - including mints.
A NFT contract I was trying to pull data for was mysteriously missing mint transfers from the 0 addr. It turned out that the mints were triggered from a separate minting module contract. This minting module contract called the mint function in the actual NFT contract after a series of checks.
The actual NFT contract had transactions only for transfers that happened after minting. This was consistent with the data I pulled and what the transactions tab was showing on Etherscan. However, the events tab on the token showed all the transfers from the 0 addr and I was able to query those using checkthechain.
The minting module contract had transactions for the mints but the
nft-analyst-starter-pack
was unable to detect erc721 transfers (see traceback at the bottom).Here's the minting module and the nft contract I'm referring to.
Questions: