Event logs
getLogsEvent logs on one chain, filtered by address and/or topics over a block range. Tier 2 emits each log as { contract, event, args }, dropping logsBloom and per-log block duplication; an undecodable one stays raw as { address, topics, data, _event_unknown }. Check tier_degraded before reading event or args.
With both bounds concrete block NUMBERS (toBlock may be omitted/"latest") the range is walked in ascending chunks, stopping once the display cap fills: the reply says range_fully_scanned: false, carries a cursor, and note says why. more_available means more logs were seen than shown; full_count appears only when the whole range was scanned. Any other bound is ONE unbounded eth_getLogs: no chunking, no cursor, liable to tier 0.
Sui: Move events over a CHECKPOINT range. fromBlock is required; address is the emitting package[::module]; eventType and sender narrow it; topics is refused, not ignored. Same body; rows add checkpoint/digest/index.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| chain | Yes | Chain slug as in rpc.ankr.com/<chain> — any chain Ankr serves (see listChains) | |
| sender | No | Sui: the emitting transaction's sender, 0x + 64 hex | |
| topics | No | Topic filters (0x + 64 hex, or null to wildcard); topics[0] is the event signature hash. Max 4 slots. | |
| address | No | Emitting contract; Sui: package[::module] | |
| maxLogs | No | Max logs to DISPLAY (default 50, max 1000). The scan stops once this is filled, so it also bounds how much is fetched upstream. | |
| toBlock | No | To block: decimal, 0x-hex, or tag (default latest) | |
| eventType | No | Sui: Move event type 0xpkg::module::Name | |
| fromBlock | No | From block: decimal, 0x-hex, or tag (default latest) |