Actions APIReferenceVaultsSlugMint

Build the approval + deposit transactions for a Nest vault mint.

POST
/vaults/{slug}/mint/build-tx

Path Parameters

slug*string
Length1 <= length

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

depositAsset*string

ERC20 address of the deposit asset on the requested chain.

Match^0x[a-fA-F0-9]{40}$
depositAmount*string

Raw base-unit amount of the deposit asset (string for bigint safety).

Match^\d+$
chainId*integer

EVM chain ID. Must be one of the supported chains (Plume=98866, Ethereum=1, BSC=56, Plasma=9745, Avalanche=43114) and must match a chain the vault is deployed on.

Range0 < value
recipient*string

Recipient of the minted shares (also used as the EVM depositor).

Match^0x[a-fA-F0-9]{40}$
skipSimulation?boolean

Skip the approve + deposit transaction simulation preflight.

Defaultfalse

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/vaults/nest-wisdom-vault/mint/build-tx" \  -H "Content-Type: application/json" \  -d '{    "depositAsset": "0xdddd73f5df1f0dc31373357beac77545dc5a6f3f",    "depositAmount": "1000000",    "chainId": 98866,    "recipient": "0x0000000000000000000000000000000000000001"  }'
{  "data": {    "slug": "string",    "chainId": 0,    "shareTokenAddress": "string",    "depositAsset": "string",    "depositAmount": "string",    "depositDecimals": 0,    "shareAmount": "string",    "shareDecimals": 0,    "feeAmount": "string",    "fees": {      "ratePpm": 0,      "flatAmount": "string",      "maxRatePpm": 0,      "maxFlatAmount": "string"    },    "transactions": [      {        "label": "approve",        "description": "string",        "to": "string",        "data": "string",        "value": "0"      }    ]  }}