Smart Contract Write logo

Catalog action EVM Onchain wallet Gas send

Execute a state-changing function on any smart contract. Provide the contract ABI and function name; the transaction is signed and broadcast from your connected wallet. Use for: staking, governance votes, custom contract interactions.

This action can require a wallet connector, gas, token movement, or an external side effect. Test with simulation or a controlled amount before using it in a live workflow.

At a Glance

FieldValue
Action IDevm-write
CategoryEVM Onchain
Connectorwallet
Requires gasYes
Funds movementsend
Tagsblockchain, evm, write, contract, transaction, execute, custom, abi, defi

Payload Schema

FieldTypeRequiredDescription
contractProjectIdstringNoSelect a deployed contract project or choose 'Custom' to enter address and ABI manually.
chainIdnumberYesChain ID (1=Ethereum, 137=Polygon, 56=BSC, 8453=Base, etc.)
contractAddressstringNoThe contract address to interact with
abistringNoThe ABI of the contract function(s) as a JSON string array. Can be full contract ABI or just the function signature needed.
functionNamestringYesThe name of the function to call
argsobjectNoArguments for the function call as a JSON string array (e.g., '["0x123...", "1000"]') or a native array. Optional if function has no arguments.
valuestringNoAmount of native token (ETH, MATIC, etc.) to send with the transaction in Wei. Optional, defaults to '0'.
gasLimitstringNoOptional gas limit for the transaction. If not provided, will be estimated.
maxFeePerGasstringNoOptional max fee per gas in Wei (EIP-1559). If not provided, will be estimated.
maxPriorityFeePerGasstringNoOptional max priority fee per gas in Wei (EIP-1559). If not provided, will be estimated.
waitForConfirmationbooleanNoWhether to wait for transaction confirmation. Defaults to true.
confirmationsnumberNoNumber of confirmations to wait for. Defaults to 1.

Result Schema

FieldTypeRequiredDescription
statusstringYes-
transactionHashstringYesThe transaction hash
blockNumbernumberNoThe block number where transaction was mined
gasUsedstringNoGas used by the transaction
fromstringNoThe sender address (Turnkey wallet)
effectiveGasPricestringNoThe effective gas price used

Examples

json
{ "type": "evm-write", "payload": { "functionName": "example-functionName", "chainId": 8453 }, "children": [], "connector": { "type": "wallet", "id": "conn_wallet" }}

Payload fields can use workflow expressions such as {{$trigger.body.amount}}, {{$nodes.fetch.result.price}}, and {{$props.asset}} when the value should come from a trigger, prior node, or reusable workflow prop.

Ask a question... ⌘I