> ## Documentation Index
> Fetch the complete documentation index at: https://docs.allium.so/llms.txt
> Use this file to discover all available pages before exploring further.

# Uniswap V4 Hooks

> Uniswap v4 pools and the hook contracts attached to them, with decoded hook permission flags and pool key parameters.

The Uniswap V4 Hooks table records each Uniswap v4 pool at initialization along with the hook contract bound to it. Hooks are external contracts that Uniswap v4 calls at specific points in a pool's lifecycle (before/after swap, liquidity changes, etc.); the enabled callbacks are encoded in the hook address's permission bits and decoded here into `hook_signatures`.

### Table Columns

| Column Name                | Data Type         | Description                                                                                                       |
| -------------------------- | ----------------- | ----------------------------------------------------------------------------------------------------------------- |
| pool\_manager              | VARCHAR           | Address of the Uniswap v4 PoolManager singleton contract that manages this pool                                   |
| hook\_contract             | VARCHAR           | Address of the hook contract attached to the pool                                                                 |
| hook\_int                  | VARCHAR           | Integer-encoded bitmap of the hook permission flags enabled for this hook contract                                |
| hook\_signatures           | VARIANT           | Decoded list of hook callback functions (e.g. beforeSwap, afterSwap) enabled by the hook's permission flags       |
| hook\_parameters           | VARIANT           | Parsed parameters associated with the hook's enabled callbacks                                                    |
| currency0                  | VARCHAR           | Address of the first token in the pool's currency pair (lower-sorted). The zero address denotes native currency   |
| currency1                  | VARCHAR           | Address of the second token in the pool's currency pair (higher-sorted)                                           |
| id                         | VARCHAR           | Pool ID: keccak256 hash of the pool key (currency0, currency1, fee, tick\_spacing, hooks) uniquely identifying it |
| fee                        | NUMBER            | Swap fee tier of the pool, in hundredths of a basis point (e.g. 3000 = 0.30%)                                     |
| tick\_spacing              | NUMBER            | Minimum tick granularity for liquidity positions in the pool                                                      |
| params                     | VARIANT           | Raw pool key parameters emitted when the pool was initialized                                                     |
| deployer                   | VARCHAR           | Address that initialized the pool                                                                                 |
| transaction\_hash          | VARCHAR           | Transaction hash of the pool initialization                                                                       |
| transaction\_index         | NUMBER            | Index of the transaction within its block                                                                         |
| transaction\_from\_address | VARCHAR           | Address that sent the transaction                                                                                 |
| transaction\_to\_address   | VARCHAR           | Address the transaction was sent to (typically the PoolManager)                                                   |
| log\_index                 | NUMBER            | Index of the log within the transaction                                                                           |
| block\_timestamp           | TIMESTAMP\_NTZ(9) | Timestamp (UTC) of the block containing this record                                                               |
| block\_number              | NUMBER            | Number of the block containing this record                                                                        |
| block\_hash                | VARCHAR           | Hash of the block containing this record                                                                          |
