Read contract state (view/pure functions)

Query smart contract state by calling view or pure functions. This endpoint executes read-only operations that don't modify blockchain state and don't require gas fees.

Request Body

FieldTypeRequiredDescription
sender.vaultIdUUIDYesVault identifier for the call
chainIdnumberYesBlockchain network ID
contractAddressstringYesSmart contract address (0x..., 42 chars)
functionNamestringYesFunction name (e.g., balanceOf, totalSupply)
functionSignaturestringNoFull function signature (e.g., balanceOf(address))
parametersarrayNoFunction parameters with type/value
abiarrayNoContract ABI for result decoding

Parameters Array

Each parameter object includes:

FieldTypeDescription
typestringSolidity type (e.g., address, uint256)
valuestring/number/booleanParameter value

Key Differences from Contract Write

AspectContract ReadContract Write
Gas RequiredNo (reads are free)Yes
TransactionNo (uses eth_call)Yes (on-chain)
ResponseInstant (synchronous)Async (confirmation)
State ChangesCannot modifyCan modify
ApprovalsNot requiredMay be required

Read Call Workflow

  1. Validation — Validates contract address and function details
  2. Encoding — Encodes function call parameters
  3. Policy Check — Evaluates against policies (can block)
  4. Execution — Executes eth_call via RPC
  5. Decoding — Decodes and returns result

Response Fields

FieldTypeDescription
resultanyDecoded function return value
rawResultstringRaw hex-encoded result

Use Cases

  • Query token balances (balanceOf)
  • Check total supply (totalSupply)
  • Read contract state variables
  • Verify allowances and approvals
  • Query NFT ownership and metadata
  • Check price feeds and oracles

Required Permission

contracts:read