So I am using two streams right now, one to monitor the ListingRemoved events and the other stream to monitor ListingAdded events. The issue is that the stream that is supposed to only listen to ListingRemoved events is also listening to ListingAdded events and the other stream is not sending any events. I copied the ABI into both streams and selected the appropriate topics to listen to. Both streams are using the same webhook url. What I want is to have each stream to send the appropriate events one for the ListingRemoved events and the other ListingAdded events for a given smart contract
ListingAdded Stream Settings
{
"id": "901c459c-8ed6-4e0b-b461-a6b2e6d7d169",
"webhookUrl": "https://eaa8-2001-818-db47-c300-2a41-f979-2e2c-78c2.ngrok.io/webhooks/moralis_marketplace",
"description": "Demo stream",
"tag": "ListingAdded",
"demo": false,
"topic0": [
"ListingAdded(uint256,address,address,(uint256,address,address,uint256,uint256,uint256,uint256,address,uint256,uint256,uint8,uint8))"
],
"allAddresses": false,
"includeNativeTxs": false,
"includeContractLogs": true,
"includeInternalTxs": true,
"getNativeBalances": [],
"triggers": [],
"abi": [
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "timeBuffer",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "bidBufferBps",
"type": "uint256"
}
],
"name": "AuctionBuffersUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "listingId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "closer",
"type": "address"
},
{
"indexed": true,
"internalType": "bool",
"name": "cancelled",
"type": "bool"
},
{
"indexed": false,
"internalType": "address",
"name": "auctionCreator",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "winningBidder",
"type": "address"
}
],
"name": "AuctionClosed",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "listingId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "assetContract",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "lister",
"type": "address"
},
{
"components": [
{
"internalType": "uint256",
"name": "listingId",
"type": "uint256"
},
{
"internalType": "address",
"name": "tokenOwner",
"type": "address"
},
{
"internalType": "address",
"name": "assetContract",
"type": "address"
},
{
"internalType": "uint256",
"name": "tokenId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "startTime",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "endTime",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "quantity",
"type": "uint256"
},
{
"internalType": "address",
"name": "currency",
"type": "address"
},
{
"internalType": "uint256",
"name": "reservePricePerToken",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "buyoutPricePerToken",
"type": "uint256"
},
{
"internalType": "enum IMarketplace.TokenType",
"name": "tokenType",
"type": "uint8"
},
{
"internalType": "enum IMarketplace.ListingType",
"name": "listingType",
"type": "uint8"
}
],
"indexed": false,
"internalType": "struct IMarketplace.Listing",
"name": "listing",
"type": "tuple"
}
],
"name": "ListingAdded",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "listingId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "listingCreator",
"type": "address"
}
],
"name": "ListingRemoved",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "listingId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "listingCreator",
"type": "address"
}
],
"name": "ListingUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "listingId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "offeror",
"type": "address"
},
{
"indexed": true,
"internalType": "enum IMarketplace.ListingType",
"name": "listingType",
"type": "uint8"
},
{
"indexed": false,
"internalType": "uint256",
"name": "quantityWanted",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "totalOfferAmount",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "currency",
"type": "address"
}
],
"name": "NewOffer",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "listingId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "assetContract",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "lister",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "buyer",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "quantityBought",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "totalPricePaid",
"type": "uint256"
}
],
"name": "NewSale",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "platformFeeRecipient",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "platformFeeBps",
"type": "uint256"
}
],
"name": "PlatformFeeInfoUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "previousAdminRole",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "newAdminRole",
"type": "bytes32"
}
],
"name": "RoleAdminChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "RoleGranted",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "RoleRevoked",
"type": "event"
}
],
"advancedOptions": null,
"chainIds": [
"0x5"
],
"status": "active",
"statusMessage": "Stream is active"
}
ListingRemoved Stream Settings
{
"id": "d2c119cc-32a0-48e8-9dab-5b5b57b9b116",
"webhookUrl": "https://eaa8-2001-818-db47-c300-2a41-f979-2e2c-78c2.ngrok.io/webhooks/moralis_marketplace",
"description": "Demo stream marketplace",
"tag": "ListingRemoved",
"demo": false,
"topic0": [
"ListingRemoved(uint256,address)"
],
"allAddresses": false,
"includeNativeTxs": true,
"includeContractLogs": true,
"includeInternalTxs": true,
"getNativeBalances": [],
"triggers": [],
"abi": [
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "timeBuffer",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "bidBufferBps",
"type": "uint256"
}
],
"name": "AuctionBuffersUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "listingId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "closer",
"type": "address"
},
{
"indexed": true,
"internalType": "bool",
"name": "cancelled",
"type": "bool"
},
{
"indexed": false,
"internalType": "address",
"name": "auctionCreator",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "winningBidder",
"type": "address"
}
],
"name": "AuctionClosed",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "listingId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "assetContract",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "lister",
"type": "address"
},
{
"components": [
{
"internalType": "uint256",
"name": "listingId",
"type": "uint256"
},
{
"internalType": "address",
"name": "tokenOwner",
"type": "address"
},
{
"internalType": "address",
"name": "assetContract",
"type": "address"
},
{
"internalType": "uint256",
"name": "tokenId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "startTime",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "endTime",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "quantity",
"type": "uint256"
},
{
"internalType": "address",
"name": "currency",
"type": "address"
},
{
"internalType": "uint256",
"name": "reservePricePerToken",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "buyoutPricePerToken",
"type": "uint256"
},
{
"internalType": "enum IMarketplace.TokenType",
"name": "tokenType",
"type": "uint8"
},
{
"internalType": "enum IMarketplace.ListingType",
"name": "listingType",
"type": "uint8"
}
],
"indexed": false,
"internalType": "struct IMarketplace.Listing",
"name": "listing",
"type": "tuple"
}
],
"name": "ListingAdded",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "listingId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "listingCreator",
"type": "address"
}
],
"name": "ListingRemoved",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "listingId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "listingCreator",
"type": "address"
}
],
"name": "ListingUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "listingId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "offeror",
"type": "address"
},
{
"indexed": true,
"internalType": "enum IMarketplace.ListingType",
"name": "listingType",
"type": "uint8"
},
{
"indexed": false,
"internalType": "uint256",
"name": "quantityWanted",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "totalOfferAmount",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "currency",
"type": "address"
}
],
"name": "NewOffer",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "listingId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "assetContract",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "lister",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "buyer",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "quantityBought",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "totalPricePaid",
"type": "uint256"
}
],
"name": "NewSale",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "platformFeeRecipient",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "platformFeeBps",
"type": "uint256"
}
],
"name": "PlatformFeeInfoUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "previousAdminRole",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "newAdminRole",
"type": "bytes32"
}
],
"name": "RoleAdminChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "RoleGranted",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "RoleRevoked",
"type": "event"
}
],
"advancedOptions": null,
"chainIds": [
"0x5"
],
"status": "active",
"statusMessage": "Stream is active"
}