Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Important: If you're encountering any problem declaring contracts, please read the Blake Hash Support information.

run

Execute a single multicall transaction containing every call from passed file.

Required Common Arguments — Passed By CLI or Specified in snfoundry.toml

--path, -p <PATH>

Required.

Path to a TOML file with call declarations.

--url, -u <RPC_URL>

Optional.

Starknet RPC node url address.

Overrides url from snfoundry.toml.

--network <NETWORK>

Optional.

Use predefined network with public provider

Possible values: mainnet, sepolia, devnet.

Overrides network from snfoundry.toml.

--max-fee, -m <MAX_FEE>

Optional.

Maximum fee for the invoke denoted in FRI. Must be greater than zero. If provided, it is not possible to use any of the following fee related flags: --l1-gas, --l1-gas-price, --l2-gas, --l2-gas-price, --l1-data-gas, --l1-data-gas-price.

--l1-gas <L1_GAS>

Optional.

Maximum L1 gas for the invoke transaction. When not used, defaults to auto-estimation.

--l1-gas-price <l1_gas_price>

Optional.

Maximum L1 gas unit price for the invoke transaction. When not used, defaults to auto-estimation.

--l2-gas <L2_GAS>

Optional.

Maximum L2 gas for the invoke transaction. When not used, defaults to auto-estimation.

--l2-gas-price <L2_GAS_PRICE>

Optional.

Maximum L2 gas unit price for the invoke transaction. When not used, defaults to auto-estimation.

--l1-data-gas <L1_DATA_GAS>

Optional.

Maximum L1 data gas for the invoke transaction. When not used, defaults to auto-estimation.

--l1-data-gas-price <l1_data_gas_price>

Optional.

Maximum L1 data gas unit price for the invoke transaction. When not used, defaults to auto-estimation.

--nonce, -n <NONCE>

Optional.

Nonce of the transaction. If not provided, nonce will be set automatically.

--tip <TIP>

Optional. Conflicts with: --estimate-tip

Tip for the transaction. When not provided, defaults to 0 unless --estimate-tip is used.

--estimate-tip

Optional. Conflicts with: --tip

If passed, an estimated tip will be added to pay for the transaction. The tip is estimated based on the current network conditions and added to the transaction fee.

--dry-run

Optional. Conflicts with all fee related flags: --max-fee, --l1-gas, --l1-gas-price, --l2-gas, --l2-gas-price, --l1-data-gas, --l1-data-gas-price, --tip, --estimate-tip

If passed, the transaction will not be sent to the network and the fee will be estimated instead. See also: --detailed.

--detailed

Optional.

If passed, the output will include detailed fee estimation results instead of just overall fee. Requires --dry-run flag to be used.

File example:

[[call]]
call_type = "deploy"
class_hash = "0x076e94149fc55e7ad9c5fe3b9af570970ae2cf51205f8452f39753e9497fe849"
inputs = []
id = "map_contract"
unique = false

[[call]]
call_type = "invoke"
contract_address = "0x38b7b9507ccf73d79cb42c2cc4e58cf3af1248f342112879bfdf5aa4f606cc9"
function = "put"
inputs = ["0x123", "234"]

[[call]]
call_type = "invoke"
contract_address = "map_contract"
function = "put"
inputs = ["0x123", "234"]

[[call]]
call_type = "deploy"
class_hash = "0x2bb3d35dba2984b3d0cd0901b4e7de5411daff6bff5e072060bcfadbbd257b1"
inputs = ["0x123", "map_contract"]
unique = false