Balancer v2 Repertoire on Base
Deployments
| Name | Address |
|---|---|
Vault | 0xBA12222222228d8Ba445958a75a0704d566BF2C8 (opens in a new tab) |
Action: withdraw_proportional
Parameters
| Name | Type | Description |
|---|---|---|
bpt | string (required) | Address bpt |
Withdraw funds from the Balancer pool, receiving all assets proportionally.
Permissions:
BPT below refers to the address of the BPT (Balancer Pool Token).
TOKEN below refers to the ERC-20 token address of the corresponding pool.
PID below refers to the Balancer pool ID.Vault · exitPool
Redeem BPT tokens from the corresponding Balancer pool and receive proportional amounts of TOKEN tokens in exchange.
-
Contract:
Vault -
Function:
exitPool(bytes32,address,address,(address[],uint256[],bytes,bool))Parameter Constraint poolIdequal to PIDsenderequal to AVATARrecipientequal to AVATARrequest.assets- request.minAmountsOut- request.userDataSee the note below for details. request.toInternalBalance-
Note on userData:
userDatais a bytes-like parameter that must be ABI-encoded.- Scoping details:
- For
ComposableStablePools:userDatais scoped as [2], encoded as ["uint256"]. - For all other pool types:
userDatais scoped as [1], encoded as ["uint256"].
- For
Additional Resources:
- Balancer subgraphs (opens in a new tab) for obtaining
PoolType. - Balancer documentation (opens in a new tab) for
userDatastructure.
Action: withdraw_single_token
Parameters
| Name | Type | Description |
|---|---|---|
bpt | string (required) | Address bpt |
exitTokenAddress | string (required) | Address exitTokenAddress |
Withdraw funds from the Balancer pool, receiving a single asset specified by the exitTokenAddress.
Permissions:
BPT below refers to the address of the BPT (Balancer Pool Token).
PID below refers to the Balancer pool ID.Vault · exitPool
Redeem BPT tokens from the corresponding Balancer pool and receive exitTokenAddress tokens in exchange.
-
Contract:
Vault -
Function:
exitPool(bytes32,address,address,(address[],uint256[],bytes,bool))Parameter Constraint poolIdequal to PIDsenderequal to AVATARrecipientequal to AVATARrequest.assets- request.minAmountsOut- request.userDataSee the note below for details. request.toInternalBalance-
Note on userData:
userDatais a bytes-like parameter that must be ABI-encoded.- Scoping details:
- For all pool types,
userDatais scoped as[0, undefined, exitTokenIndex], encoded as["uint256", "uint256", "uint256"]. - Where
exitTokenIndexis determined by the position ofexitTokenAddresswithin the pool's tokens.
- For all pool types,
Additional Resources:
- Balancer subgraphs (opens in a new tab) for obtaining
PoolType. - Balancer documentation (opens in a new tab) for
userDatastructure.
Action: unstake_withdraw_proportional
Parameters
| Name | Type | Description |
|---|---|---|
gauge | string (required) | Address gauge |
Unstake from the gauge and withdraw funds from the Balancer pool, receiving all assets proportionally.
Permissions:
BPT below refers to the address of the BPT (Balancer Pool Token).
TOKEN below refers to the ERC-20 token address of the corresponding pool.
GAUGE below refers to the BalancerGaugeDeposit contract address for
the target Balancer pool.
PID below refers to the Balancer pool ID.GAUGE · withdraw
Redeem GAUGE tokens to receive BPT tokens in exchange.
-
Contract:
GAUGE -
Function:
withdraw(uint256)Parameter Constraint value-
Vault · exitPool
Redeem BPT tokens from the corresponding Balancer pool and receive proportional amounts of TOKEN tokens in exchange.
-
Contract:
Vault -
Function:
exitPool(bytes32,address,address,(address[],uint256[],bytes,bool))Parameter Constraint poolIdequal to PIDsenderequal to AVATARrecipientequal to AVATARrequest.assets- request.minAmountsOut- request.userDataSee the note below for details. request.toInternalBalance-
Note on userData:
userDatais a bytes-like parameter that must be ABI-encoded.- Scoping details:
- For
ComposableStablePools:userDatais scoped as [2], encoded as ["uint256"]. - For all other pool types:
userDatais scoped as [1], encoded as ["uint256"].
- For
Additional Resources:
- Balancer subgraphs (opens in a new tab) for obtaining
PoolType. - Balancer documentation (opens in a new tab) for
userDatastructure.
Action: unstake_withdraw_single
Parameters
| Name | Type | Description |
|---|---|---|
gauge | string (required) | Address gauge |
exitTokenAddress | string (required) | Address exitTokenAddress |
Unstake from the gauge, then withdraw funds from the Balancer pool, receiving a single asset specified by the exitTokenAddress.
Permissions:
BPT below refers to the address of the BPT (Balancer Pool Token).
GAUGE below refers to the BalancerGaugeDeposit contract address for
the target Balancer pool.
PID below refers to the Balancer pool ID.GAUGE · withdraw
Redeem GAUGE tokens and receive BPT tokens in exchange.
-
Contract:
GAUGE -
Function:
withdraw(uint256)Parameter Constraint value-
Vault · exitPool
Redeem BPT tokens from the corresponding Balancer pool and receive exitTokenAddress tokens in exchange.
-
Contract:
Vault -
Function:
exitPool(bytes32,address,address,(address[],uint256[],bytes,bool))Parameter Constraint poolIdequal to PIDsenderequal to AVATARrecipientequal to AVATARrequest.assets- request.minAmountsOut- request.userDataSee the note below for details. request.toInternalBalance-
Note on userData:
userDatais a bytes-like parameter that must be ABI-encoded.- Scoping details:
- For all pool types,
userDatais scoped as[0, undefined, exitTokenIndex], encoded as["uint256", "uint256", "uint256"]. - Where
exitTokenIndexis determined by the position ofexitTokenAddresswithin the pool's tokens.
- For all pool types,
Additional Resources:
- Balancer subgraphs (opens in a new tab) for obtaining
PoolType. - Balancer documentation (opens in a new tab) for
userDatastructure.