For the complete documentation index, see llms.txt. This page is also available as Markdown.

get_transaction_proof - Nervos

Example code for the get_transaction_proof JSON-RPC method. Complete guide on how to use get_transaction_proof JSON-RPC in GetBlock Web3 documentation.

Returns a Merkle proof that one or more transactions were included in a block. Used by light clients and cross-chain bridges to verify transaction inclusion without trusting the responder.

Parameters

Parameter
Type
Required
Description

tx_hashes

array of H256

Yes

Transaction hashes to prove

block_hash

H256

No

Optional block hash; if omitted, the node finds the block containing all the transactions

Request Example

curl --location --request POST 'https://go.getblock.io/<ACCESS-TOKEN>/' \
--header 'Content-Type: application/json' \
--data-raw '{
    "jsonrpc": "2.0",
    "method": "get_transaction_proof",
    "params": [
        [
            "0xa0ef4eb5f4ceeb08a4c8524d84c5da95dce2f608e0ca2ec8091191b0f330c6e0"
        ]
    ],
    "id": "getblock.io"
}'
import axios from 'axios';

const data = JSON.stringify({
    "jsonrpc": "2.0",
    "method": "get_transaction_proof",
    "params": [
        [
            "0xa0ef4eb5f4ceeb08a4c8524d84c5da95dce2f608e0ca2ec8091191b0f330c6e0"
        ]
    ],
    "id": "getblock.io"
});

const config = {
    method: 'post',
    url: 'https://go.getblock.io/<ACCESS-TOKEN>/',
    headers: {
        'Content-Type': 'application/json'
    },
    data: data
};

axios(config)
    .then(response => console.log(JSON.stringify(response.data, null, 2)))
    .catch(error => console.log(error));

Response Example

Response Parameters

Field
Type
Description

result.block_hash

H256

Block hash where the transactions are included

result.witnesses_root

H256

Root of the witnesses Merkle tree

result.proof.indices

array of Uint32

Indices of the transactions being proven within the block

result.proof.lemmas

array of H256

Merkle proof lemmas needed to reconstruct the root

Use Cases

  • Light client transaction-inclusion proofs

  • Cross-chain bridges proving CKB transactions on other chains

  • SPV-style verification in mobile wallets

Error Handling

Status Code
Error Message
Cause

403

Forbidden

Missing or invalid <ACCESS-TOKEN>

-32602

Invalid params

Request parameters are missing or malformed

-32601

Method not found

Method does not exist or is not enabled on this node

-32603

Internal error

Server-side error while processing the request

429

Too Many Requests

Rate limit exceeded for your plan

SDK Integration

Was this helpful?