---
title: "Merkle tree metadata"
method: GET
path: "/v1/trees/{tree_index}"
tags: ["trees"]
---

# Merkle tree metadata

`GET /v1/trees/{tree_index}`

Returns metadata for a specific Indexed Merkle Tree:
- `num_leaves` -- current leaf count.
- `root` -- current Poseidon root hash (raw bytes).
- `utxo_count` -- UTXO records stored for this tree.

**Always Protobuf** -- responds with `application/x-protobuf` regardless
of the `Accept` header.

**Tree capacity**: `MAX_LEAVES_PER_TREE = 1,048,576` (depth-20 tree).
Once full, the write service starts a new tree at the next sequential index.

## Path parameters

- `tree_index` integer, required

## Response `200`

Tree metadata retrieved successfully.

## Other responses

- `400` — Invalid `tree_index` parameter.
- `404` — No tree with the specified index exists.
- `429` — Rate limit exceeded.
- `500` — Storage backend error.

---

[API](https://skmtc.net/umbra-defi/apis/umbra-indexer-read-service.md) · [All operations](https://skmtc.net/umbra-defi/apis/umbra-indexer-read-service/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/umbra-defi/umbra-indexer-read-service/revisions/ea7a4ee03e38/schema)
