Skip to content
ReferenceTestnet: yesMainnet: Not availableSoftware: Core bad4a06ea · protocol pqwerai-v8-testnet/1Updated

Operator interfaces

Not for public endpoints or documentation tooling

These methods are registered by PQWERAI Core but are either privileged (mining, validator voting, peer diagnostics), need keys the node never holds, or are deliberately disabled. They are documented so operators can recognise them. The API playground never executes them, and a public RPC proxy should not forward them.

Method Class Why it is restricted
eth_getFilterLogs Disabled on PQWERAI Core Always returns an error on PQWERAI Core: a stored filter would bypass the eth_getLogs block-range bound. Use eth_getLogs or eth_getFilterChanges.
eth_getWork Operator · mining Legacy Ethash external-miner interface. GhostRider sealing runs inside the node through the pinned helper; operator use only, never through a public proxy.
eth_resend Unsupported (node-held keys) Requires an account unlocked inside the node. PQWERAI Core exposes no personal_* namespace and loads no keystore, so these return an error; sign in the client and use eth_sendRawTransaction.
eth_sendTransaction Unsupported (node-held keys) Requires an account unlocked inside the node. PQWERAI Core exposes no personal_* namespace and loads no keystore, so these return an error; sign in the client and use eth_sendRawTransaction.
eth_sign Unsupported (node-held keys) Requires an account unlocked inside the node. PQWERAI Core exposes no personal_* namespace and loads no keystore, so these return an error; sign in the client and use eth_sendRawTransaction.
eth_signTransaction Unsupported (node-held keys) Requires an account unlocked inside the node. PQWERAI Core exposes no personal_* namespace and loads no keystore, so these return an error; sign in the client and use eth_sendRawTransaction.
eth_submitHashrate Operator · mining Legacy Ethash external-miner interface. GhostRider sealing runs inside the node through the pinned helper; operator use only, never through a public proxy.
eth_submitWork Operator · mining Legacy Ethash external-miner interface. GhostRider sealing runs inside the node through the pinned helper; operator use only, never through a public proxy.
g4_context Operator · validator helper Read-only helpers used by Smartnode signers to obtain the checkpoint vote context. Not needed by applications.
g4_link Operator · validator helper Read-only helpers used by Smartnode signers to obtain the checkpoint vote context. Not needed by applications.
g4_submitVote Operator · validator action Accepts signature-verified Smartnode finality votes. Authenticated, replay-checked and rate-limited by the node. Never exposed through documentation tooling.
pqwerai_peerHealth Operator · diagnostics Peer manager diagnostics (peer IDs and subnets). Operators should not expose it through public endpoints.

Namespaces that are not served

Probed on the live node: every method of these namespaces returns -32601 method not found.

Namespace Result
admin_* not served (-32601)
clique_* not served (-32601)
debug_* not served (-32601)
engine_* not served (-32601)
ethash_* not served (-32601)
les_* not served (-32601)
miner_* not served (-32601)
personal_* not served (-32601)
trace_* not served (-32601)

eth_getFilterLogs

Disabled on PQWERAI Core (would bypass the eth_getLogs range bound).

Access Disabled on PQWERAI Core
Network private testnet 77240 (local node or approved endpoint); mainnet not available
Authentication none on loopback; bearer token when the node binds a non-loopback address; public proxies rate-limit per IP
Minimum software protocol pqwerai-v8-testnet/1
Verified source core/source/cmd/pqwerai-core/logs.go:52 at Core bad4a06ea; registered on live CoreGeth/linux-amd64/go1.26.8
Returns array of log objects

Behaviour on PQWERAI

Always returns an error on PQWERAI Core: a stored filter would bypass the eth_getLogs block-range bound. Use eth_getLogs or eth_getFilterChanges.

Parameters

# Name Type Required Description
0 id filterId yes filter identifier returned by eth_newFilter, eth_newBlockFilter or eth_newPendingTransactionFilter
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "eth_getFilterLogs",
  "params": [
    "0x1"
  ]
}
curl -s -H 'content-type: application/json' \
  -d '{"jsonrpc": "2.0", "id": 1, "method": "eth_getFilterLogs", "params": ["0x1"]}' \
  "$RPC"

Recorded 2026-11-07T18:41:00+00:00 at head 4325 on a disposable local testnet, chain 77240. Long arrays are truncated.

{
  "jsonrpc": "2.0",
  "id": 1,
  "error": {
    "code": -32000,
    "message": "eth_getFilterLogs is disabled; use eth_getLogs (bounded range) or eth_getFilterChanges"
  }
}

Errors and edge cases

  • -32602 invalid or missing parameter (e.g. missing value for required argument 0).
  • -32000 execution or validation error with a message from the node.

eth_getWork

Returns a work package for external miner. The work package consists of 3 strings: result[0] - 32 bytes hex encoded current block header pow-hash result[1] - 32 bytes hex encoded seed hash used for DAG result[2] - 32 bytes hex encoded boundary condition ("target"), 2^256/difficulty result[3] - hex encoded block number

Access Operator · mining
Network private testnet 77240 (local node or approved endpoint); mainnet not available
Authentication none on loopback; bearer token when the node binds a non-loopback address; public proxies rate-limit per IP
Minimum software protocol pqwerai-v8-testnet/1
Verified source core/source/consensus/ethash/api.go:42 at Core bad4a06ea; registered on live CoreGeth/linux-amd64/go1.26.8
Returns [headerHash, seedHash, target, blockNumber]

Behaviour on PQWERAI

Legacy Ethash external-miner interface. GhostRider sealing runs inside the node through the pinned helper; operator use only, never through a public proxy.

Parameters: none

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "eth_getWork",
  "params": []
}
curl -s -H 'content-type: application/json' \
  -d '{"jsonrpc": "2.0", "id": 1, "method": "eth_getWork", "params": []}' \
  "$RPC"

No live response is recorded for this method (state-changing, operator-only or no safe sample).

Errors and edge cases

  • -32602 invalid or missing parameter (e.g. missing value for required argument 0).
  • -32000 execution or validation error with a message from the node.
  • Recorded: [] → {"code": -32000, "message": "no mining work available yet"}

eth_resend

Accepts an existing transaction and a new gas price and limit. It will remove the given transaction from the pool and reinsert it with the new gas price and limit.

Access Unsupported (node-held keys)
Network private testnet 77240 (local node or approved endpoint); mainnet not available
Authentication none on loopback; bearer token when the node binds a non-loopback address; public proxies rate-limit per IP
Minimum software protocol pqwerai-v8-testnet/1
Verified source core/source/internal/ethapi/api.go:2089 at Core bad4a06ea; registered on live CoreGeth/linux-amd64/go1.26.8
Returns 32-byte hash

Behaviour on PQWERAI

Requires an account unlocked inside the node. PQWERAI Core exposes no personal_* namespace and loads no keystore, so these return an error; sign in the client and use eth_sendRawTransaction.

Parameters

# Name Type Required Description
0 sendArgs txObject yes transaction call object {from,to,gas,gasPrice
1 gasPrice quantity no 0x-prefixed hex integer
2 gasLimit *hexutil.Uint64 no *hexutil.Uint64
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "eth_resend",
  "params": [
    "<sendArgs>",
    "<gasPrice>",
    "<gasLimit>"
  ]
}
curl -s -H 'content-type: application/json' \
  -d '{"jsonrpc": "2.0", "id": 1, "method": "eth_resend", "params": ["<sendArgs>", "<gasPrice>", "<gasLimit>"]}' \
  "$RPC"

No live response is recorded for this method (state-changing, operator-only or no safe sample).

Errors and edge cases

  • -32602 invalid or missing parameter (e.g. missing value for required argument 0).
  • -32000 execution or validation error with a message from the node.

eth_sendTransaction

Creates a transaction for the given argument, sign it and submit it to the transaction pool.

Access Unsupported (node-held keys)
Network private testnet 77240 (local node or approved endpoint); mainnet not available
Authentication none on loopback; bearer token when the node binds a non-loopback address; public proxies rate-limit per IP
Minimum software protocol pqwerai-v8-testnet/1
Verified source core/source/internal/ethapi/api.go:1935 at Core bad4a06ea; registered on live CoreGeth/linux-amd64/go1.26.8
Returns 32-byte hash

Behaviour on PQWERAI

Requires an account unlocked inside the node. PQWERAI Core exposes no personal_* namespace and loads no keystore, so these return an error; sign in the client and use eth_sendRawTransaction.

Parameters

# Name Type Required Description
0 args txObject yes transaction call object {from,to,gas,gasPrice
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "eth_sendTransaction",
  "params": [
    "<args>"
  ]
}
curl -s -H 'content-type: application/json' \
  -d '{"jsonrpc": "2.0", "id": 1, "method": "eth_sendTransaction", "params": ["<args>"]}' \
  "$RPC"

No live response is recorded for this method (state-changing, operator-only or no safe sample).

Errors and edge cases

  • -32602 invalid or missing parameter (e.g. missing value for required argument 0).
  • -32000 execution or validation error with a message from the node.
  • Recorded: [{"from": "0xfedcd2b6768f15ed5eaf4da44d80467096ea6743", "to": "0xfedcd2b6768f15ed5eaf4da44d80467096ea6743", "value": "0x1"}] → {"code": -32000, "message": "unknown account"}

eth_sign

Calculates an ECDSA signature for: keccak256("\x19Ethereum Signed Message:\n" + len(message) + message). Note, the produced signature conforms to the secp256k1 curve R, S and V values, where the V value will be 27 or 28 for legacy reasons. The account associated with addr must be unlocked. https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_sign

Access Unsupported (node-held keys)
Network private testnet 77240 (local node or approved endpoint); mainnet not available
Authentication none on loopback; bearer token when the node binds a non-loopback address; public proxies rate-limit per IP
Minimum software protocol pqwerai-v8-testnet/1
Verified source core/source/internal/ethapi/api.go:2006 at Core bad4a06ea; registered on live CoreGeth/linux-amd64/go1.26.8
Returns data (hex)

Behaviour on PQWERAI

Requires an account unlocked inside the node. PQWERAI Core exposes no personal_* namespace and loads no keystore, so these return an error; sign in the client and use eth_sendRawTransaction.

Parameters

# Name Type Required Description
0 addr address yes 20-byte hex address, 0x-prefixed
1 data bytes yes 0x-prefixed hex data
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "eth_sign",
  "params": [
    "<addr>",
    "<data>"
  ]
}
curl -s -H 'content-type: application/json' \
  -d '{"jsonrpc": "2.0", "id": 1, "method": "eth_sign", "params": ["<addr>", "<data>"]}' \
  "$RPC"

No live response is recorded for this method (state-changing, operator-only or no safe sample).

Errors and edge cases

  • -32602 invalid or missing parameter (e.g. missing value for required argument 0).
  • -32000 execution or validation error with a message from the node.
  • Recorded: ["0xfedcd2b6768f15ed5eaf4da44d80467096ea6743", "0x00"] → {"code": -32000, "message": "unknown account"}

eth_signTransaction

Will sign the given transaction with the from account. The node needs to have the private key of the account corresponding with the given from address and it needs to be unlocked.

Access Unsupported (node-held keys)
Network private testnet 77240 (local node or approved endpoint); mainnet not available
Authentication none on loopback; bearer token when the node binds a non-loopback address; public proxies rate-limit per IP
Minimum software protocol pqwerai-v8-testnet/1
Verified source core/source/internal/ethapi/api.go:2031 at Core bad4a06ea; registered on live CoreGeth/linux-amd64/go1.26.8
Returns {raw, tx}

Behaviour on PQWERAI

Requires an account unlocked inside the node. PQWERAI Core exposes no personal_* namespace and loads no keystore, so these return an error; sign in the client and use eth_sendRawTransaction.

Parameters

# Name Type Required Description
0 args txObject yes transaction call object {from,to,gas,gasPrice
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "eth_signTransaction",
  "params": [
    "<args>"
  ]
}
curl -s -H 'content-type: application/json' \
  -d '{"jsonrpc": "2.0", "id": 1, "method": "eth_signTransaction", "params": ["<args>"]}' \
  "$RPC"

No live response is recorded for this method (state-changing, operator-only or no safe sample).

Errors and edge cases

  • -32602 invalid or missing parameter (e.g. missing value for required argument 0).
  • -32000 execution or validation error with a message from the node.

eth_submitHashrate

Can be used for remote miners to submit their hash rate. This enables the node to report the combined hash rate of all miners which submit work through this node. It accepts the miner hash rate and an identifier which must be unique between nodes.

Access Operator · mining
Network private testnet 77240 (local node or approved endpoint); mainnet not available
Authentication none on loopback; bearer token when the node binds a non-loopback address; public proxies rate-limit per IP
Minimum software protocol pqwerai-v8-testnet/1
Verified source core/source/consensus/ethash/api.go:93 at Core bad4a06ea; registered on live CoreGeth/linux-amd64/go1.26.8
Returns boolean

Behaviour on PQWERAI

Legacy Ethash external-miner interface. GhostRider sealing runs inside the node through the pinned helper; operator use only, never through a public proxy.

Parameters

# Name Type Required Description
0 rate quantity yes 0x-prefixed hex integer
1 id hash32 yes 32-byte hex hash, 0x-prefixed
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "eth_submitHashrate",
  "params": [
    "<rate>",
    "<id>"
  ]
}
curl -s -H 'content-type: application/json' \
  -d '{"jsonrpc": "2.0", "id": 1, "method": "eth_submitHashrate", "params": ["<rate>", "<id>"]}' \
  "$RPC"

No live response is recorded for this method (state-changing, operator-only or no safe sample).

Errors and edge cases

  • -32602 invalid or missing parameter (e.g. missing value for required argument 0).
  • -32000 execution or validation error with a message from the node.

eth_submitWork

Can be used by external miner to submit their POW solution. It returns an indication if the work was accepted. Note either an invalid solution, a stale work a non-existent work will return false.

Access Operator · mining
Network private testnet 77240 (local node or approved endpoint); mainnet not available
Authentication none on loopback; bearer token when the node binds a non-loopback address; public proxies rate-limit per IP
Minimum software protocol pqwerai-v8-testnet/1
Verified source core/source/consensus/ethash/api.go:67 at Core bad4a06ea; registered on live CoreGeth/linux-amd64/go1.26.8
Returns boolean

Behaviour on PQWERAI

Legacy Ethash external-miner interface. GhostRider sealing runs inside the node through the pinned helper; operator use only, never through a public proxy.

Parameters

# Name Type Required Description
0 nonce bytes8 yes 8-byte nonce
1 hash hash32 yes 32-byte hex hash, 0x-prefixed
2 digest hash32 yes 32-byte hex hash, 0x-prefixed
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "eth_submitWork",
  "params": [
    "<nonce>",
    "<hash>",
    "<digest>"
  ]
}
curl -s -H 'content-type: application/json' \
  -d '{"jsonrpc": "2.0", "id": 1, "method": "eth_submitWork", "params": ["<nonce>", "<hash>", "<digest>"]}' \
  "$RPC"

No live response is recorded for this method (state-changing, operator-only or no safe sample).

Errors and edge cases

  • -32602 invalid or missing parameter (e.g. missing value for required argument 0).
  • -32000 execution or validation error with a message from the node.

g4_context

Builds the RLP vote context for a checkpoint link between two heights.

Access Operator · validator helper
Network private testnet 77240 (local node or approved endpoint); mainnet not available
Authentication none on loopback; bearer token when the node binds a non-loopback address; public proxies rate-limit per IP
Minimum software protocol pqwerai-v8-testnet/1
Verified source core/source/cmd/pqwerai-core/g4.go:330 at Core bad4a06ea; registered on live CoreGeth/linux-amd64/go1.26.8
Returns string

Behaviour on PQWERAI

Read-only helpers used by Smartnode signers to obtain the checkpoint vote context. Not needed by applications.

Parameters

# Name Type Required Description
0 source integer yes JSON number
1 target integer yes JSON number
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "g4_context",
  "params": [
    "<source>",
    "<target>"
  ]
}
curl -s -H 'content-type: application/json' \
  -d '{"jsonrpc": "2.0", "id": 1, "method": "g4_context", "params": ["<source>", "<target>"]}' \
  "$RPC"

No live response is recorded for this method (state-changing, operator-only or no safe sample).

Errors and edge cases

  • -32602 invalid or missing parameter (e.g. missing value for required argument 0).
  • -32000 execution or validation error with a message from the node.
  • Recorded: [0, 1] → {"code": -32000, "message": "invalid checkpoint link"}

Returns the next checkpoint link (source, target, RLP vote context) validators should sign, or null.

Access Operator · validator helper
Network private testnet 77240 (local node or approved endpoint); mainnet not available
Authentication none on loopback; bearer token when the node binds a non-loopback address; public proxies rate-limit per IP
Minimum software protocol pqwerai-v8-testnet/1
Verified source core/source/cmd/pqwerai-core/g4.go:259 at Core bad4a06ea; registered on live CoreGeth/linux-amd64/go1.26.8
Returns object

Behaviour on PQWERAI

Read-only helpers used by Smartnode signers to obtain the checkpoint vote context. Not needed by applications.

Parameters

# Name Type Required Description
0 refused integer no JSON number (optional)
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "g4_link",
  "params": [
    null
  ]
}
curl -s -H 'content-type: application/json' \
  -d '{"jsonrpc": "2.0", "id": 1, "method": "g4_link", "params": [null]}' \
  "$RPC"

Recorded 2026-11-07T18:41:00+00:00 at head 4325 on a disposable local testnet, chain 77240. Long arrays are truncated.

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": null
}

Errors and edge cases

  • -32602 invalid or missing parameter (e.g. missing value for required argument 0).
  • -32000 execution or validation error with a message from the node.

g4_submitVote

Submits a signed Smartnode finality vote (RLP context + signed vote). Authenticated against the epoch validator set.

Access Operator · validator action
Network private testnet 77240 (local node or approved endpoint); mainnet not available
Authentication none on loopback; bearer token when the node binds a non-loopback address; public proxies rate-limit per IP
Minimum software protocol pqwerai-v8-testnet/1
Verified source core/source/cmd/pqwerai-core/g4.go:407 at Core bad4a06ea; registered on live CoreGeth/linux-amd64/go1.26.8
Returns object

Behaviour on PQWERAI

Accepts signature-verified Smartnode finality votes. Authenticated, replay-checked and rate-limited by the node. Never exposed through documentation tooling.

Parameters

# Name Type Required Description
0 ctxHex string yes JSON string
1 voteHex string yes JSON string
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "g4_submitVote",
  "params": [
    "<ctxHex>",
    "<voteHex>"
  ]
}
curl -s -H 'content-type: application/json' \
  -d '{"jsonrpc": "2.0", "id": 1, "method": "g4_submitVote", "params": ["<ctxHex>", "<voteHex>"]}' \
  "$RPC"

No live response is recorded for this method (state-changing, operator-only or no safe sample).

Errors and edge cases

  • -32602 invalid or missing parameter (e.g. missing value for required argument 0).
  • -32000 execution or validation error with a message from the node.

pqwerai_peerHealth

Peer-manager diagnostics: target, connected peers (IDs and subnets), dial candidates, cache and manifest status.

Access Operator · diagnostics
Network private testnet 77240 (local node or approved endpoint); mainnet not available
Authentication none on loopback; bearer token when the node binds a non-loopback address; public proxies rate-limit per IP
Minimum software protocol pqwerai-v8-testnet/1
Verified source core/source/cmd/pqwerai-core/peers.go:555 at Core bad4a06ea; registered on live CoreGeth/linux-amd64/go1.26.8
Returns peer health object

Behaviour on PQWERAI

Peer manager diagnostics (peer IDs and subnets). Operators should not expose it through public endpoints.

Parameters: none

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "pqwerai_peerHealth",
  "params": []
}
curl -s -H 'content-type: application/json' \
  -d '{"jsonrpc": "2.0", "id": 1, "method": "pqwerai_peerHealth", "params": []}' \
  "$RPC"

No live response is recorded for this method (state-changing, operator-only or no safe sample).

Errors and edge cases

  • -32602 invalid or missing parameter (e.g. missing value for required argument 0).
  • -32000 execution or validation error with a message from the node.


Found a problem? Report a documentation issue · Build testnet-rc1+72057fe3ec