Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.startale.com/llms.txt

Use this file to discover all available pages before exploring further.

Sends multiple calls in a single user operation. All calls succeed together or revert together.

Request

const { id } = await provider.request<{ id: `0x${string}` }>({
  method: 'wallet_sendCalls',
  params: [
    {
      version: '1',
      from: address,
      chainId: '0x74c',
      atomicRequired: true,
      calls: [
        { to: '0x...', data: '0x...' },
        { to: '0x...', data: '0x...', value: '0x0' },
      ],
    },
  ],
})

Parameters

params[0].version
string
required
Use '1'.
params[0].from
`0x${string}`
Smart-account address. Rewritten by the wallet if a different value is supplied.
params[0].chainId
`0x${string}`
required
Hex-encoded chain ID.
params[0].atomicRequired
boolean
When true (recommended for Startale), all calls must land in a single transaction.
params[0].calls
Array<{ to, data?, value? }>
required
Array of calls. Each to is required; data and value are optional.

Returns

{
  id: `0x${string}`
}
The id is used to query status with wallet_getCallsStatus or to display status with wallet_showCallsStatus.

Errors

CodeCause
4001User rejected
4100Wallet not connected
-32602Malformed call array