Call
Executes a read-only smart contract method call without creating a blockchain transaction. Used for querying contract state without gas costs.
Common Properties
- Name - The custom name of the node.
- Color - The custom color of the node.
- Delay Before (sec) - Waits in seconds before executing the node.
- Delay After (sec) - Waits in seconds after executing node.
- Continue On Error - Automation will continue regardless of any error. The default value is false.
If the ContinueOnError property is true, no error is caught when the project is executed, even if a Catch node is used.
Inputs
- Client ID - The client ID from the Create Client node.
- Transaction ID - The transaction ID from the ABI Method node containing the encoded method call.
- Wallet Address - The address calling the contract method.
- Contract Address - The smart contract address to call.
Output
- Response - The raw response data from the contract call in hexadecimal format.
How It Works
The Call node executes a read-only contract method without sending a transaction. When executed, the node:
- Validates all required inputs
- Retrieves the encoded transaction data using the Transaction ID
- Constructs a call message with the from address, to address, and data
- Executes the call against the latest blockchain state
- Returns the raw response data
- Deletes the temporary transaction data
Requirements
- A valid Client ID from the Create Client node
- A Transaction ID from the ABI Method node
- Valid wallet and contract addresses
- The contract must exist on the blockchain
Error Handling
The node will return errors for:
- Empty or invalid Client ID
- Client not found
- Empty or invalid Transaction ID
- Transaction data not found
- Empty wallet or contract address
- Contract execution failures
- Network connection issues
Usage Notes
- This node is for read-only operations (view/pure functions)
- No gas fees are charged for calls
- Calls are executed against the current blockchain state
- The response is raw hex data that may need decoding
- Use the Decode node to parse complex return values
- Calls do not modify blockchain state
- Multiple calls can be made without waiting for confirmations
Example
Checking ERC20 token balance:
First, encode the method with ABI Method:
- ABI Method:
balanceOf - Args:
["0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb"] - Output: Transaction ID
Then call the contract:
Inputs:
- Client ID:
7e8f9a0b-1c2d-3e4f-5a6b-7c8d9e0f1a2b - Transaction ID: (from ABI Method)
- Wallet Address:
0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb - Contract Address:
0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48(USDC)
Output:
- Response:
0x0000000000000000000000000000000000000000000000000000000005f5e100(100000000 in hex = 100 USDC)
Querying NFT owner:
Inputs:
- Client ID:
7e8f9a0b-1c2d-3e4f-5a6b-7c8d9e0f1a2b - Transaction ID: (ownerOf method with token ID)
- Wallet Address:
0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb - Contract Address:
0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D(BAYC)
Output:
- Response: (hex-encoded address of the NFT owner)
Common Use Cases
Token Balance Queries: Check ERC20 token balances using the balanceOf method.
NFT Ownership: Verify NFT ownership with ownerOf or balanceOf methods.
Contract State Reading: Query any public state variable or view function.
Allowance Checks: Check token spending allowances before transfers.
Price Queries: Get current prices from DeFi protocols and oracles.
Supply Information: Check total supply, circulating supply, or minting limits.
For complex return values (structs, arrays, multiple values), use the Decode node after Call to parse the response data.
Call operations are free and instant. Use them liberally for checking contract state before executing expensive transactions.
Call vs Send Transaction
Use Call for:
- Reading contract state
- Querying balances and allowances
- Checking conditions before transactions
- Getting price quotes
- Any view or pure function
Use Send Transaction for:
- Transferring tokens
- Minting NFTs
- Approving spending
- Swapping on DEXes
- Any state-changing operation