Docs
Supported ChainsImmutableJSON-RPC APISmart Contract Methods

eth_newFilter - Immutable RPC Method

Create event log filter on Immutable. Essential for monitoring events for Web3 gaming (Gods Unchained, RavenQuest), gaming NFTs with enforced royalties, and cross-chain game assets.

Creates a filter object on Immutable to notify when state changes (logs).

Use Cases

  • Event monitoring - Subscribe to contract events
  • Real-time updates - Track events for Web3 gaming (Gods Unchained, RavenQuest), gaming NFTs with enforced royalties, and cross-chain game assets
  • Indexing - Build event indexes incrementally

Request Parameters

Request
fromBlockQUANTITY|TAG

Starting block

toBlockQUANTITY|TAG

Ending block

addressDATA|Array

Contract address(es)

topicsArray

Topic filters

Response Body

Response
resultQUANTITY

Filter ID

Code Examples

Bash
curl -X POST https://api-immutable-zkevm-mainnet.n.dwellir.com/YOUR_API_KEY \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_newFilter",
    "params": [{
      "fromBlock": "latest",
      "address": "0x3A0C2Ba54D6CBd3121f01b96DFd20e99D1696c9D"
    }],
    "id": 1
  }'
JavaScript
import { JsonRpcProvider } from 'ethers';

const provider = new JsonRpcProvider('https://api-immutable-zkevm-mainnet.n.dwellir.com/YOUR_API_KEY');

// Create filter
const filterId = await provider.send('eth_newFilter', [{
  fromBlock: 'latest',
  address: '0x3A0C2Ba54D6CBd3121f01b96DFd20e99D1696c9D',
  topics: ['0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef']
}]);

// Poll for changes
const changes = await provider.send('eth_getFilterChanges', [filterId]);
console.log('New events:', changes);

// Cleanup
await provider.send('eth_uninstallFilter', [filterId]);

On this page