Website
Dashboard
Website
Dashboard
  • πŸ‘‰ Welcome
  • 🧐 How to set up an account
  • πŸ“ˆ Monitoring and analytics
  • πŸ” Introducing coins vs tokens
  • πŸ‘¨β€πŸ’Ό The meaning of owning crypto
  • πŸ’° Wallets
  • πŸ“œ Supported Blockchains
  • GITHUB
    • 🐘 SDK PHP
    • πŸ“ SDK Python
    • πŸ‘¨β€πŸ’» SDK GOLANG
    • ✳️ SDK NODE JS
    • ✳️ PHP Wallet
  • API REFERENCE
    • πŸ”‘ Authentication & base URL
    • Bitcoin
      • πŸ” Info
        • 🧐 Check BTC node health
        • πŸ“œ Get latest Bitcoin block
      • πŸ†Ž Block
        • πŸ“ˆ Get Bitcoin block by height
        • πŸ‘¨β€πŸ’» Get Bitcoin block by hash
        • πŸ“‘ Get transaction count in block by height
        • πŸ“‘ Get transaction count in block by hash
      • πŸ’° Transactions
        • πŸ‘¨β€πŸ’» Get Bitcoin transaction by hash
        • πŸ“ Send pre-signed raw Bitcoin transaction
      • πŸ‘¨β€πŸ’Ό Account
        • πŸ’° List BTC addresses managed by node wallet
        • πŸ†Ž Get BTC received amount for address
      • πŸ” Watch-only addresses
        • πŸ” Register an account zpub
        • πŸ“œ List registered extended public keys
        • πŸ†Ž Issue the next BTC address
        • πŸ“‘ History of issued BTC addresses
        • ❌ Delete a registered zpub
      • πŸ” JSON-RPC
        • πŸ” JSON-RPC
    • Ethereum
      • πŸ” Info
        • 🧐 Check ETH node health
        • πŸ“œ Get latest Ethereum block
      • πŸ†Ž Block
        • πŸ“ˆ Get Ethereum block by height
        • πŸ‘¨β€πŸ’» Get Ethereum block by hash
        • πŸ“‘ Get transaction count in block by height
        • πŸ“‘ Get transaction count in block by hash
      • πŸ’° Transactions
        • πŸ‘¨β€πŸ’» Get Ethereum transaction by hash
        • πŸ‘¨β€πŸ’» Get Ethereum transaction receipt by hash
        • πŸ“ Send pre-signed raw Ethereum transaction
      • πŸ‘¨β€πŸ’Ό Account
        • πŸ” List ETH accounts managed by node
        • πŸ†Ž Get ETH balance for address
        • πŸ†Ž Get transaction count (nonce) for address
        • πŸ‘‰ Estimate gas for transaction
        • πŸ“‘ Read-only contract call (eth_call)
        • πŸ‘¨β€πŸ’Ό Send transaction from node-managed account
      • πŸ” Watch-only addresses
        • πŸ” Register an account xpub
        • πŸ“œ List registered extended public keys
        • πŸ†Ž Issue the next ETH address
        • πŸ“‘ History of issued ETH addresses
        • ❌ Delete a registered xpub
      • πŸ” JSON-RPC
        • πŸ” JSON-RPC
    • Tron
      • πŸ” Info
        • πŸ“‘ Get TRX node info
        • 🧐 Check Tron node health
        • πŸͺ™ List supported TRC20 tokens
      • πŸ†Ž Block
        • πŸ“œ Get latest Tron block
        • πŸ“œ Get latest N blocks
        • 🟠 Get block by number
        • πŸ‘¨β€πŸ’» Get block by hash
      • πŸ’° Transactions
        • πŸ‘¨β€πŸ’» Get transaction by hash
        • πŸ†Ž Get all transactions for an address
        • πŸ“ Create an unsigned transaction
        • πŸ“‘ Broadcast a signed transaction
      • πŸ‘¨β€πŸ’Ό Account
        • πŸ†Ž Validate a Tron address
        • πŸ” Get account information
        • πŸ’° Get account balance
        • πŸ’° Get all asset balances
        • πŸ’΅ Get a single TRC20 balance
        • ⚠️ Create a new Tron address (deprecated)
        • ⚠️ Generate a private key from a mnemonic (deprecated)
        • ⚠️ Send TRX from one address to another (deprecated)
        • ⚠️ Send USDT (TRC20) from one address to another (deprecated)
      • πŸ“Š Schemas
      • πŸ” JSON-RPC
    • Webhooks
      • ✳️ Management
        • πŸ‘¨β€πŸ“œ List webhooks
        • 🧐 Create webhook
        • πŸ‘‰ Get webhook
        • πŸ‘¨β€πŸ” Update webhook
        • ❌ Delete webhook
        • πŸ”‘ Rotate signing secret
      • πŸ“¨ Receiving notifications

πŸ“‘ Read-only contract call (eth_call)

Code samples

POST /api/v1/eth/account/call

curl -X POST 'https://settla.net/api/v1/eth/account/call' \
  -H 'X-API-Key: $SETTLA_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "transaction": {
    "to": "0xdac17f958d2ee523a2206206994597c13d831ec7",
    "data": "0x70a0823100000000000000000000000028c6c06298d514db089934071355e5743bf21d60"
  },
  "block": "latest"
}'

Executes a read-only call to a contract using eth_call without creating a transaction.

The example below reads an ERC-20 balance: data is the 4-byte selector of balanceOf(address) (0x70a08231) followed by the queried address padded to 32 bytes. The reply is raw ABI output β€” a 32-byte word you decode yourself; for USDT (6 decimals) 0x…029e67c7d1182a is 737118524610602 base units, i.e. 737 118 524.610602 USDT.

Body parameter

{
  "transaction": {
    "to": "0xdac17f958d2ee523a2206206994597c13d831ec7",
    "data": "0x70a0823100000000000000000000000028c6c06298d514db089934071355e5743bf21d60"
  },
  "block": "latest"
}

πŸ› οΈ Parameters

NameInTypeRequiredDescription
bodybodyobjecttruenone
Β» transactionbodyobjecttrueEthereum transaction parameters used with eth_call, eth_estimateGas and eth_sendTransaction.
»» frombodystringfalseSender address.
»» tobodystring¦nullfalseRecipient address, or null for contract creation.
»» gasbodystringfalseGas limit as hex QUANTITY.
»» gasPricebodystringfalseLegacy gas price as hex QUANTITY.
»» maxFeePerGasbodystringfalseEIP-1559 max fee per gas as hex QUANTITY.
»» maxPriorityFeePerGasbodystringfalseEIP-1559 priority fee per gas as hex QUANTITY.
»» valuebodystringfalseAmount of wei to send as hex QUANTITY.
»» databodystringfalseCall data or contract deployment bytecode.
»» noncebodystringfalseNonce as hex QUANTITY.
Β» blockbodystringfalseOptional block number or tag; defaults to latest.

Example responses

200 Response

{
  "result": "0x00000000000000000000000000000000000000000000000000029e67c7d1182a"
}

422 Response

{
  "error": "Field \"transaction\" is required and must be an object"
}

500 Response

{
  "error": "Could not connect to ETH node."
}

πŸ” Responses

StatusMeaningDescriptionSchema
200OKRaw return data from contract, ABI-encoded and not decoded by the APIInline
422Unprocessable EntityInvalid request body (missing or invalid transaction)Inline
500Internal Server ErrorNode unreachable, or the call reverted. Both map to the same message.Inline

πŸ”„ Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
Β» resultstringfalsenoneHex-encoded return data from eth_call.

Status Code 422

NameTypeRequiredRestrictionsDescription
Β» errorstringfalsenonenone

Status Code 500

NameTypeRequiredRestrictionsDescription
Β» errorstringfalsenonenone
To perform this operation, you must be authenticated by means of one of the following methods: ApiKeyAuth
Prev
πŸ‘‰ Estimate gas for transaction
Next
πŸ‘¨β€πŸ’Ό Send transaction from node-managed account