Skip to main content
POST
/
api
/
v1
/
customer
/
{chain}
/
logs
/
filter
curl --request POST \
  --url https://api-gateway.sonarx.com/api/v1/customer/{chain}/logs/filter \
  --header 'Content-Type: application/json' \
  --header 'apikey: <api-key>' \
  --data '
{
  "from_block": 81901160,
  "to_block": 81901165
}
'
{
  "offset": 0,
  "limit": 10,
  "result": [
    {
      "block_number": 81901160,
      "timestamp": 1768922292,
      "datetime": "2026-01-20T15:18:12",
      "transaction_hash": "0x00dcc066aad65ae4f10c0fc4ec1fac5d3693c12c01d98a9f6a87448be9b26200",
      "transaction_index": 66,
      "transaction_from": "0xef56899ed9b6b4f3b8d0ea4eb7cec948705c8d2c",
      "transaction_to": "0x3c499c542cef5e3811e1192ce70d8cc03d5c3359",
      "log_index": 366,
      "address": "0x3c499c542cef5e3811e1192ce70d8cc03d5c3359",
      "data": "0x000000000000000000000000000000000000000000000000000000000050df20",
      "topics": [
        "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
        "0x000000000000000000000000ef56899ed9b6b4f3b8d0ea4eb7cec948705c8d2c",
        "0x0000000000000000000000003cb9cc9869a65db10f47fd40fb977331cc7e3c9b"
      ],
      "topic1": "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
      "topic2": "0x000000000000000000000000ef56899ed9b6b4f3b8d0ea4eb7cec948705c8d2c",
      "topic3": "0x0000000000000000000000003cb9cc9869a65db10f47fd40fb977331cc7e3c9b",
      "topic4": null,
      "version": 0
    }
  ],
  "count": 1
}
Range Filter Constraint: Use either block range (from_block/to_block) OR datetime range (from_datetime/to_datetime), but not both simultaneously. These filter pairs are mutually exclusive.
Block Range Limit: Block range queries cannot exceed 100 blocks.

Authorizations

apikey
string
header
required

API key for authentication

Path Parameters

chain
enum<string>
required

The blockchain network to query

Available options:
polygon
Example:

"polygon"

Query Parameters

limit
integer
default:10

Maximum number of results (1-50)

Required range: 1 <= x <= 50
offset
integer
default:0

Number of results to skip for pagination

Required range: x >= 0

Body

application/json

Request body for filtering logs. Validation rules: (1) Must provide either block range OR datetime range, not both and not neither. (2) When using block range, both from_block AND to_block are required. (3) When using datetime range, both from_datetime AND to_datetime are required. (4) to_block must be >= from_block. (5) to_datetime must be >= from_datetime. (6) Block range cannot exceed 100 blocks.

from_block
integer

Start block number. Required if using block range.

Required range: x >= 0
to_block
integer

End block number. Required if using block range. Must be >= from_block and within 100 blocks.

Required range: x >= 0
from_datetime
string<date-time>

Start datetime (ISO 8601, timezone required, e.g., 2024-01-15T10:30:00Z or 2024-01-15T10:30:00+00:00). Required if using datetime range.

to_datetime
string<date-time>

End datetime (ISO 8601, timezone required, e.g., 2024-01-15T10:30:00Z or 2024-01-15T10:30:00+00:00). Required if using datetime range. Must be >= from_datetime.

address

Contract address(es) to filter by (optional, max 10 addresses)

event_sig_hashes

Event signature hash(es) to filter by (optional, max 10). This filters against the first topic (topic1) in each log, which contains the keccak256 hash of the event signature. For example, the ERC-20 Transfer event signature hash is 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef.

Response

Filtered logs

offset
integer
limit
integer
result
object[]
count
integer