Storage Proofs
HomeDashboard
  • Getting Started
    • Introduction
    • Use Cases
    • Quick Start Guide
    • Key Concepts
  • Storage Proofs
    • Overview
    • Workflow
      • Workflow Examples
    • Accessing Block Hash
  • Solutions
    • Storage Proof API
      • Authentication
      • Payload Examples
    • Turbo
      • Workflow
      • RPC Endpoint
      • Turbo Compute
  • Architecture
    • Overview
    • Smart Contracts
    • Cross-Chain Storage Proofs
      • Native Messaging Systems
      • OP Stack Chains
  • Guides
    • Using Storage Proof API
    • Integrating Storage Proofs
    • Building a Storage Proof Powered Bridge
    • Writing Turbo Smart Contracts
    • Sending Turbo Transactions
  • References
    • Contract Addresses
    • Supported Networks
    • Glossary
  • Media Links
    • Twitter
    • Telegram
Powered by GitBook
On this page
  • Header Access
  • Account Access
  • Account Storage Access
  • Additional Example (Multiple Data Points):
  1. Solutions
  2. Storage Proof API

Payload Examples

Here are 4 different sample batch query payloads for Header Access, Account Access, Account Storage Access, and an additional example. Let's go through each of them:

Header Access

{
  "destinationChainId": "SN_SEPOLIA",
  "fee": "0",
  "data": {
    "11155111": {
      "block:5856869": {
        "header": [
          "STATE_ROOT",
          "TIMESTAMP",
          "BLOCK_NUMBER",
          "GAS_LIMIT",
          "GAS_USED"
        ]
      }
    }
  }
}

This query is requesting specific header information from block 5856869 on the Sepolia testnet (chain ID 11155111). It's asking for the state root, timestamp, block number, gas limit, and gas used. The results will be proven and made available on the Starknet Sepolia network (SN_SEPOLIA). This query is useful for accessing and verifying key block header information across different networks.

Account Access

{
  "destinationChainId": "11155111",
  "fee": "0",
  "data": {
    "11155111": {
      "block:5150551": {
        "accounts": {
          "0x17C2D875CB397D813eAE817DaFD25807E348Df07": {
            "props": ["BALANCE"],
            "slots": []
          }
        }
      }
    }
  }
}

This query is focused on retrieving the balance of a specific Ethereum account (0x17C2D875CB397D813eAE817DaFD25807E348Df07) at block 5150551 on the Sepolia testnet. The query is both initiated and proven on the Sepolia network (chain ID 11155111). This type of query is helpful for verifying an account's balance at a specific point in time, which could be useful for various financial applications or audits.

Account Storage Access

{
  "destinationChainId": "SN_SEPOLIA",
  "fee": "0",
  "data": {
    "11155111": {
      "block:5856869": {
        "accounts": {
          "0x76a1b9e4712e45c4c3d0ac6e2c3028ee0ce4d3b0": {
            "props": ["STORAGE_ROOT"],
            "slots": [
              "0x000000000000000000000000000000000000000000000000000000000000000b"
            ]
          }
        }
      }
    }
  }
}

This query is requesting the storage root and the value of a specific storage slot (0x000000000000000000000000000000000000000000000000000000000000000b) for a particular account (0x76a1b9e4712e45c4c3d0ac6e2c3028ee0ce4d3b0) at block 5856869 on the Sepolia testnet. The results will be proven on the Starknet Sepolia network. This type of query allows verification of specific data stored within a contract.

Additional Example (Multiple Data Points):

This more complex query combines multiple types of data requests in a single batch. It's requesting:

  • Header information (state root and timestamp) for block 6373286

  • Balance, nonce, and storage root for the account associated with the ENS name kozi.eth

  • Code hash and a specific storage slot value for the account 0x08210F9170F89Ab7658F0B5E3fF39b0E03C594D4

{
    "destinationChainId": "11155111",
    "fee": "0",
    "data": {
        "11155111": {
            "block:6373286": {
                "header": [
                    "STATE_ROOT",
                    "TIMESTAMP"
                ],
                "accounts": {
                    "kozi.eth": {
                        "props": [
                            "BALANCE",
                            "NONCE",
                            "STORAGE_ROOT"
                        ],
                        "slots": []
                    },
                    "0x08210F9170F89Ab7658F0B5E3fF39b0E03C594D4": {
                        "props": [
                            "CODE_HASH"
                        ],
                        "slots": [
                            "0x0000000000000000000000000000000000000000000000000000000000000001"
                        ]
                    }
                }
            }
        }
    },
    "webhook": {
        "url": "https://your-webhook-url.com/callback",
        "headers": {
            "Content-Type": "application/json"
        }
    }
}

These examples demonstrate different ways to use the Storage Proof API for accessing various types of blockchain data. The results will be sent to the specified webhook URL, allowing for asynchronous processing of the data once it's available.

Example request:

PreviousAuthenticationNextTurbo

Last updated 10 months ago

Example request:

Example request:

Example request:

Remember to replace "" with your actual webhook URL where you want to receive the results.

https://dashboard.herodotus.dev/explorer/query/01J2VM6636VWW45ZRPGEQEZ5E5
https://dashboard.herodotus.dev/explorer/query/01J2VM6JSA6VKKZ0ENWGYYPR18
https://dashboard.herodotus.dev/explorer/query/01J2VM6Y5JH6BG3AP73K3YJRM7
https://your-webhook-url.com/callback
https://dashboard.herodotus.dev/explorer/query/01J3N2MB216H2QFBS91JJC6QRF