# getEpochInfo

> Returns information about the current epoch, including progress through it.

Source: https://docs.constant-k.com/rpc/http/getepochinfo/

`getEpochInfo` returns the current epoch number, progress through it (`slotIndex` out of `slotsInEpoch`), the absolute slot and block height, and the running transaction count.

`slotIndex` divided by `slotsInEpoch` gives progress through the epoch; the remaining slots multiplied by the current slot time (about 270 ms, measured September 2026, from `getRecentPerformanceSamples` rather than a fixed constant) estimate time to epoch rollover.

- Transport: HTTP, JSON-RPC 2.0 `POST` to `https://rpc-newyork.constant-k.com/?api-key=YOUR_API_KEY` (New York) or `https://rpc-frankfurt.constant-k.com/?api-key=YOUR_API_KEY` (Frankfurt) or `https://rpc-amsterdam.constant-k.com/?api-key=YOUR_API_KEY` (Amsterdam). The key also works as an `x-api-key` header.
- Category: Slots & Epochs
- Availability: All plans
- Rate limits: Free 5/s · Operator 50/s · Blade Runner 200/s · Nexus 500/s

## Parameters

`params` is a positional JSON array, in this order:

- `config` (object, optional): Optional configuration.
  - `commitment` (string, optional, one of `finalized`, `confirmed`, `processed`, default `"finalized"`): Bank state to read epoch progress from.
  - `minContextSlot` (integer, optional): Minimum slot the node must have processed before answering.

## Result

- `result` (object, optional): Current epoch progress. Not wrapped in a context/value envelope.
  - `epoch` (integer, required): Current epoch number.
  - `slotIndex` (integer, required): Slots elapsed since the start of this epoch.
  - `slotsInEpoch` (integer, required): Total number of slots in this epoch.
  - `absoluteSlot` (integer, required): Current slot, as an absolute (not epoch-relative) number.
  - `blockHeight` (integer | null, optional): Current block height, if known.
  - `transactionCount` (integer | null, optional): Total transactions processed by the cluster since genesis, if known.

## Example: Get current epoch progress

Request:

```bash
curl "https://rpc-newyork.constant-k.com/?api-key=YOUR_API_KEY" \
  -X POST \
  -H "Content-Type: application/json" \
  -d '{ "jsonrpc": "2.0", "id": 1, "method": "getEpochInfo", "params": [] }'
```

Response:

```json
{
  "jsonrpc": "2.0",
  "result": {
    "absoluteSlot": 447946622,
    "blockHeight": 425987686,
    "epoch": 1036,
    "slotIndex": 394622,
    "slotsInEpoch": 432000,
    "transactionCount": 549621854914
  },
  "id": 1
}
```

## Notes

- `slotIndex` divided by `slotsInEpoch` (394622 / 432000 ≈ 91.3% in the example) is how far through the current epoch the cluster is.
- `transactionCount` is the same running total `getTransactionCount` returns.

