lendborrow

Bundle Actions

Combine multiple lending and borrowing operations into one atomic blockchain transaction. This endpoint bundles several protocol actions—each defined by its specific call data—so that they all execute together (or not at all). The approach improves gas efficiency and minimizes the risk of partial execution, making it ideal for complex, multi-step transactions.

💡 Compute Unit Value: 45 (Fixed)

post/defi/v1/lendborrow/bundleactions

Request

  • Base URL
    https://svc.blockdaemon.com
  • URL
    https://svc.blockdaemon.com/defi/v1/lendborrow/bundleactions
  • Auth
    API key in header X-API-Key

Request body

lendborrowId'1300' | '1302'

The unique ID to specify the lending and borrowing protocol for routing relevant queries or transactions.

actionsstring required

An array of strings, where each string represents a specific lending or borrowing operation to execute.

datastring required

An array containing the encoded call data payloads corresponding to each action listed in the actions array. Each payload includes the parameters necessary for its respective operation.

fromstring required

Blockchain address of the sender. For EVM chains, use a checksummed hex address (e.g., 0xABCDEF...). This address must hold sufficient balance and will sign the transaction.

gasstring

Maximum number of gas units to allocate for the transaction, as an integer string (e.g., '200000'). If omitted, gas is estimated automatically. Note: this is gas units, not wei or gwei.

gasPrioritystring

Specifies the priority level for gas fees (e.g., 'low', 'medium', or 'high'), which influences the transaction speed and cost.

marketstring

Defines the market or asset standard (e.g., USDC or WETH) to be used in the transaction. If not provided, the default market is set to USDC.

enableFeeboolean

Flag to include a basis points fee transaction alongside the main transaction when set to true.

simulateboolean

When true, dry-runs the transaction batch via eth_simulateV1 and returns a simulate field with status and error on each transaction.

Example request

{
  "lendborrowId": "1300",
  "actions": "ACTION_SUPPLY_NATIVE_TOKEN",
  "data": "0x40e53eb7000000000000000000000000000000000000000000000000000000000016e360",
  "from": "0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
  "gas": "100000",
  "gasPriority": "low",
  "market": "USDC",
  "enableFee": false,
  "simulate": false
}

Response

Successful response

statusnumber

Numeric status code indicating success or failure of the API call

msgstring

Human-readable message describing the API result or error

Example response

{
  "status": 200,
  "msg": "success",
  "data": {
    "chainId": "1",
    "from": "0x6Fb447Ae94F5180254D436A693907a1f57696900",
    "to": "0xa397a8C2086C554B531c02E29f3291c9704B00c7",
    "value": "123000000",
    "gas": "500000",
    "estimationCheck": true,
    "data": "0x555029a6000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000002414354494f4e5f535550504c595f4e41544956455f544f4b454e000000000000414354494f4e5f535550504c595f4e41544956455f544f4b454e0000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000060000000000000000000000000c3d688b66703497daa19211eedff47f25384cdc30000000000000000000000006fb447ae94f5180254d436a693907a1f576969000000000000000000000000000000000000000000000000000000000005f5e1000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000c3d688b66703497daa19211eedff47f25384cdc30000000000000000000000006fb447ae94f5180254d436a693907a1f5769690000000000000000000000000000000000000000000000000000000000015ef3c0",
    "referenceId": "4fab595487904774a12c2555d9ba02a1"
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.