Skip to main content
Version: V3

UniswapV3Factory

Deploys Uniswap V3 pools and manages ownership and control over pool protocol fees

Functions

createPool

  function createPool(
address tokenA,
address tokenB,
uint24 fee
) external returns (address pool)

Creates a pool for the given two tokens and fee

tokenA and tokenB may be passed in either order: token0/token1 or token1/token0. tickSpacing is retrieved from the fee. The call will revert if the pool already exists, the fee is invalid, or the token arguments are invalid.

Parameters:

NameTypeDescription
tokenAaddressOne of the two tokens in the desired pool
tokenBaddressThe other of the two tokens in the desired pool
feeuint24The desired fee for the pool

Return Values:

NameTypeDescription
pooladdressThe address of the newly created pool

setOwner

  function setOwner(
address _owner
) external

Updates the owner of the factory

Must be called by the current owner

Parameters:

NameTypeDescription
_owneraddressThe new owner of the factory

enableFeeAmount

  function enableFeeAmount(
uint24 fee,
int24 tickSpacing
) public

Enables a fee amount with the given tickSpacing

Fee amounts may never be removed once enabled

Parameters:

NameTypeDescription
feeuint24The fee amount to enable, denominated in hundredths of a bip (i.e. 1e-6)
tickSpacingint24The spacing between ticks to be enforced for all pools created with the given fee amount