runGetMethod | TON v2

The runGetMethod method executes a get method on a smart contract in the TON blockchain. This method allows you to retrieve data from smart contracts without modifying their state.

πŸ‘

Get you own node endpoint today

Start for free and get your app to production levels immediately. No credit card required.

You can sign up with your GitHub, X, Google, or Microsoft account.

Request Body

  • address (string, required) β€” The address of the smart contract to interact with. Example: EQCxE6mUtQJKFnGfaROTKOt1lZbDiiX1kCixRv7Nw2Id_sDs.
  • method (string, required) β€” The name of the get method to execute. Example: get_wallet_address.
  • stack (array, optional) β€” An array of arguments to pass to the method, if any. Default is an empty array.

JSON-RPC

curl -X POST \
  'https://ton-mainnet.core.chainstack.com/f2a2411bce1e54a2658f2710cd7969c3/api/v2/jsonRPC' \
  -H 'Content-Type: application/json' \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "runGetMethod",
    "params": {
      "address": "EQCxE6mUtQJKFnGfaROTKOt1lZbDiiX1kCixRv7Nw2Id_sDs",
      "method": "get_wallet_address",
      "stack": [
        [
          "tvm.Slice",
          "te6cckEBAQEAJAAAQ4AbUzrTQYTUv8s/I9ds2TSZgRjyrgl2S2LKcZMEFcxj6PARy3rF"
        ]
      ]
    }
  }'

Response

  • exit_code (integer) β€” The exit code of the method execution. A value of 0 typically indicates successful execution.
  • stack (array of objects) β€” The resulting stack after method execution. Each object in the array represents a stack item and contains:
    • type (string) β€” The type of the stack item.
    • value (string) β€” The value of the stack item.
  • gas_used (integer) β€” The amount of gas used for the execution.

Use case

A possible use case for the runGetMethod method in TON is for applications or services that need to interact with smart contracts to retrieve data. This method can be used to:

  1. Fetch the current state or data from a smart contract.
  2. Implement read operations for decentralized applications (dApps).
  3. Query token balances, metadata, or other contract-specific information.
  4. Debug or test smart contract functionality without modifying the blockchain state.

Here's another with a get_jetton_data method:

curl -X 'POST' \
  'https://ton-mainnet.core.chainstack.com/f2a2411bce1e54a2658f2710cd7969c3/api/v2/runGetMethod' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "address": "EQCxE6mUtQJKFnGfaROTKOt1lZbDiiX1kCixRv7Nw2Id_sDs",
  "method": "get_jetton_data",
  "stack": []}'

Try the runGetMethod RPC method yourself

Language
Click Try It! to start a request and see the response here!