client.lp deposits USDC into the liquidity vault and receives avUSDC shares. v2 has no lock or epoch; withdrawals are immediate, gated only by vault utilization.
LP actions are caller-scoped: the signing key is the LP account, and a delegate/API key cannot perform them. Use your own wallet key (no AVANTIS_TRADER_ADDRESS).
One-time approval
The vault pulls from an allowance on the tranche, not TradingStorage:
Deposit and withdraw
Exact-share variants: mint(shares) and redeem(shares). All four accept receiver= (and owner= for withdraw/redeem) for third-party flows, plus the usual wait=.
Vault state
If a withdrawal exceeds the current utilization headroom, check state()["maxWithdraw"] and retry with a smaller amount.
Yield analytics
Historic returns come from the read-only info API: