I have set up a Moralis Stream to listen to all ERC721 transfers using following standard ABI:
{
anonymous: false,
inputs: [
{ indexed: true, name: "from", type: "address" },
{ indexed: true, name: "to", type: "address" },
{ indexed: true, name: "tokenId", type: "uint256" },
],
name: "Transfer",
type: "event",
};
I am trying to filter the stream by transfers from the null address only (mints). I am using a statement like this:
{
topic0: "Transfer(address,address,uint256)",
filter: {
eq: ["from", "0x0000000000000000000000000000000000000000"],
},
},
However, this kills my stream (nothing propagates at all). I have tried a few things:
- Using the longer variant of the null address from raw topic data (
0x0000000000000000000000000000000000000000000000000000000000000000
) - Using the
sender
keyword as defined in the burn/mints example.
However, neither result in a live stream that actually propagates events. My current workaround is to just listen for all transfers and then filter in the webhook listener code, but this is wasteful and results in being significantly overcharged for records.
Any help here would be much appreciated.