Prepare deposit transaction
Returns ABI-encoded calldata for a vault deposit. Identify the vault by its BoringVault contract address. Provide a permit signature from the authorize step (GET /v2/core/authorization) to use the gas-free permit path; omit to use a standard approve+deposit flow. Note: permit signatures are bound to a specific spender, amount, nonce, and deadline, so replay is bounded — but because they are passed as query params they may appear in access logs, browser history, and proxy/CDN caches. Callers should use short permitDeadline values to minimize the exposure window.
Authorizations
API key in format: pxl_<public_id>_
Query Parameters
BoringVault contract address (0x + 40 hex chars)
"0xbbbb000000000000000000000000000000000001"
ERC-20 token address to deposit
"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"
Amount to deposit in token base units (decimal string)
"1000000"
User wallet address — signs and submits the deposit transaction. Also used as the default share recipient when to is omitted.
"0x1234567890abcdef1234567890abcdef12345678"
Destination address that receives the vault shares. Defaults to userAddress when omitted. Must match the on-chain to argument on DistributorCodeDepositor.deposit().
"0x1234567890abcdef1234567890abcdef12345678"
EVM chain ID
1
EIP-2612 permit signature (65-byte hex, from the authorize step). Required when permitDeadline is provided.
"0xabc..."
Permit deadline as Unix timestamp. Required when permitSignature is provided.
9999999999
Controls response fields. "encoded" (default): ABI-encoded calldata only. "full": calldata + ABI fragment, function name, args. "structured": ABI fragment, function name, args only.
encoded, full, structured Slippage tolerance for the minimum shares accepted, in basis points (0-10000). Defaults to 50 (0.5%). Raise it on vaults whose deposit fee moves with market prices, where the fee quoted while preparing can change before the transaction lands and cause it to fail.
0 <= x <= 1000050
EVM chain ID to deliver the new shares to. When set, the deposit and the cross-chain transfer happen in one transaction, and the shares are issued on that chain instead of this one. No deposit fee applies on this route. Cannot be combined with permitSignature or to.
196
Who receives the shares on the destination chain. Defaults to userAddress. Only meaningful alongside destinationChainId.
"0x1234567890abcdef1234567890abcdef12345678"
Gas to request for execution on the destination chain. Required when destinationChainId is set; must fall within the route’s permitted range, which GET /v2/amplify/bridge reports.
"100000"