Skip to main content
Unlisted page
This page is unlisted. Search engines will not index it, and only users having a direct link can access it.

RNK RPC Methods

Overview

This page documents Reactive-specific JSON-RPC methods available in Reactive Network's Geth version. Use them to query active event filters, individual filter details, and block-level reactive transaction sequences.

rnk_getFilters

Returns all active event filters currently registered on Reactive Network, along with the current filter version.

Parameters

This method does not require any input parameters.

cURL

curl --location 'https://lasna-omni-rpc.rnk.dev/' \
--header 'Content-Type: application/json' \
--data '{
"jsonrpc": "2.0",
"method": "rnk_getFilters",
"params": [],
"id": 1
}' | jq

Response

Returns an object with the following fields:

  • version (uint32): The current version of the filter set. Incremented whenever filters are added or removed.
  • topicFilters (array[object]): A list of active topic filters. Each filter object contains:
    • Uid (string): The unique identifier of the filter, generated by the contract.
    • ChainId (uint64): The origin chain ID. 0 matches any chain.
    • Contract (string | null): The address of the origin contract being monitored. Null address matches any contract.
    • Topics (array[string | null]): An array of up to 4 log topics (topic_0 through topic_3) used for event filtering. Null entries match any topic.
    • Configs (array[object]): An array of subscription configurations. Each config contains:
      • Contract (string): The Reactive contract address subscribed to this filter.
      • RvmId (string): The address of the associated RVM instance.
      • Active (bool): Whether the subscription is currently active.
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"version": 42,
"topicFilters": [
{
"Uid": "0x6a13fb25641a7b730b319ae22f42876a",
"ChainId": 5318007,
"Contract": "0x70585aba609bf77a67b91b68298f34237fde1b90",
"Topics": [
"0xca6e822df923f741dfe968d15d80a18abd25bd1e748bcb9ad81fea5bbb7386af",
null,
null,
null
],
"Configs": [
{
"Contract": "0x70585aba609bf77a67b91b68298f34237fde1b90",
"RvmId": "0x0000000000000000000000000000000000000000",
"Active": true
}
]
}
]
}
}

rnk_getFilterById

Returns details of a specific event filter by its unique identifier.

Parameters

  1. filterId: string — The unique identifier of the filter to retrieve.

cURL

curl --location 'https://lasna-omni-rpc.rnk.dev/' \
--header 'Content-Type: application/json' \
--data '{
"jsonrpc": "2.0",
"method": "rnk_getFilterById",
"params": [
"0xbce1695aafe72c3929c5dacf2a4c1f8d"
],
"id": 1
}' | jq

Response

Returns a filter object with the following fields:

  • Uid (string): The unique identifier of the filter, generated by the contract.
  • ChainId (uint64): The origin chain ID. 0 matches any chain.
  • Contract (string | null): The address of the origin contract being monitored. Null address matches any contract.
  • Topics (array[string | null]): An array of up to 4 log topics (topic_0 through topic_3) used for event filtering. Null entries match any topic.
  • Configs (array[object]): An array of subscription configurations. Each config contains:
    • Contract (string): The Reactive contract address subscribed to this filter.
    • RvmId (string): The address of the associated RVM instance.
    • Active (bool): Whether the subscription is currently active.
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"Uid": "0xbce1695aafe72c3929c5dacf2a4c1f8d",
"ChainId": 11155111,
"Contract": "0x3feb01b66bd77e8105e2c97e7f4eebb44ad8b83f",
"Topics": [
"0x552b2dd798eedf0c450199b5a7c35ff9f2955c113876b1afbe87060335b31653",
null,
null,
null
],
"Configs": [
{
"Contract": "0xff18d4a21c9f5780f753432aa45f0c43b9c1b462",
"RvmId": "0x941b727ad8acf020558ce58cd7cb65b48b958db1",
"Active": false
}
]
}
}

rnk_getBlockSequences

Returns the reactive transaction sequences processed in a given Reactive Network block. Each sequence represents a batch of reactive transactions triggered by origin-chain events.

Parameters

  1. blockNumber: string — The hex-encoded block number for which to retrieve reactive transaction sequences.

cURL

curl --location 'https://lasna-omni-rpc.rnk.dev/' \
--header 'Content-Type: application/json' \
--data '{
"jsonrpc": "2.0",
"method": "rnk_getBlockSequences",
"params": [
"0x331E09"
],
"id": 1
}' | jq

Response

Returns an object with the following fields:

  • StateRoot (string): The Merkle state root after processing the sequences.
  • FromSeq (uint64): The starting sequence number in this block.
  • ToSeq (uint64): The ending sequence number in this block.
  • FiltersVersion (uint32): The filter set version used when processing this block.
  • GasUsed (uint32): The total gas consumed by reactive transactions in this block.
  • ReactiveTxCount (uint16): The number of reactive transactions executed in this block.
  • Sequences (array): The RLP-encoded reactive transaction sequences.
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"StateRoot": "0xae228178ffd763ea8f19a796a938ba51ebe32f913ff0c59ce253cb830069d0c1",
"FromSeq": 100473548,
"ToSeq": 100473550,
"FiltersVersion": 716,
"GasUsed": 22715,
"ReactiveTxCount": 0,
"Sequences": []
}
}