---
title: "Get liquid staking pools"
method: GET
path: "/v4/data/staking/liquid/pools"
tags: ["Staking"]
---

# Get liquid staking pools

`GET /v4/data/staking/liquid/pools`

/v4/data/staking/liquid/pools

**50 credits per API call**

Get the top liquid staking pools for a blockchain. Returns all supported liquid staking tokens (protocol, symbol, token address) that can be used with `/staking/liquid/current-assets`.

Supported blockchains:

*   Ethereum - ethereum-mainnet
*   Solana - solana-mainnet

To get started:

*   Provide a chain. The API returns all liquid staking pools (Lido, Rocket Pool, Marinade, Jito, etc.) for that chain.
*   Ethereum pools include contractAddress; Solana pools include mintAddress.

## Query parameters

- `chain` 'solana-mainnet' | 'ethereum-mainnet', required

## Response `200`

OK

- LiquidStakingPoolsResponse — Liquid staking pools (one row per protocol). apy* fields = yield metrics for canonical asset (yields.llama.fi). tvlUsd = provider protocol TVL on the chain (DefiLlama), not summed token TVL.
  - `pools` union[], required
    - union
      - LiquidStakingPoolEthereum — Provider-level Ethereum liquid staking pool (one row per protocol).
        - `protocol` string, required
        - `underlying` string, required
        - `symbols` string[], required
        - `contractAddresses` string[], required
        - `apy` number, nullable — Yield APY from representative canonical asset; null when unavailable.
        - `apyBase` number, nullable — Base APY component; null when unavailable.
        - `apyBase7d` number, nullable — 7-day base APY.
        - `apyBase30d` number, nullable — 30-day base APY (DefiLlama-aligned).
        - `tvlUsd` number, nullable — Provider protocol TVL on the selected chain (from DefiLlama). Not summed token TVL.
        - `rank` integer — Rank by TVL (1 = highest).
      - LiquidStakingPoolSolana — Provider-level Solana liquid staking pool (one row per protocol).
        - `protocol` string, required
        - `underlying` string, required
        - `symbols` string[], required
        - `mintAddresses` string[], required
        - `apy` number, nullable — Current APY when available; null when unavailable.
        - `apyBase` number, nullable — Base APY component.
        - `apyBase7d` number, nullable — 7-day base APY.
        - `apyBase30d` number, nullable — 30-day base APY.
        - `tvlUsd` number, nullable — Provider protocol TVL on the selected chain (from DefiLlama). Not summed token TVL.
        - `rank` integer — Rank by TVL (1 = highest).

## Other responses

- `400` — Bad Request
- `401` — Unauthorized. Not valid or inactive subscription key present in the HTTP Header.
- `403` — Forbidden. The request is authenticated, but it is not possible to perform the operation due to logical error or invalid permissions.
- `500` — Internal server error. There was an error on the server during the processing of the request.

---

[API](https://skmtc.net/tatum/apis/blockchain-data.md) · [All operations](https://skmtc.net/tatum/apis/blockchain-data/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tatum/blockchain-data/revisions/8622ee4b8fae/schema)
