trace_filter
Polygon / https://triport.io/polygon
Minimum tier: Free
Last updated:
trace_filter scans a contiguous range of Polygon blocks and returns every
trace (internal call, create, or suicide frame) whose sender and/or
recipient match the supplied filter. Unlike trace_block —
which is keyed to a single block — or trace_transaction
— which is keyed to one transaction hash — trace_filter lets you sweep a window
of history and narrow it down by address. It is the right tool for building an
account's incoming/outgoing internal-transfer history, or for indexing all
activity that touched a particular contract.
This is the Parity-style tracer. Note that Polygon's Bor client can emit a
slightly different frame shape than vanilla Geth-Parity (for example call vs
delegatecall mapping), so an indexer should be tolerant of both. If you also
consume the Geth-style debug_traceBlockByNumber,
its output schema differs and your decoder must handle each shape separately.
Because a single block range can produce a very large number of traces, results
are paginated with the after (offset) and count (limit) fields and the
payload grows roughly linearly with the block range. Keep ranges modest and
page through large result sets rather than requesting a huge window in one call.
This method requires the Pro tier. Calls authenticated with a lower-tier key
are rejected with -32002 tier_insufficient.
Parameters
This method takes no parameters.
Returns
| Field | Type |
|---|---|
| result | object |
Examples
curl https://triport.io/polygon \
-X POST -H 'Content-Type: application/json' \
-H 'Authorization: Bearer <api-key>' \
-d '{"jsonrpc":"2.0","id":1,"method":"trace_filter","params":[]}'const res = await fetch("https://triport.io/polygon", {
method: "POST",
headers: { "Content-Type": "application/json", Authorization: "Bearer <api-key>" },
body: JSON.stringify({
"jsonrpc": "2.0",
"id": 1,
"method": "trace_filter",
"params": []
}),
});
const data = await res.json();import requests
resp = requests.post(
"https://triport.io/polygon",
headers={"Authorization": "Bearer <api-key>"},
json={"jsonrpc":"2.0","id":1,"method":"trace_filter","params":[]},
)
print(resp.json())Usage
- Transport: HTTP (JSON-RPC).
- Chain: Polygon.
- Clusters: mainnet.
- Credit cost: 5 per call.
FAQ
- What does trace_filter do?
- ⚠️ НЕ ОТДАЁТСЯ (2026-07-26). Метод убран из каталога: он требует индекса по блокам и адресам, которого у нас нет, а собрать его из debug_ (как остальные trace_) нельзя — фильтрация по диапазону блоков означала бы трейсить каждый блок диапазона целиком. Внешний канал, через который метод отдавался раньше (the RPC provider premium), закрыл trace_*. Если понадобится — это отдельная задача с построением индекса.
- How many credits does trace_filter cost?
- trace_filter costs 5 credit(s) per call on Triport by default.
- Is trace_filter available over WebSocket?
- trace_filter is an HTTP JSON-RPC method.