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

# getEpochSchedule

> Returns the epoch schedule information from this cluster's genesis config.

Returns the epoch schedule information from this cluster's genesis config.

## On ThorNode

Forwarded to the upstream node with a 10 s timeout and one retry on a transport error.

## Parameters

This method takes no parameters.

## Response

<ResponseField name="slotsPerEpoch" type="integer">
  Number of slots that constitute a complete Solana epoch during normal operation (after warm-up period).
</ResponseField>

<ResponseField name="leaderScheduleSlotOffset" type="integer">
  Offset before an epoch when the validator leader schedule for the next epoch is calculated and published.
</ResponseField>

<ResponseField name="warmup" type="boolean">
  Boolean indicating if the network uses a warmup period with gradually increasing epoch lengths at genesis.
</ResponseField>

<ResponseField name="firstNormalEpoch" type="integer">
  The first epoch number that reaches full standard length as defined by slotsPerEpoch.
</ResponseField>

<ResponseField name="firstNormalSlot" type="integer">
  The absolute slot number when epochs begin their standard length after the initial warmup period.
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl --fail-with-body "$THORNODE_RPC_URL" \
    --header 'content-type: application/json' \
    --data '{
      "jsonrpc": "2.0",
      "id": 1,
      "method": "getEpochSchedule"
    }'
  ```

  ```javascript Node.js theme={null}
  const body = {
    "jsonrpc": "2.0",
    "id": 1,
    "method": "getEpochSchedule"
  };

  const response = await fetch(process.env.THORNODE_RPC_URL, {
    method: "POST",
    headers: { "content-type": "application/json" },
    body: JSON.stringify(body),
  });
  const { result, error } = await response.json();
  console.log(result ?? error);
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
    "jsonrpc": "2.0",
    "result": {
      "firstNormalEpoch": 0,
      "firstNormalSlot": 0,
      "leaderScheduleSlotOffset": 432000,
      "slotsPerEpoch": 432000,
      "warmup": false
    },
    "id": 1
  }
  ```
</ResponseExample>
