{
  "openapi": "3.1.0",
  "info": {
    "title": "Beacon API",
    "description": "Quicknode Beacon API reference",
    "version": "1.0.0"
  },
  "paths": {
    "/eth/v1/beacon/blob_sidecars/{block_id}": {
      "get": {
        "operationId": "get_eth_v1_beacon_blob_sidecars_by_block_id",
        "summary": "Retrieves blob sidecars for a given block id",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-blob_sidecars-id"
        },
        "parameters": [
          {
            "name": "block_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be a slot number, blockRoot (encoded in hexadecimal format) or tags (Supported tags include - head (canonical head in node's view), genesis, finalized or justified)"
            },
            "required": true,
            "description": "The state identifier. It can be a slot number, blockRoot (encoded in hexadecimal format) or tags (Supported tags include - head (canonical head in node's view), genesis, finalized or justified)"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "index": {
                            "type": "string",
                            "description": "The index of the sidecar"
                          },
                          "blob": {
                            "type": "string",
                            "description": "The blob of data associated with the sidecar"
                          },
                          "kzg_commitment": {
                            "type": "string",
                            "description": "The KZG commitment for the data"
                          },
                          "kzg_proof": {
                            "type": "string",
                            "description": "The KZG proof for the data"
                          },
                          "signed_block_header": {
                            "type": "object",
                            "properties": {
                              "message": {
                                "type": "object",
                                "properties": {
                                  "slot": {
                                    "type": "string",
                                    "description": "The slot position in numerical value"
                                  },
                                  "proposer_index": {
                                    "type": "string",
                                    "description": "The propser index value in numerical value"
                                  },
                                  "parent_root": {
                                    "type": "string",
                                    "description": "The parent root hash"
                                  },
                                  "state_root": {
                                    "type": "string",
                                    "description": "The state root hash"
                                  },
                                  "body_root": {
                                    "type": "string",
                                    "description": "The body root hash"
                                  }
                                },
                                "description": "The message object"
                              },
                              "signature": {
                                "type": "string",
                                "description": "The signature hash of the message object"
                              }
                            },
                            "description": "A signed block header object containing messages and their signature"
                          },
                          "kzg_commitment_inclusion_proof": {
                            "type": "object",
                            "description": "An array of KZG commitment inclusion proof hashes"
                          }
                        }
                      },
                      "description": "The blob sidecar object containing the following values:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/blobs/{block_id}": {
      "get": {
        "operationId": "get_eth_v1_beacon_blobs_by_block_id",
        "summary": "Retrieves blobs for a given block id.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-blobs-block_id"
        },
        "description": "Retrieves blobs for a given block id. Depending on Accept header it can be returned either as json or as bytes serialized by SSZ. If the versioned_hashes parameter is specified, only the blobs for the specified versioned hashes will be returned. Blobs are returned as an ordered list matching the order of their corresponding KZG commitments in the block. After the Fulu fork, only supernodes (which custody all data columns) are required to return blobs. Clients may implement blob reconstruction logic for non-super nodes.",
        "parameters": [
          {
            "name": "block_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "Block identifier. Can be one of: \"head\" (canonical head in node's view), \"genesis\", \"finalized\", <slot>, <hex encoded blockRoot with 0x prefix>"
            },
            "required": true,
            "description": "Block identifier. Can be one of: \"head\" (canonical head in node's view), \"genesis\", \"finalized\", <slot>, <hex encoded blockRoot with 0x prefix>"
          },
          {
            "name": "versioned_hashes",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {},
              "description": "Array of versioned hashes for blobs to request for in the specified block. Returns all blobs in the block if not specified"
            },
            "description": "Array of versioned hashes for blobs to request for in the specified block. Returns all blobs in the block if not specified"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "True if the response references an unverified execution payload. Optimistic information may be invalidated at a later time. If the field is not present, assume the False value"
                    },
                    "finalized": {
                      "type": "boolean",
                      "description": "True if the response references the finalized history of the chain, as determined by fork choice. If the field is not present, additional calls are necessary to compare the epoch of the requested information with the finalized checkpoint"
                    },
                    "data": {
                      "type": "array",
                      "items": {},
                      "description": "An array of blobs. Each blob is FIELD_ELEMENTS_PER_BLOB * size_of(BLSFieldElement) = 4096 * 32 = 131072 bytes (DATA) representing a Blob as defined in Deneb"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/blocks/{block_id}/root": {
      "get": {
        "operationId": "get_eth_v1_beacon_blocks_by_block_id_root",
        "summary": "Retrieves the block root given a block id.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-blocks-block_id-root"
        },
        "parameters": [
          {
            "name": "block_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be a slot number, blockRoot (encoded in hexadecimal format) or tags (Supported tags include - head (canonical head in node's view), genesis, finalized or justified)"
            },
            "required": true,
            "description": "The state identifier. It can be a slot number, blockRoot (encoded in hexadecimal format) or tags (Supported tags include - head (canonical head in node's view), genesis, finalized or justified)"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "It's true if the response references an unverified execution payload. The optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                    },
                    "data": {
                      "type": "object",
                      "properties": {
                        "root": {
                          "type": "string",
                          "description": "The hashTreeRoot of BeaconBlock/BeaconBlockHeader"
                        }
                      },
                      "description": "The object with the following fields: "
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/genesis": {
      "get": {
        "operationId": "get_eth_v1_beacon_genesis",
        "summary": "Retrieve details of the chain's genesis.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-genesis"
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "genesis_time": {
                          "type": "string",
                          "description": "The genesis_time configured for the beacon node, which is the unix time in seconds at which the Eth2.0 chain began"
                        },
                        "genesis_validators_root": {
                          "type": "string",
                          "description": "The genesis validator root"
                        },
                        "genesis_fork_version": {
                          "type": "string",
                          "description": "A fork version number"
                        }
                      },
                      "description": "The object with the following values:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/headers": {
      "get": {
        "operationId": "get_eth_v1_beacon_headers",
        "summary": "Retrieves block headers matching given query.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-headers"
        },
        "description": "Retrieves block headers matching given query. By default it will fetch current head slot blocks.",
        "parameters": [
          {
            "name": "slot",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "The fetch sync committees for the given epoch. If not present then the sync committees for the epoch of the state will be obtained"
            },
            "description": "The fetch sync committees for the given epoch. If not present then the sync committees for the epoch of the state will be obtained"
          },
          {
            "name": "parent_root",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "The fetch sync committees for the given epoch. If not present then the sync committees for the epoch of the state will be obtained"
            },
            "description": "The fetch sync committees for the given epoch. If not present then the sync committees for the epoch of the state will be obtained"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "It's true if the response references an unverified execution payload. The optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                    },
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "root": {
                            "type": "string",
                            "description": "The corresponding root"
                          },
                          "canonical": {
                            "type": "boolean",
                            "description": "The head in node's view"
                          },
                          "header": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "message": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "slot": {
                                        "type": "string",
                                        "description": "The slot to which this block corresponds"
                                      },
                                      "proposer_index": {
                                        "type": "string",
                                        "description": "The index of validator in validator registry"
                                      },
                                      "parent_root": {
                                        "type": "string",
                                        "description": "The signing merkle root of the parent BeaconBlock"
                                      },
                                      "state_root": {
                                        "type": "string",
                                        "description": "The tree hash merkle root of the BeaconState for the BeaconBlock"
                                      },
                                      "body_root": {
                                        "type": "string",
                                        "description": "The tree hash merkle root of the BeaconBlockBody for the BeaconBlock"
                                      }
                                    }
                                  },
                                  "description": "The BeaconBlockHeader object from the CL spec"
                                },
                                "signature": {
                                  "type": "string",
                                  "description": "The signature"
                                }
                              }
                            },
                            "description": "The SignedBeaconBlockHeader object envelope from the CL spec"
                          }
                        }
                      },
                      "description": "An array with the following fields:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/headers/{block_id}": {
      "get": {
        "operationId": "get_eth_v1_beacon_headers_by_block_id",
        "summary": "Retrieves block header for given block id.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-headers-block_id"
        },
        "parameters": [
          {
            "name": "block_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be a slot number, blockRoot (encoded in hexadecimal format) or tags (Supported tags include - head (canonical head in node's view), genesis, finalized or justified)"
            },
            "required": true,
            "description": "The state identifier. It can be a slot number, blockRoot (encoded in hexadecimal format) or tags (Supported tags include - head (canonical head in node's view), genesis, finalized or justified)"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "It's true if the response references an unverified execution payload. The optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                    },
                    "data": {
                      "type": "object",
                      "properties": {
                        "root": {
                          "type": "string",
                          "description": "The root hash"
                        },
                        "canonical": {
                          "type": "boolean",
                          "description": "The head in node's view"
                        },
                        "header": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "message": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "slot": {
                                      "type": "string",
                                      "description": "The slot to which this block corresponds"
                                    },
                                    "proposer_index": {
                                      "type": "string",
                                      "description": "The index of validator in validator registry"
                                    },
                                    "parent_root": {
                                      "type": "string",
                                      "description": "The signing merkle root of the parent BeaconBlock"
                                    },
                                    "state_root": {
                                      "type": "string",
                                      "description": "The tree hash merkle root of the BeaconState for the BeaconBlock"
                                    },
                                    "body_root": {
                                      "type": "string",
                                      "description": "The tree hash merkle root of the BeaconBlockBody for the BeaconBlock"
                                    }
                                  }
                                },
                                "description": "The BeaconBlockHeader object from the CL spec"
                              },
                              "signature": {
                                "type": "string",
                                "description": "The signature"
                              }
                            }
                          },
                          "description": "The SignedBeaconBlockHeader object envelope from the CL spec"
                        }
                      },
                      "description": "The object with the following fields:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/pool/voluntary_exits": {
      "get": {
        "operationId": "get_eth_v1_beacon_pool_voluntary_exits",
        "summary": "Returns validator voluntary exit requests that the node is aware of but hasn't processed into blocks yet",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-pool-voluntary_exits"
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "message": {
                            "type": "object",
                            "properties": {
                              "epoch": {
                                "type": "string",
                                "description": "The earliest epoch at which this voluntary exit can be processed. This must be equal to or less than the current epoch at the time of exit"
                              },
                              "validator_index": {
                                "type": "string",
                                "description": "Index of the exiting validator in the beacon state's validator registry"
                              }
                            },
                            "description": "The VoluntaryExit message containing the core exit request parameters"
                          },
                          "signature": {
                            "type": "string",
                            "description": "BLS signature of the VoluntaryExit message signed by the exiting validator's private key, encoded as a hexadecimal string with '0x' prefix"
                          }
                        }
                      },
                      "description": "An array of SignedVoluntaryExit objects, each representing a validator's request to exit the beacon chain validator set"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/rewards/attestations/{epoch}": {
      "get": {
        "operationId": "get_eth_v1_beacon_rewards_attestations_by_epoch",
        "summary": "Retrieve attestation reward info for validators specified by array of public keys or validator index.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-rewards-attestations-epoch"
        },
        "description": "Retrieve attestation reward info for validators specified by array of public keys or validator index. If no array is provided, return reward info for every validator.",
        "parameters": [
          {
            "name": "epoch",
            "in": "path",
            "schema": {
              "type": "integer",
              "description": "The epoch to get rewards info from"
            },
            "required": true,
            "description": "The epoch to get rewards info from"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "public_key": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "An array of either hex encoded public key (any bytes48 with 0x prefix) or validator index"
                  }
                },
                "required": [
                  "public_key"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "A boolean indicating whether the execution of rewards for the specified epoch is done optimistically or not"
                    },
                    "finalized": {
                      "type": "boolean",
                      "description": "(Optional) A boolean indicating whether the rewards for the specified epoch have been finalized"
                    },
                    "data": {
                      "type": "object",
                      "properties": {
                        "ideal_rewards": {
                          "type": "object",
                          "properties": {
                            "effective_balance": {
                              "type": "string",
                              "description": "The effective balance for the ideal reward calculation"
                            },
                            "head": {
                              "type": "string",
                              "description": "The reward for attesting to the head block"
                            },
                            "target": {
                              "type": "string",
                              "description": "The reward for attesting to the target block"
                            },
                            "source": {
                              "type": "string",
                              "description": "The reward for attesting to the source block"
                            },
                            "inclusion_delay": {
                              "type": "string",
                              "description": "(Optional) The reward for including the attestation in a block with a specific delay"
                            },
                            "inactivity": {
                              "type": "string",
                              "description": "(Optional) The inactivity penalty for the ideal reward calculation"
                            }
                          },
                          "description": "An array containing ideal reward metrics for attestations in the specified epoch"
                        },
                        "total_rewards": {
                          "type": "object",
                          "properties": {
                            "validator_index": {
                              "type": "string",
                              "description": "The index of the validator"
                            },
                            "head": {
                              "type": "string",
                              "description": "The reward for attesting to the head block for the specified validator"
                            },
                            "target": {
                              "type": "string",
                              "description": "The reward for attesting to the target block for the specified validator"
                            },
                            "source": {
                              "type": "string",
                              "description": "The reward for attesting to the source block for the specified validator"
                            },
                            "inclusion_delay": {
                              "type": "string",
                              "description": "(Optional) The reward for including the attestation in a block with a specific delay for the specified validator"
                            },
                            "inactivity": {
                              "type": "string",
                              "description": "(Optional) The inactivity penalty for the total reward calculation for the specified validator"
                            }
                          },
                          "description": "An array containing total reward metrics for individual validators in the specified epoch"
                        }
                      },
                      "description": "An object containing two arrays of reward-related information for attestations in the specified epoch"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/rewards/blocks/{block_id}": {
      "get": {
        "operationId": "get_eth_v1_beacon_rewards_blocks_by_block_id",
        "summary": "Retrieve block reward info for a single block",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-rewards-blocks-block_id"
        },
        "parameters": [
          {
            "name": "block_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be a slot number, blockRoot (encoded in hexadecimal format) or tags (Supported tags include - head (canonical head in node's view), genesis, finalized or justified)"
            },
            "required": true,
            "description": "The state identifier. It can be a slot number, blockRoot (encoded in hexadecimal format) or tags (Supported tags include - head (canonical head in node's view), genesis, finalized or justified)"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "A boolean indicating whether the execution of rewards for the specified block is done optimistically or not"
                    },
                    "finalized": {
                      "type": "boolean",
                      "description": "A boolean indicating whether the rewards for the specified block have been finalized"
                    },
                    "data": {
                      "type": "object",
                      "properties": {
                        "proposer_index": {
                          "type": "string",
                          "description": "The index of the proposer for the specified block"
                        },
                        "total": {
                          "type": "string",
                          "description": "The total reward for the specified block"
                        },
                        "attestations": {
                          "type": "string",
                          "description": "The total rewards specifically for attestations in the specified block"
                        },
                        "sync_aggregate": {
                          "type": "string",
                          "description": "The total reward for the sync aggregate in the specified block"
                        },
                        "proposer_slashings": {
                          "type": "string",
                          "description": "The number of proposer slashings that occurred in the specified block"
                        },
                        "attester_slashings": {
                          "type": "string",
                          "description": "The number of attester slashings that occurred in the specified block"
                        }
                      },
                      "description": "An object containing various reward-related metrics for the specified block"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/rewards/sync_committee/{block_id}": {
      "get": {
        "operationId": "get_eth_v1_beacon_rewards_sync_committee_by_block_id",
        "summary": "Retrieves rewards info for sync committee members specified by array of public keys or validator index.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-rewards-sync_committee-block_id"
        },
        "description": "Retrieves rewards info for sync committee members specified by array of public keys or validator index. If no array is provided, return reward info for every committee member",
        "parameters": [
          {
            "name": "block_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be a slot number, blockRoot (encoded in hexadecimal format) or tags (Supported tags include - head (canonical head in node's view), finalized or justified)"
            },
            "required": true,
            "description": "The state identifier. It can be a slot number, blockRoot (encoded in hexadecimal format) or tags (Supported tags include - head (canonical head in node's view), finalized or justified)"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "public_key": {
                    "type": "array",
                    "items": {},
                    "description": "An array of either hex encoded public key (any bytes48 with 0x prefix) or validator index"
                  }
                },
                "required": [
                  "public_key"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "The boolean field indicates whether the execution of the rewards for the sync committee at the specified block is done optimistically or not"
                    },
                    "finalized": {
                      "type": "boolean",
                      "description": "The boolean field that signifies whether the rewards for the sync committee at the specified block have been finalized"
                    },
                    "data": {
                      "type": "object",
                      "properties": {
                        "validator_index": {
                          "type": "string",
                          "description": "A string representing the index of the validator within the sync committee"
                        },
                        "reward": {
                          "type": "string",
                          "description": "A string indicating the amount of reward (in a specific unit) earned by the validator at the specified index within the sync committee"
                        }
                      },
                      "description": "An array containing information about rewards for individual validators in the sync committee at the specified block"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/states/{state_id}/committees": {
      "get": {
        "operationId": "get_eth_v1_beacon_states_by_state_id_committees",
        "summary": "Retrieves the committees for the given state.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-states-state_id-committees"
        },
        "parameters": [
          {
            "name": "state_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized,justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
            },
            "required": true,
            "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized,justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
          },
          {
            "name": "epoch",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "The fetch committees for the given epoch. If not present then the committees for the epoch of the state will be obtained"
            },
            "description": "The fetch committees for the given epoch. If not present then the committees for the epoch of the state will be obtained"
          },
          {
            "name": "index",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "The restrict returned values to those matching the supplied committee index"
            },
            "description": "The restrict returned values to those matching the supplied committee index"
          },
          {
            "name": "slot",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "The restrict returned values to those matching the supplied slot"
            },
            "description": "The restrict returned values to those matching the supplied slot"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "It's true if the response references an unverified execution payload. The optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                    },
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "index": {
                            "type": "string",
                            "description": "The committee index at a slot"
                          },
                          "slot": {
                            "type": "string",
                            "description": "The slot"
                          },
                          "validators": {
                            "type": "array",
                            "items": {},
                            "description": "The list of validator indices assigned to this committee"
                          }
                        }
                      },
                      "description": "A group of validators assigned to attest at specific slot and that have the same committee index (shard in phase 1). It contains the following values:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/states/{state_id}/finality_checkpoints": {
      "get": {
        "operationId": "get_eth_v1_beacon_states_by_state_id_finality_checkpoints",
        "summary": "Returns finality checkpoints for state with given 'stateId'.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-states-state_id-finality_checkpoints"
        },
        "description": "Returns finality checkpoints for state with given 'stateId'. In case finality is not yet achieved, the checkpoint should return epoch 0 and ZERO_HASH as the root.",
        "parameters": [
          {
            "name": "state_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
            },
            "required": true,
            "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "It's true if the response references an unverified execution payload. The optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                    },
                    "data": {
                      "type": "object",
                      "properties": {
                        "previous_justified": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "epoch": {
                                "type": "string",
                                "description": "The corresponding epoch"
                              },
                              "root": {
                                "type": "string",
                                "description": "The corresponding root"
                              }
                            }
                          },
                          "description": "The Checkpoint"
                        },
                        "current_justified": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "epoch": {
                                "type": "string",
                                "description": "The corresponding epoch"
                              },
                              "root": {
                                "type": "string",
                                "description": "The corresponding root"
                              }
                            }
                          },
                          "description": "The Checkpoint"
                        },
                        "final_justified": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "epoch": {
                                "type": "string",
                                "description": "The corresponding epoch"
                              },
                              "root": {
                                "type": "string",
                                "description": "The corresponding root"
                              }
                            }
                          },
                          "description": "The Checkpoint"
                        }
                      },
                      "description": "The object with the following values:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/states/{state_id}/fork": {
      "get": {
        "operationId": "get_eth_v1_beacon_states_by_state_id_fork",
        "summary": "Returns a Fork object for state with the given 'stateId'.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-states-state_id-fork"
        },
        "parameters": [
          {
            "name": "state_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
            },
            "required": true,
            "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "It's true if the response references an unverified execution payload. The optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                    },
                    "data": {
                      "type": "object",
                      "properties": {
                        "previous_version": {
                          "type": "string",
                          "description": "A fork version number"
                        },
                        "current_version": {
                          "type": "string",
                          "description": "A fork version number"
                        },
                        "epoch": {
                          "type": "string",
                          "description": "The epoch number"
                        }
                      },
                      "description": "The fork object from the CL spec with the following values:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/states/{state_id}/pending_consolidations": {
      "get": {
        "operationId": "get_eth_v1_beacon_states_by_state_id_pending_consolidations",
        "summary": "Retrieves the list of pending validator consolidations for the given state.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-states-state_id-pending_consolidations"
        },
        "parameters": [
          {
            "name": "state_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot, or stateRoot (hex encoded stateRoot with 0x prefix)"
            },
            "required": true,
            "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot, or stateRoot (hex encoded stateRoot with 0x prefix)"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "True if the response references an unverified execution payload. The optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                    },
                    "finalized": {
                      "type": "boolean",
                      "description": "Indicates whether the state referenced is finalized"
                    },
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "source_index": {
                            "type": "string",
                            "description": "Index of the validator that is being consolidated into the target"
                          },
                          "target_index": {
                            "type": "string",
                            "description": "Index of the target validator that the source is being consolidated into"
                          }
                        }
                      },
                      "description": "List of pending validator consolidation mappings for the given state"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/states/{state_id}/pending_deposits": {
      "get": {
        "operationId": "get_eth_v1_beacon_states_by_state_id_pending_deposits",
        "summary": "Returns pending deposits for state with given 'stateId'.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-states-state_id-pending_deposits"
        },
        "description": "Returns pending deposits for state with given 'stateId'. Should return 400 if the state retrieved is prior to Electra.",
        "parameters": [
          {
            "name": "state_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized,justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
            },
            "required": true,
            "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized,justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "version": {
                      "type": "string",
                      "description": "(Optional) The specification version of the Beacon API response (e.g., electra)"
                    },
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "It's true if the response references an unverified execution payload. The optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                    },
                    "finalized": {
                      "type": "boolean",
                      "description": "Indicates whether the response data is finalized"
                    },
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "pubkey": {
                            "type": "string",
                            "description": "The validator BLS public key"
                          },
                          "withdrawal_credentials": {
                            "type": "string",
                            "description": "Hash used to identify the withdrawal address for the validator"
                          },
                          "amount": {
                            "type": "string",
                            "description": "The deposited amount (in Gwei)"
                          },
                          "signature": {
                            "type": "string",
                            "description": "The validator deposit signature"
                          },
                          "slot": {
                            "type": "string",
                            "description": "The slot at which this deposit occurred"
                          }
                        }
                      },
                      "description": "List of validator deposit entries included in the response"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/states/{state_id}/pending_partial_withdrawals": {
      "get": {
        "operationId": "get_eth_v1_beacon_states_by_state_id_pending_partial_withdrawals",
        "summary": "Returns pending partial withdrawals for state with given 'stateId'.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-states-state_id-pending_partial_withdrawals"
        },
        "description": "Returns pending partial withdrawals for state with given 'stateId'. Should return 400 if the state retrieved is prior to Electra.",
        "parameters": [
          {
            "name": "state_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot, or stateRoot (hex encoded stateRoot with 0x prefix)"
            },
            "required": true,
            "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot, or stateRoot (hex encoded stateRoot with 0x prefix)"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "version": {
                      "type": "string",
                      "description": "(Optional) The specification version of the Beacon API response (e.g., electra)"
                    },
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "True if the response references an unverified execution payload. The optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                    },
                    "finalized": {
                      "type": "boolean",
                      "description": "Indicates whether the response data is finalized"
                    },
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "validator_index": {
                            "type": "string",
                            "description": "The index of the validator requesting the partial withdrawal"
                          },
                          "amount": {
                            "type": "string",
                            "description": "The withdrawal amount (in Gwei)"
                          },
                          "withdrawable_epoch": {
                            "type": "string",
                            "description": "The epoch at which the partial withdrawal becomes withdrawable"
                          }
                        }
                      },
                      "description": "List of pending partial withdrawal entries for the given state"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/states/{state_id}/randao": {
      "get": {
        "operationId": "get_eth_v1_beacon_states_by_state_id_randao",
        "summary": "Fetches the RANDAO mix for the requested epoch from the state identified by 'stateId'.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-states-state_id-randao"
        },
        "description": "Fetches the RANDAO mix for the requested epoch from the state identified by 'stateId'. If an epoch is not specified then the RANDAO mix for the state's current epoch will be returned.",
        "parameters": [
          {
            "name": "state_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot, or stateRoot (hex encoded stateRoot with 0x prefix)"
            },
            "required": true,
            "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot, or stateRoot (hex encoded stateRoot with 0x prefix)"
          },
          {
            "name": "epoch",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "The epoch to fetch the RANDAO mix for. If not specified, the RANDAO mix for the state's current epoch will be returned"
            },
            "description": "The epoch to fetch the RANDAO mix for. If not specified, the RANDAO mix for the state's current epoch will be returned"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "True if the response references an unverified execution payload. The optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                    },
                    "finalized": {
                      "type": "boolean",
                      "description": "Indicates whether the response data is finalized"
                    },
                    "data": {
                      "type": "object",
                      "properties": {
                        "randao": {
                          "type": "string",
                          "description": "The RANDAO mix value for the requested epoch (hex encoded with 0x prefix)"
                        }
                      },
                      "description": "The object containing the RANDAO mix value"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/states/{state_id}/root": {
      "get": {
        "operationId": "get_eth_v1_beacon_states_by_state_id_root",
        "summary": "Returns the HashTreeRoot for a given 'stateId'.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-states-state_id-root"
        },
        "description": "Returns the HashTreeRoot for a given 'stateId'. If the stateId is root, the same value will be returned.",
        "parameters": [
          {
            "name": "state_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
            },
            "required": true,
            "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "It's true if the response references an unverified execution payload. The optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                    },
                    "data": {
                      "type": "object",
                      "properties": {
                        "root": {
                          "type": "string",
                          "description": "The HashTreeRoot of BeaconState object"
                        }
                      },
                      "description": "The object with the following values:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/states/{state_id}/sync_committees": {
      "get": {
        "operationId": "get_eth_v1_beacon_states_by_state_id_sync_committees",
        "summary": "Retrieves the sync committees for the given state.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-states-state_id-sync_committees"
        },
        "parameters": [
          {
            "name": "state_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
            },
            "required": true,
            "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
          },
          {
            "name": "epoch",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "The fetch sync committees for the given epoch. If not present then the sync committees for the epoch of the state will be obtained"
            },
            "description": "The fetch sync committees for the given epoch. If not present then the sync committees for the epoch of the state will be obtained"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "It's true if the response references an unverified execution payload. The optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                    },
                    "data": {
                      "type": "object",
                      "properties": {
                        "validators": {
                          "type": "array",
                          "items": {},
                          "description": "All of the validator indices in the current sync committee"
                        },
                        "validator_aggregate": {
                          "type": "array",
                          "items": {},
                          "description": "The subcommittee slices of the current sync committee"
                        }
                      },
                      "description": "The object with the following values:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/states/{state_id}/validator_balances": {
      "get": {
        "operationId": "get_eth_v1_beacon_states_by_state_id_validator_balances",
        "summary": "Returns a filterable list of validators balances.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-states-state_id-validator_balances"
        },
        "parameters": [
          {
            "name": "state_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
            },
            "required": true,
            "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
          },
          {
            "name": "id",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "Either hex encoded public key (any bytes48 with 0x prefix) or validator index"
            },
            "description": "Either hex encoded public key (any bytes48 with 0x prefix) or validator index"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "It's true if the response references an unverified execution payload. The optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                    },
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "index": {
                            "type": "string",
                            "description": "The index of validator in validator registry"
                          },
                          "balance": {
                            "type": "string",
                            "description": "The current validator balance in gwei"
                          }
                        }
                      },
                      "description": "The object with the following values:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/states/{state_id}/validators": {
      "get": {
        "operationId": "get_eth_v1_beacon_states_by_state_id_validators",
        "summary": "Returns a filterable list of validators with their balance, status and index.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-states-state_id-validators"
        },
        "parameters": [
          {
            "name": "state_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
            },
            "required": true,
            "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
          },
          {
            "name": "id",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "Either hex encoded public key (any bytes48 with 0x prefix) or validator index"
            },
            "description": "Either hex encoded public key (any bytes48 with 0x prefix) or validator index"
          },
          {
            "name": "status",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "Validator status specification"
            },
            "description": "Validator status specification"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "True if the response references an unverified execution payload. Optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                    },
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "index": {
                            "type": "string",
                            "description": "The index of validator in validator registry"
                          },
                          "balance": {
                            "type": "string",
                            "description": "The current validator balance in gwei"
                          },
                          "status": {
                            "type": "string",
                            "description": "The type of possible status values:"
                          },
                          "validator": {
                            "type": "object",
                            "properties": {
                              "pubkey": {
                                "type": "string",
                                "description": "The validator's BLS public key, uniquely identifying them. _48-bytes, hex encoded with 0x prefix, case insensitive"
                              },
                              "withdrawal_crendetials": {
                                "type": "string",
                                "description": "The root of withdrawal credentials"
                              },
                              "effective_balance": {
                                "type": "string",
                                "description": "The balance at stake in Gwei"
                              },
                              "slashed": {
                                "type": "string",
                                "description": "Was validator slashed (not longer active)"
                              },
                              "activation_elgibility_epoch": {
                                "type": "string",
                                "description": "When criteria for activation were met"
                              },
                              "activation_epoch": {
                                "type": "string",
                                "description": "Epoch when validator activated. FAR_FUTURE_EPOCH if not activated"
                              },
                              "exit_epoch": {
                                "type": "string",
                                "description": "Epoch when validator exited"
                              },
                              "withdrawable_epoch": {
                                "type": "string",
                                "description": "When validator can withdraw or transfer funds. FAR_FUTURE_EPOCH if not defined"
                              }
                            },
                            "description": "The object with the following fields:"
                          }
                        }
                      },
                      "description": "The object with the following fields:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/beacon/states/{state_id}/validators/{validator_id}": {
      "get": {
        "operationId": "get_eth_v1_beacon_states_by_state_id_validators_by_validator_id",
        "summary": "Returns a validator specified by state and id or the public key along with status and balance.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-beacon-states-state_id-validators-validator_id"
        },
        "parameters": [
          {
            "name": "state_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
            },
            "required": true,
            "description": "The state identifier. It can be one of: head (canonical head in node's view), genesis, finalized, justified, slot and stateRoot (hex encoded stateRoot with 0x prefix)"
          },
          {
            "name": "validator_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "Either hex encoded public key (any bytes48 with 0x prefix) or validator index"
            },
            "required": true,
            "description": "Either hex encoded public key (any bytes48 with 0x prefix) or validator index"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "It's true if the response references an unverified execution payload. Optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                    },
                    "data": {
                      "type": "object",
                      "properties": {
                        "index": {
                          "type": "string",
                          "description": "The index of validator in validator registry"
                        },
                        "balance": {
                          "type": "string",
                          "description": "The current validator balance in gwei"
                        },
                        "status": {
                          "type": "string",
                          "description": "The possible values for status:"
                        },
                        "validator": {
                          "type": "object",
                          "properties": {
                            "pubkey": {
                              "type": "string",
                              "description": "The validator's BLS public key, uniquely identifying them. _48-bytes, hex encoded with 0x prefix, case insensitive"
                            },
                            "withdrawal_crendetials": {
                              "type": "string",
                              "description": "The root of withdrawal credentials"
                            },
                            "effective_balance": {
                              "type": "string",
                              "description": "The balance at stake in Gwei"
                            },
                            "slashed": {
                              "type": "string",
                              "description": "The validator is slashed (not longer active) or not"
                            },
                            "activation_elgibility_epoch": {
                              "type": "string",
                              "description": "When criteria for activation were met"
                            },
                            "activation_epoch": {
                              "type": "string",
                              "description": "Epoch when validator activated. FAR_FUTURE_EPOCH if not activated"
                            },
                            "exit_epoch": {
                              "type": "string",
                              "description": "Epoch when validator exited"
                            },
                            "withdrawable_epoch": {
                              "type": "string",
                              "description": "When validator can withdraw or transfer funds. FAR_FUTURE_EPOCH if not defined"
                            }
                          },
                          "description": "The object with the following fields:"
                        }
                      },
                      "description": "The object with the following fields:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/config/deposit_contract": {
      "get": {
        "operationId": "get_eth_v1_config_deposit_contract",
        "summary": "Get deposit contract address.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-config-deposit_contract"
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "chain_id": {
                          "type": "string",
                          "description": "The unique identifier for the blockchain network"
                        },
                        "address": {
                          "type": "string",
                          "description": "The Ethereum address associated with the contract or account"
                        }
                      },
                      "description": "An object of data which contains the following fields:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/config/fork_schedule": {
      "get": {
        "operationId": "get_eth_v1_config_fork_schedule",
        "summary": "Obtain all forks—past, present, and future—recognized by this node",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-config-fork_schedule"
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "previous_version": {
                            "type": "string",
                            "description": "The fork version of the protocol before this upgrade"
                          },
                          "current_version": {
                            "type": "string",
                            "description": "The fork version of the protocol after this upgrade"
                          },
                          "epoch": {
                            "type": "string",
                            "description": "The epoch number at which this fork activates"
                          }
                        }
                      },
                      "description": "An array of fork transition objects, where each object represents a protocol upgrade and its activation parameters"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/config/spec": {
      "get": {
        "operationId": "get_eth_v1_config_spec",
        "summary": "Get spec params.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-config-spec"
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "CONFIG_NAME": {
                          "type": "string",
                          "description": "The name of the configuration preset"
                        },
                        "PRESET_BASE": {
                          "type": "string",
                          "description": "The base preset for the configuration"
                        },
                        "TERMINAL_TOTAL_DIFFICULTY": {
                          "type": "string",
                          "description": "The total difficulty of the terminal block that triggers the merge to Proof of Stake"
                        },
                        "TERMINAL_BLOCK_HASH": {
                          "type": "string",
                          "description": "The block hash of the terminal block"
                        },
                        "TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH": {
                          "type": "string",
                          "description": "The epoch at which the terminal block hash becomes active"
                        },
                        "SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY": {
                          "type": "string",
                          "description": "Number of safe slots to import optimistically"
                        },
                        "MIN_GENESIS_ACTIVE_VALIDATOR_COUNT": {
                          "type": "string",
                          "description": "Minimum number of active validators required to trigger genesis"
                        },
                        "MIN_GENESIS_TIME": {
                          "type": "string",
                          "description": "The minimum timestamp for the genesis block"
                        },
                        "GENESIS_FORK_VERSION": {
                          "type": "string",
                          "description": "The fork version for the genesis block"
                        },
                        "GENESIS_DELAY": {
                          "type": "string",
                          "description": "Delay in seconds from MIN_GENESIS_TIME until the genesis block"
                        },
                        "ALTAIR_FORK_VERSION": {
                          "type": "string",
                          "description": "Fork version for the Altair upgrade"
                        },
                        "ALTAIR_FORK_EPOCH": {
                          "type": "string",
                          "description": "Epoch at which the Altair fork activates"
                        },
                        "BELLATRIX_FORK_VERSION": {
                          "type": "string",
                          "description": "Fork version for the Bellatrix upgrade"
                        },
                        "BELLATRIX_FORK_EPOCH": {
                          "type": "string",
                          "description": "Epoch at which the Bellatrix fork activates"
                        },
                        "CAPELLA_FORK_VERSION": {
                          "type": "string",
                          "description": "Fork version for the Capella upgrade"
                        },
                        "CAPELLA_FORK_EPOCH": {
                          "type": "string",
                          "description": "Epoch at which the Capella fork activates"
                        },
                        "DENEB_FORK_VERSION": {
                          "type": "string",
                          "description": "Fork version for the Deneb upgrade"
                        },
                        "DENEB_FORK_EPOCH": {
                          "type": "string",
                          "description": "Epoch at which the Deneb fork activates"
                        },
                        "SECONDS_PER_SLOT": {
                          "type": "string",
                          "description": "Number of seconds per slot"
                        },
                        "SECONDS_PER_ETH1_BLOCK": {
                          "type": "string",
                          "description": "Number of seconds per Ethereum 1.0 block"
                        },
                        "MIN_VALIDATOR_WITHDRAWABILITY_DELAY": {
                          "type": "string",
                          "description": "Minimum delay in epochs before a validator can withdraw"
                        },
                        "SHARD_COMMITTEE_PERIOD": {
                          "type": "string",
                          "description": "Number of epochs between reassigning shard committees"
                        },
                        "ETH1_FOLLOW_DISTANCE": {
                          "type": "string",
                          "description": "Distance in blocks to follow the Ethereum 1.0 chain"
                        },
                        "SUBNETS_PER_NODE": {
                          "type": "string",
                          "description": "Number of subnets each node should subscribe to"
                        },
                        "INACTIVITY_SCORE_BIAS": {
                          "type": "string",
                          "description": "Inactivity score bias factor"
                        },
                        "INACTIVITY_SCORE_RECOVERY_RATE": {
                          "type": "string",
                          "description": "Rate at which the inactivity score recovers"
                        },
                        "EJECTION_BALANCE": {
                          "type": "string",
                          "description": "Balance below which validators are ejected"
                        },
                        "MIN_PER_EPOCH_CHURN_LIMIT": {
                          "type": "string",
                          "description": "Minimum number of validators that can churn per epoch"
                        },
                        "MAX_PER_EPOCH_ACTIVATION_CHURN_LIMIT": {
                          "type": "string",
                          "description": "Maximum number of validators that can activate per epoch"
                        },
                        "CHURN_LIMIT_QUOTIENT": {
                          "type": "string",
                          "description": "Quotient used to calculate the churn limit"
                        },
                        "PROPOSER_SCORE_BOOST": {
                          "type": "string",
                          "description": "Boost factor for proposer scores"
                        },
                        "DEPOSIT_CHAIN_ID": {
                          "type": "string",
                          "description": "Chain ID for the deposit contract"
                        },
                        "DEPOSIT_NETWORK_ID": {
                          "type": "string",
                          "description": "Network ID for the deposit contract"
                        },
                        "DEPOSIT_CONTRACT_ADDRESS": {
                          "type": "string",
                          "description": "Address of the deposit contract"
                        },
                        "GOSSIP_MAX_SIZE": {
                          "type": "string",
                          "description": "Maximum size in bytes for gossip messages"
                        },
                        "MAX_REQUEST_BLOCKS": {
                          "type": "string",
                          "description": "Maximum number of blocks that can be requested"
                        },
                        "EPOCHS_PER_SUBNET_SUBSCRIPTION": {
                          "type": "string",
                          "description": "Number of epochs to subscribe to a subnet"
                        },
                        "MIN_EPOCHS_FOR_BLOCK_REQUESTS": {
                          "type": "string",
                          "description": "Minimum number of epochs for block requests"
                        },
                        "MAX_CHUNK_SIZE": {
                          "type": "string",
                          "description": "Maximum chunk size for requests"
                        },
                        "TTFB_TIMEOUT": {
                          "type": "string",
                          "description": "Time to first byte timeout in seconds"
                        },
                        "RESP_TIMEOUT": {
                          "type": "string",
                          "description": "Response timeout in seconds"
                        },
                        "ATTESTATION_PROPAGATION_SLOT_RANGE": {
                          "type": "string",
                          "description": "Slot range for attestation propagation"
                        },
                        "MAXIMUM_GOSSIP_CLOCK_DISPARITY_MILLIS": {
                          "type": "string",
                          "description": "Maximum clock disparity in milliseconds for gossip messages"
                        },
                        "MESSAGE_DOMAIN_INVALID_SNAPPY": {
                          "type": "string",
                          "description": "Domain for invalid Snappy messages"
                        },
                        "MESSAGE_DOMAIN_VALID_SNAPPY": {
                          "type": "string",
                          "description": "Domain for valid Snappy messages"
                        },
                        "ATTESTATION_SUBNET_EXTRA_BITS": {
                          "type": "string",
                          "description": "Extra bits for attestation subnets"
                        },
                        "ATTESTATION_SUBNET_PREFIX_BITS": {
                          "type": "string",
                          "description": "Prefix bits for attestation subnets"
                        },
                        "ATTESTATION_SUBNET_SHUFFLING_PREFIX_BITS": {
                          "type": "string",
                          "description": "Shuffling prefix bits for attestation subnets"
                        },
                        "MAX_REQUEST_BLOCKS_DENEB": {
                          "type": "string",
                          "description": "Maximum number of blocks that can be requested in Deneb"
                        },
                        "MAX_REQUEST_BLOB_SIDECARS": {
                          "type": "string",
                          "description": "Maximum number of blob sidecars that can be requested"
                        },
                        "MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS": {
                          "type": "string",
                          "description": "Minimum number of epochs for blob sidecar requests"
                        },
                        "BLOB_SIDECAR_SUBNET_COUNT": {
                          "type": "string",
                          "description": "Number of subnets for blob sidecars"
                        },
                        "MAX_COMMITTEES_PER_SLOT": {
                          "type": "string",
                          "description": "Maximum number of committees per slot"
                        },
                        "TARGET_COMMITTEE_SIZE": {
                          "type": "string",
                          "description": "Target size of committees"
                        },
                        "MAX_VALIDATORS_PER_COMMITTEE": {
                          "type": "string",
                          "description": "Maximum number of validators per committee"
                        },
                        "SHUFFLE_ROUND_COUNT": {
                          "type": "string",
                          "description": "Number of rounds for shuffling"
                        },
                        "HYSTERESIS_QUOTIENT": {
                          "type": "string",
                          "description": "Hysteresis quotient"
                        },
                        "HYSTERESIS_DOWNWARD_MULTIPLIER": {
                          "type": "string",
                          "description": "Downward multiplier for hysteresis"
                        },
                        "HYSTERESIS_UPWARD_MULTIPLIER": {
                          "type": "string",
                          "description": "Upward multiplier for hysteresis"
                        },
                        "SAFE_SLOTS_TO_UPDATE_JUSTIFIED": {
                          "type": "string",
                          "description": "Safe slots to update justified checkpoints"
                        },
                        "MIN_DEPOSIT_AMOUNT": {
                          "type": "string",
                          "description": "Minimum deposit amount"
                        },
                        "MAX_EFFECTIVE_BALANCE": {
                          "type": "string",
                          "description": "Maximum effective balance"
                        },
                        "EFFECTIVE_BALANCE_INCREMENT": {
                          "type": "string",
                          "description": "Increment for effective balance"
                        },
                        "MIN_ATTESTATION_INCLUSION_DELAY": {
                          "type": "string",
                          "description": "Minimum delay for attestation inclusion"
                        },
                        "SLOTS_PER_EPOCH": {
                          "type": "string",
                          "description": "Number of slots per epoch"
                        },
                        "MIN_SEED_LOOKAHEAD": {
                          "type": "string",
                          "description": "Minimum seed lookahead"
                        },
                        "MAX_SEED_LOOKAHEAD": {
                          "type": "string",
                          "description": "Maximum seed lookahead"
                        },
                        "EPOCHS_PER_ETH1_VOTING_PERIOD": {
                          "type": "string",
                          "description": "Number of epochs per Ethereum 1.0 voting period"
                        },
                        "SLOTS_PER_HISTORICAL_ROOT": {
                          "type": "string",
                          "description": "Number of slots per historical root"
                        },
                        "MIN_EPOCHS_TO_INACTIVITY_PENALTY": {
                          "type": "string",
                          "description": "Minimum epochs to inactivity penalty"
                        },
                        "EPOCHS_PER_HISTORICAL_VECTOR": {
                          "type": "string",
                          "description": "Number of epochs per historical vector"
                        },
                        "EPOCHS_PER_SLASHINGS_VECTOR": {
                          "type": "string",
                          "description": "Number of epochs per slashings vector"
                        },
                        "HISTORICAL_ROOTS_LIMIT": {
                          "type": "string",
                          "description": "Limit for historical roots"
                        },
                        "VALIDATOR_REGISTRY_LIMIT": {
                          "type": "string",
                          "description": "Limit for the validator registry"
                        },
                        "BASE_REWARD_FACTOR": {
                          "type": "string",
                          "description": "Factor for base rewards"
                        },
                        "WHISTLEBLOWER_REWARD_QUOTIENT": {
                          "type": "string",
                          "description": "Quotient for whistleblower rewards"
                        },
                        "PROPOSER_REWARD_QUOTIENT": {
                          "type": "string",
                          "description": "Quotient for proposer rewards"
                        },
                        "INACTIVITY_PENALTY_QUOTIENT": {
                          "type": "string",
                          "description": "Quotient for inactivity penalties"
                        },
                        "MIN_SLASHING_PENALTY_QUOTIENT": {
                          "type": "string",
                          "description": "Quotient for minimum slashing penalties"
                        },
                        "PROPORTIONAL_SLASHING_MULTIPLIER": {
                          "type": "string",
                          "description": "Multiplier for proportional slashing"
                        },
                        "MAX_PROPOSER_SLASHINGS": {
                          "type": "string",
                          "description": "Maximum number of proposer slashings"
                        },
                        "MAX_ATTESTER_SLASHINGS": {
                          "type": "string",
                          "description": "Maximum number of attester slashings"
                        },
                        "MAX_ATTESTATIONS": {
                          "type": "string",
                          "description": "Maximum number of attestations"
                        },
                        "MAX_DEPOSITS": {
                          "type": "string",
                          "description": "Maximum number of deposits"
                        },
                        "MAX_VOLUNTARY_EXITS": {
                          "type": "string",
                          "description": "Maximum number of voluntary exits"
                        },
                        "INACTIVITY_PENALTY_QUOTIENT_ALTAIR": {
                          "type": "string",
                          "description": "Inactivity penalty quotient for Altair"
                        },
                        "MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR": {
                          "type": "string",
                          "description": "Minimum slashing penalty quotient for Altair"
                        },
                        "PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR": {
                          "type": "string",
                          "description": "Proportional slashing multiplier for Altair"
                        },
                        "SYNC_COMMITTEE_SIZE": {
                          "type": "string",
                          "description": "Size of the sync committee"
                        },
                        "EPOCHS_PER_SYNC_COMMITTEE_PERIOD": {
                          "type": "string",
                          "description": "Number of epochs per sync committee period"
                        },
                        "MIN_SYNC_COMMITTEE_PARTICIPANTS": {
                          "type": "string",
                          "description": "Minimum number of participants in the sync committee"
                        },
                        "INACTIVITY_PENALTY_QUOTIENT_BELLATRIX": {
                          "type": "string",
                          "description": "Inactivity penalty quotient for Bellatrix"
                        },
                        "MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX": {
                          "type": "string",
                          "description": "Minimum slashing penalty quotient for Bellatrix"
                        },
                        "PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX": {
                          "type": "string",
                          "description": "Proportional slashing multiplier for Bellatrix"
                        },
                        "MAX_BYTES_PER_TRANSACTION": {
                          "type": "string",
                          "description": "Maximum bytes per transaction"
                        },
                        "MAX_TRANSACTIONS_PER_PAYLOAD": {
                          "type": "string",
                          "description": "Maximum transactions per payload"
                        },
                        "BYTES_PER_LOGS_BLOOM": {
                          "type": "string",
                          "description": "Bytes per logs bloom"
                        },
                        "MAX_EXTRA_DATA_BYTES": {
                          "type": "string",
                          "description": "Maximum extra data bytes"
                        },
                        "MAX_BLS_TO_EXECUTION_CHANGES": {
                          "type": "string",
                          "description": "Maximum BLS to execution changes"
                        },
                        "MAX_WITHDRAWALS_PER_PAYLOAD": {
                          "type": "string",
                          "description": "Maximum withdrawals per payload"
                        },
                        "MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP": {
                          "type": "string",
                          "description": "Maximum validators per withdrawals sweep"
                        },
                        "MAX_BLOBS_PER_BLOCK": {
                          "type": "string",
                          "description": "Maximum blobs per block"
                        },
                        "MAX_BLOB_COMMITMENTS_PER_BLOCK": {
                          "type": "string",
                          "description": "Maximum blob commitments per block"
                        },
                        "FIELD_ELEMENTS_PER_BLOB": {
                          "type": "string",
                          "description": "Field elements per blob"
                        },
                        "TARGET_AGGREGATORS_PER_SYNC_SUBCOMMITTEE": {
                          "type": "string",
                          "description": "Target aggregators per sync subcommittee"
                        },
                        "TARGET_AGGREGATORS_PER_COMMITTEE": {
                          "type": "string",
                          "description": "Target aggregators per committee"
                        },
                        "DOMAIN_SYNC_COMMITTEE_SELECTION_PROOF": {
                          "type": "string",
                          "description": "Domain for sync committee selection proof"
                        },
                        "DOMAIN_RANDAO": {
                          "type": "string",
                          "description": "Domain for RANDAO"
                        },
                        "DOMAIN_DEPOSIT": {
                          "type": "string",
                          "description": "Domain for deposits"
                        },
                        "DOMAIN_VOLUNTARY_EXIT": {
                          "type": "string",
                          "description": "Domain for voluntary exits"
                        },
                        "BLS_WITHDRAWAL_PREFIX": {
                          "type": "string",
                          "description": "Prefix for BLS withdrawals"
                        },
                        "DOMAIN_SELECTION_PROOF": {
                          "type": "string",
                          "description": "Domain for selection proofs"
                        },
                        "SYNC_COMMITTEE_SUBNET_COUNT": {
                          "type": "string",
                          "description": "Number of sync committee subnets"
                        },
                        "DOMAIN_CONTRIBUTION_AND_PROOF": {
                          "type": "string",
                          "description": "Domain for contribution and proof"
                        },
                        "DOMAIN_BEACON_ATTESTER": {
                          "type": "string",
                          "description": "Domain for beacon attesters"
                        },
                        "DOMAIN_AGGREGATE_AND_PROOF": {
                          "type": "string",
                          "description": "Domain for aggregate and proof"
                        },
                        "DOMAIN_SYNC_COMMITTEE": {
                          "type": "string",
                          "description": "Domain for sync committee"
                        },
                        "DOMAIN_APPLICATION_MASK": {
                          "type": "string",
                          "description": "Domain for application mask"
                        },
                        "DOMAIN_BEACON_PROPOSER": {
                          "type": "string",
                          "description": "Domain for beacon proposer"
                        }
                      },
                      "description": "The data object which contains the following fields:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/debug/beacon/data_column_sidecars/{block_id}": {
      "get": {
        "operationId": "get_eth_v1_debug_beacon_data_column_sidecars_by_block_id",
        "summary": "Retrieves data column sidecars for a given block id.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-debug-beacon-data_column_sidecars-block_id"
        },
        "description": "Retrieves data column sidecars for a given block id. Depending on Accept header it can be returned either as json or as bytes serialized by SSZ. If the indices parameter is specified, only the data column sidecars with the specified indices will be returned. There are no guarantees for the returned data column sidecars in terms of ordering.",
        "parameters": [
          {
            "name": "block_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "Block identifier. Can be one of: \"head\" (canonical head in node's view), \"genesis\", \"finalized\", <slot>, <hex encoded blockRoot with 0x prefix>"
            },
            "required": true,
            "description": "Block identifier. Can be one of: \"head\" (canonical head in node's view), \"genesis\", \"finalized\", <slot>, <hex encoded blockRoot with 0x prefix>"
          },
          {
            "name": "indices",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {},
              "description": "Array of indices for data column sidecars to request for in the specified block. This endpoint will only return columns that the node is actually custodying. If not specified, returns all data column sidecars that this node is custodying in the block"
            },
            "description": "Array of indices for data column sidecars to request for in the specified block. This endpoint will only return columns that the node is actually custodying. If not specified, returns all data column sidecars that this node is custodying in the block"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "version": {
                      "type": "string",
                      "description": "The consensus version (fulu)"
                    },
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "True if the response references an unverified execution payload. Optimistic information may be invalidated at a later time. If the field is not present, assume the False value"
                    },
                    "finalized": {
                      "type": "boolean",
                      "description": "True if the response references the finalized history of the chain, as determined by fork choice. If the field is not present, additional calls are necessary to compare the epoch of the requested information with the finalized checkpoint"
                    },
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "index": {
                            "type": "string",
                            "description": "The index of the data column sidecar"
                          },
                          "column": {
                            "type": "array",
                            "items": {},
                            "description": "Array of hex strings representing cells. A data column is FIELD_ELEMENTS_PER_CELL * size_of(BLSFieldElement) = 64 * 32 = 2048 bytes representing a Cell as defined in Fulu"
                          },
                          "kzg_commitments": {
                            "type": "array",
                            "items": {},
                            "description": "Array of KZG commitments. A G1 curve point, same as BLS standard \"is valid pubkey\" check but also allows 0x00..00 for point-at-infinity"
                          },
                          "kzg_proofs": {
                            "type": "array",
                            "items": {},
                            "description": "Array of KZG proofs. A G1 curve point used for verifying that the KZGCommitment for a given Blob is correct"
                          },
                          "signed_block_header": {
                            "type": "object",
                            "properties": {
                              "message": {
                                "type": "object",
                                "properties": {
                                  "slot": {
                                    "type": "string",
                                    "description": "The slot to which this block corresponds"
                                  },
                                  "proposer_index": {
                                    "type": "string",
                                    "description": "Index of validator in validator registry"
                                  },
                                  "parent_root": {
                                    "type": "string",
                                    "description": "The signing merkle root of the parent BeaconBlock"
                                  },
                                  "state_root": {
                                    "type": "string",
                                    "description": "The tree hash merkle root of the BeaconState for the BeaconBlock"
                                  },
                                  "body_root": {
                                    "type": "string",
                                    "description": "The tree hash merkle root of the BeaconBlockBody for the BeaconBlock"
                                  }
                                },
                                "description": "The BeaconBlockHeader object from the CL spec"
                              },
                              "signature": {
                                "type": "string",
                                "description": "The BLS signature of the block header"
                              }
                            },
                            "description": "The SignedBeaconBlockHeader object envelope from the CL spec"
                          },
                          "kzg_commitments_inclusion_proof": {
                            "type": "array",
                            "items": {},
                            "description": "Array of merkle proof hashes for KZG commitments inclusion"
                          }
                        }
                      },
                      "description": "Array of DataColumnSidecar objects as defined in the Fulu consensus spec"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/events": {
      "get": {
        "operationId": "get_eth_v1_events",
        "summary": "Subscribe to beacon node events.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-events"
        },
        "parameters": [
          {
            "name": "topics",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "The event types to subscribe to. The available values: head, block, block_gossip, attestation, single_attestation, voluntary_exit, bls_to_execution_change, proposer_slashing, attester_slashing, finalized_checkpoint, chain_reorg, contribution_and_proof, light_client_finality_update, light_client_optimistic_update, payload_attributes, blob_sidecar, data_column_sidecar."
            },
            "required": true,
            "description": "The event types to subscribe to. The available values: head, block, block_gossip, attestation, single_attestation, voluntary_exit, bls_to_execution_change, proposer_slashing, attester_slashing, finalized_checkpoint, chain_reorg, contribution_and_proof, light_client_finality_update, light_client_optimistic_update, payload_attributes, blob_sidecar, data_column_sidecar."
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "slot": {
                          "type": "string",
                          "description": "The corresponding slot"
                        },
                        "block": {
                          "type": "string",
                          "description": "The information about the specified block"
                        },
                        "state": {
                          "type": "string",
                          "description": "The activation state"
                        },
                        "current_duty_dependent_root": {
                          "type": "string",
                          "description": "The current duty dependent root"
                        },
                        "previous_duty_dependent_root": {
                          "type": "string",
                          "description": "The previous duty dependent root"
                        },
                        "epoch_transition": {
                          "type": "boolean",
                          "description": "The epoch transition"
                        },
                        "execution_optimistic": {
                          "type": "boolean",
                          "description": "It's true if the response references an unverified execution payload. The optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                        }
                      },
                      "description": "The object with the following values:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/node/peer_count": {
      "get": {
        "operationId": "get_eth_v1_node_peer_count",
        "summary": "Get peer count.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-node-peer_count"
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "disconnected": {
                            "type": "string",
                            "description": "Indicates the number of peers that are currently disconnected from the network"
                          },
                          "connecting": {
                            "type": "string",
                            "description": "Indicates the number of peers that are currently attempting to connect to the network"
                          },
                          "connected": {
                            "type": "string",
                            "description": "Indicates the number of peers that are currently connected to the network"
                          },
                          "disconnecting": {
                            "type": "string",
                            "description": "Indicates the number of peers that are currently in the process of disconnecting from the network"
                          }
                        }
                      },
                      "description": "An array of data which contains the following fields:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/node/peers": {
      "get": {
        "operationId": "get_eth_v1_node_peers",
        "summary": "Get node network peers.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-node-peers"
        },
        "parameters": [
          {
            "name": "state",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {},
              "description": "The state of the node which can be 'disconnected', 'connecting', 'connected', 'disconnecting'"
            },
            "description": "The state of the node which can be 'disconnected', 'connecting', 'connected', 'disconnecting'"
          },
          {
            "name": "direction",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {},
              "description": "The direction of the connection which can be -  'inbound' or 'outbound'"
            },
            "description": "The direction of the connection which can be -  'inbound' or 'outbound'"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "peer_id": {
                            "type": "string",
                            "description": "The unique identifier for the peer"
                          },
                          "enr": {
                            "type": "string",
                            "description": "The Ethereum Node Record (ENR) for the peer"
                          },
                          "last_seen_p2p_address": {
                            "type": "string",
                            "description": "The last known address for the peer"
                          },
                          "state": {
                            "type": "string",
                            "description": "The current connection state of the peer"
                          },
                          "direction": {
                            "type": "string",
                            "description": "The direction of the connection"
                          }
                        }
                      },
                      "description": "An array of data which contains the following fields:"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "count": {
                          "type": "integer",
                          "description": "The total number of peers"
                        }
                      },
                      "description": "The meta object which contains the following fields:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/node/syncing": {
      "get": {
        "operationId": "get_eth_v1_node_syncing",
        "summary": "Get node syncing status.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-node-syncing"
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "is_syncing": {
                          "type": "boolean",
                          "description": "A boolean value indicating if the node is in the process of synchronizing with the blockchain network"
                        },
                        "is_optimistic": {
                          "type": "boolean",
                          "description": "A boolean value indicating if the node is in an optimistic syncing state, meaning it assumes the network is operating correctly despite not being fully synced"
                        },
                        "el_offline": {
                          "type": "boolean",
                          "description": "A boolean value indicating if the execution layer (EL) of the node is currently offline"
                        },
                        "head_slot": {
                          "type": "string",
                          "description": "The slot number that represents the most recent block known to the node"
                        },
                        "sync_distance": {
                          "type": "string",
                          "description": "The distance in slots between the node's head slot and the latest slot, indicating how far the node is behind in syncing"
                        }
                      },
                      "description": "An object of data which contains the following fields:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/node/version": {
      "get": {
        "operationId": "get_eth_v1_node_version",
        "summary": "Get version string of the running beacon node.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-node-version"
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "version": {
                          "type": "string",
                          "description": "Indicates the node's version information"
                        }
                      },
                      "description": "An object of data which contains the following fields:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/validator/blinded_blocks/{slot}": {
      "get": {
        "operationId": "get_eth_v1_validator_blinded_blocks_by_slot",
        "summary": "Requests a beacon node to produce a valid blinded block, which can then be signed by a validator.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-validator-blinded_blocks-slot"
        },
        "parameters": [
          {
            "name": "slot",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The slot for which the block should be proposed"
            },
            "required": true,
            "description": "The slot for which the block should be proposed"
          },
          {
            "name": "randao_reveal",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "The validator's randao reveal value"
            },
            "required": true,
            "description": "The validator's randao reveal value"
          },
          {
            "name": "graffiti",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "The arbitrary data validator wants to include in block"
            },
            "description": "The arbitrary data validator wants to include in block"
          },
          {
            "name": "skip_randao_verification",
            "in": "query",
            "schema": {
              "type": "boolean",
              "description": "This flag allows a client to skip the verification of the RANDAO reveal field in the block header"
            },
            "description": "This flag allows a client to skip the verification of the RANDAO reveal field in the block header"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "version": {
                      "type": "string",
                      "description": "The enumeration of possible values: [ phase0, altair, bellatrix ]"
                    },
                    "data": {
                      "type": "object",
                      "properties": {
                        "slot": {
                          "type": "string",
                          "description": "The slot to which this block corresponds"
                        },
                        "proposer_index": {
                          "type": "string",
                          "description": "The index of validator in validator registry"
                        },
                        "parent_root": {
                          "type": "string",
                          "description": "The signing merkle root of the parent BeaconBlock"
                        },
                        "state_root": {
                          "type": "string",
                          "description": "The tree hash merkle root of the BeaconState for the BeaconBlock"
                        },
                        "body": {
                          "type": "object",
                          "properties": {
                            "randao_reveal": {
                              "type": "string",
                              "description": "The RanDAO reveal value provided by the validator"
                            },
                            "eth1_data": {
                              "type": "object",
                              "properties": {
                                "deposit_root": {
                                  "type": "string",
                                  "description": "The root of the deposit tree"
                                },
                                "deposit_count": {
                                  "type": "string",
                                  "description": "The total number of deposits"
                                },
                                "block_hash": {
                                  "type": "string",
                                  "description": "The Ethereum 1.x block hash"
                                }
                              },
                              "description": "The Eth1Data object from the CL spec"
                            },
                            "graffiti": {
                              "type": "string",
                              "description": "The graffiti value"
                            },
                            "proposer_slashings": {
                              "type": "array",
                              "items": {},
                              "description": "An array of ProposerSlashing objects from the CL spec"
                            },
                            "attester_slashings": {
                              "type": "array",
                              "items": {},
                              "description": "An array of AttesterSlashing objects from the CL spec"
                            },
                            "attestations": {
                              "type": "array",
                              "items": {},
                              "description": "An array of Attestation objects from the CL spec"
                            },
                            "deposits": {
                              "type": "array",
                              "items": {},
                              "description": "An array of Deposit objects from the CL spec"
                            },
                            "voluntary_exits": {
                              "type": "array",
                              "items": {},
                              "description": "An array of SignedVoluntaryExit objects from the CL spec"
                            }
                          },
                          "description": "The BeaconBlockBody object from the CL spec"
                        }
                      },
                      "description": "The BeaconBlock object from the CL spec that contains the following values:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/validator/duties/attester/{epoch}": {
      "get": {
        "operationId": "get_eth_v1_validator_duties_attester_by_epoch",
        "summary": "Requests the beacon node to provide a set of attestation duties, which should be performed by validators, for a particul",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-validator-duties-attester-epoch"
        },
        "description": "Requests the beacon node to provide a set of attestation duties, which should be performed by validators, for a particular epoch.",
        "parameters": [
          {
            "name": "epoch",
            "in": "path",
            "schema": {
              "type": "integer",
              "description": "The epoch value and it should only be allowed 1 epoch ahead"
            },
            "required": true,
            "description": "The epoch value and it should only be allowed 1 epoch ahead"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "validator_indices": {
                    "type": "array",
                    "items": {},
                    "description": "An array of the validator indices for which to obtain the duties"
                  }
                },
                "required": [
                  "validator_indices"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "dependent_root": {
                      "type": "string",
                      "description": "The hash representing the root on which the attestation duties depend"
                    },
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "The boolean indicating if the execution layer state is optimistic"
                    },
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "pubkey": {
                            "type": "string",
                            "description": "The public key of the validator assigned to attest"
                          },
                          "validator_index": {
                            "type": "string",
                            "description": "The index of the validator within the registry"
                          },
                          "committees_at_slot": {
                            "type": "string",
                            "description": "The number of committees in the specified slot"
                          },
                          "committee_index": {
                            "type": "string",
                            "description": "The index of the committee the validator is assigned to"
                          },
                          "committee_length": {
                            "type": "string",
                            "description": "The total number of validators in the assigned committee"
                          },
                          "validator_committee_index": {
                            "type": "string",
                            "description": "The position of the validator within the committee"
                          },
                          "slot": {
                            "type": "string",
                            "description": "The specific slot for which the attestation duty is assigned"
                          }
                        }
                      },
                      "description": "An array of data which contains following fields:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/validator/duties/proposer/{epoch}": {
      "get": {
        "operationId": "get_eth_v1_validator_duties_proposer_by_epoch",
        "summary": "Requests that the beacon node provides all scheduled validators a block to propose for in the given epoch.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-validator-duties-proposer-epoch"
        },
        "parameters": [
          {
            "name": "epoch",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The Epoch number"
            },
            "required": true,
            "description": "The Epoch number"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "dependent_root": {
                      "type": "string",
                      "description": "The block root that this response is dependent on"
                    },
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "It's true if the response references an unverified execution payload. The optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                    },
                    "data": {
                      "type": "object",
                      "properties": {
                        "pubkey": {
                          "type": "string",
                          "description": "The validator's BLS public key, uniquely identifying them. _48-bytes, hex encoded with 0x prefix, case insensitive"
                        },
                        "validator_index": {
                          "type": "boolean",
                          "description": "The index of validator in validator registry"
                        },
                        "slot": {
                          "type": "array",
                          "items": {},
                          "description": "The slot at which the validator must propose block"
                        }
                      },
                      "description": "The object with the following values:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/validator/duties/sync/{epoch}": {
      "get": {
        "operationId": "get_eth_v1_validator_duties_sync_by_epoch",
        "summary": "Retrieves the sync committee duties for specified validators during a target epoch.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-validator-duties-sync-epoch"
        },
        "parameters": [
          {
            "name": "epoch",
            "in": "path",
            "schema": {
              "type": "integer",
              "description": "The epoch value for which to request sync committee duties. "
            },
            "required": true,
            "description": "The epoch value for which to request sync committee duties. "
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "validator_indices": {
                    "type": "array",
                    "items": {},
                    "description": "An array of validator indices for which to obtain sync committee duties. Each index identifies a specific validator in the beacon chain's validator registry"
                  }
                },
                "required": [
                  "validator_indices"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "Whether the response is based on optimistic or finalized data. If true, the duties response is based on the optimistic (non-finalized) head. Clients should wait for finalization if they need stronger guarantees"
                    },
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "pubkey": {
                            "type": "string",
                            "description": "The validator's BLS public key, encoded as a hexadecimal string with '0x' prefix"
                          },
                          "validator_index": {
                            "type": "string",
                            "description": "Index of the validator in the beacon state's validator registry, represented as a string containing a decimal number"
                          },
                          "validator_sync_committee_indices": {
                            "type": "array",
                            "items": {},
                            "description": "Array of indices indicating the validator's positions within the sync committee. A validator may have multiple positions. Each index is represented as a string containing a decimal number from 0 to 511 (sync committee size - 1)"
                          }
                        }
                      },
                      "description": "Array of validator sync committee duties, one entry per requested validator that is selected for sync committee duties in the specified epoch"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v1/validator/sync_committee_contribution": {
      "get": {
        "operationId": "get_eth_v1_validator_sync_committee_contribution",
        "summary": "Requests that the beacon node produces a sync committee contribution.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v1-validator-sync_committee_contribution"
        },
        "parameters": [
          {
            "name": "slot",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "The slot for which a sync committee contribution should be created"
            },
            "required": true,
            "description": "The slot for which a sync committee contribution should be created"
          },
          {
            "name": "subcommittee_index",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "The subcommittee index for which to produce the contribution"
            },
            "required": true,
            "description": "The subcommittee index for which to produce the contribution"
          },
          {
            "name": "beacon_block_root",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "The block root for which to produce the contribution"
            },
            "required": true,
            "description": "The block root for which to produce the contribution"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "slot": {
                          "type": "string",
                          "description": "The slot at which the validator is providing a sync committee contribution"
                        },
                        "beacon_block_root": {
                          "type": "string",
                          "description": "The block root for this contribution"
                        },
                        "subcommittee_index": {
                          "type": "string",
                          "description": "The index of the subcommittee that the contribution pertains to"
                        },
                        "aggregation_bits": {
                          "type": "string",
                          "description": "A bit is set if a signature from the validator at the corresponding index in the subcommittee is present in the aggregate signature"
                        },
                        "signature": {
                          "type": "string",
                          "description": "The signature by the validator(s) over the block root of slot"
                        }
                      },
                      "description": "The object with the following values:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v2/beacon/blocks/{block_id}": {
      "get": {
        "operationId": "get_eth_v2_beacon_blocks_by_block_id",
        "summary": "Retrieves the block details for a given block id.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v2-beacon-blocks-block_id"
        },
        "parameters": [
          {
            "name": "block_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "The state identifier. It can be a slot number, blockRoot (encoded in hexadecimal format) or tags (Supported tags include - head (canonical head in node's view), genesis, finalized or justified)"
            },
            "required": true,
            "description": "The state identifier. It can be a slot number, blockRoot (encoded in hexadecimal format) or tags (Supported tags include - head (canonical head in node's view), genesis, finalized or justified)"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "version": {
                      "type": "string",
                      "description": "The enumeration. The possible values could be: phase0, altair, bellatrix"
                    },
                    "data": {
                      "type": "object",
                      "properties": {
                        "message": {
                          "type": "object",
                          "properties": {
                            "slot": {
                              "type": "string",
                              "description": "The slot to which this block corresponds"
                            },
                            "proposer_index": {
                              "type": "string",
                              "description": "Index of validator in validator registry"
                            },
                            "parent_root": {
                              "type": "string",
                              "description": "The signing merkle root of the parent BeaconBlock"
                            },
                            "state_root": {
                              "type": "string",
                              "description": "The tree hash merkle root of the BeaconState for the BeaconBlock"
                            },
                            "body": {
                              "type": "object",
                              "description": "The BeaconBlockBody object from the CL spec"
                            }
                          },
                          "description": "The BeaconBlock object from the CL spec"
                        },
                        "signature": {
                          "type": "string",
                          "description": "The signature"
                        }
                      },
                      "description": " The object with the following values:"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/eth/v2/debug/beacon/states/{state_id}": {
      "get": {
        "operationId": "get_eth_v2_debug_beacon_states_by_state_id",
        "summary": "Returns full BeaconState object for a given stateId.",
        "tags": [
          "eth"
        ],
        "externalDocs": {
          "description": "Quicknode docs",
          "url": "https://www.quicknode.com/docs/ethereum/eth-v2-debug-beacon-states-state_id"
        },
        "description": "Returns full BeaconState object for a given stateId. Depending on Accept header it can be returned either as json or as bytes serialized by SSZ.",
        "parameters": [
          {
            "name": "state_id",
            "in": "path",
            "schema": {
              "type": "string",
              "description": "Specifies the state ID to retrieve. Can be one of: head (canonical head in node's view), genesis, finalized, justified, <slot>, <hex encoded stateRoot with 0x prefix>"
            },
            "required": true,
            "description": "Specifies the state ID to retrieve. Can be one of: head (canonical head in node's view), genesis, finalized, justified, <slot>, <hex encoded stateRoot with 0x prefix>"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "version": {
                      "type": "string",
                      "description": "Version values such as phase0, altair, bellatrix, capella, and deneb"
                    },
                    "execution_optimistic": {
                      "type": "boolean",
                      "description": "True if the response references an unverified execution payload. Optimistic information may be invalidated at a later time. If the field is not present, assume the false value"
                    },
                    "finalized": {
                      "type": "boolean",
                      "description": "Indicates whether the state is finalized or not"
                    },
                    "data": {
                      "type": "object",
                      "properties": {
                        "genesis_time": {
                          "type": "string",
                          "description": "The genesis time of the beacon chain"
                        },
                        "genesis_validators_root": {
                          "type": "string",
                          "description": "The root hash of the genesis validators"
                        },
                        "slot": {
                          "type": "string",
                          "description": "The current slot of the beacon chain"
                        },
                        "fork": {
                          "type": "object",
                          "properties": {
                            "previous_version": {
                              "type": "string",
                              "description": "The fork version before the current version"
                            },
                            "current_version": {
                              "type": "string",
                              "description": "The current fork version"
                            },
                            "epoch": {
                              "type": "string",
                              "description": "The epoch at which the current fork version was introduced"
                            }
                          },
                          "description": "Information about the current and previous fork versions and the epoch at which the current version was introduced"
                        },
                        "latest_block_header": {
                          "type": "object",
                          "properties": {
                            "slot": {
                              "type": "string",
                              "description": "The slot of the latest block"
                            },
                            "proposer_index": {
                              "type": "string",
                              "description": "The index of the proposer of the latest block"
                            },
                            "parent_root": {
                              "type": "string",
                              "description": "The root of the parent block"
                            },
                            "state_root": {
                              "type": "string",
                              "description": "The root of the state at the time of this block"
                            },
                            "body_root": {
                              "type": "string",
                              "description": "The root of the block body"
                            }
                          },
                          "description": "The latest block header information"
                        },
                        "block_roots": {
                          "type": "array",
                          "items": {},
                          "description": "An array of block root hashes"
                        },
                        "state_roots": {
                          "type": "array",
                          "items": {},
                          "description": "An array of state root hashes"
                        },
                        "historical_roots": {
                          "type": "array",
                          "items": {},
                          "description": "An array of historical root hashes"
                        },
                        "eth1_data": {
                          "type": "object",
                          "properties": {
                            "deposit_root": {
                              "type": "string",
                              "description": "An deposit root"
                            },
                            "deposit_count": {
                              "type": "string",
                              "description": "An deposit count value"
                            },
                            "block_hash": {
                              "type": "string",
                              "description": "An block hash string"
                            }
                          },
                          "description": "An object of eth1 data"
                        },
                        "eth1_data_votes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "deposit_root": {
                                "type": "string",
                                "description": "An deposit root"
                              },
                              "deposit_count": {
                                "type": "string",
                                "description": "An deposit count value"
                              },
                              "block_hash": {
                                "type": "string",
                                "description": "An block hash string"
                              }
                            }
                          },
                          "description": "An array of eth1 data votes"
                        },
                        "eth1_deposit_index": {
                          "type": "string",
                          "description": "An string of the deposit index"
                        },
                        "validators": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "pubkey": {
                                "type": "string",
                                "description": "The validator's BLS public key, uniquely identifying them. 48-bytes, hex encoded with 0x prefix, case insensitive"
                              },
                              "withdraw_credentials": {
                                "type": "string",
                                "description": "Root of withdrawal credentials"
                              },
                              "effective_balance": {
                                "type": "string",
                                "description": "Balance at stake in Gwei"
                              },
                              "slashed": {
                                "type": "boolean",
                                "description": "Was validator slashed (not longer active)"
                              },
                              "activation_elgibility_epoch": {
                                "type": "string",
                                "description": "When criteria for activation were met"
                              },
                              "activation_epoch": {
                                "type": "string",
                                "description": "Epoch when validator activated. 'FAR_FUTURE_EPOCH' if not activated"
                              },
                              "exit_epoch": {
                                "type": "string",
                                "description": "Epoch when validator exited. 'FAR_FUTURE_EPOCH' if not exited"
                              },
                              "withdrawable_epoch": {
                                "type": "string",
                                "description": "When validator can withdraw or transfer funds. 'FAR_FUTURE_EPOCH' if not defined"
                              }
                            }
                          },
                          "description": "An array of objects containing validator info"
                        },
                        "balances": {
                          "type": "array",
                          "items": {},
                          "description": "Validator balances in gwei. Variable length list, maximum 1099511627776 items"
                        },
                        "randao_mixes": {
                          "type": "array",
                          "items": {},
                          "description": "Fixed length of 65536 items"
                        },
                        "slashings": {
                          "type": "array",
                          "items": {},
                          "description": "Per-epoch sums of slashed effective balances. Fixed length of 8192 items"
                        },
                        "previous_epoch_attestations": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "aggregation_bits": {
                                "type": "string",
                                "description": "Attester aggregation bits"
                              },
                              "data": {
                                "type": "object",
                                "properties": {
                                  "slot": {
                                    "type": "string",
                                    "description": "Slot value"
                                  },
                                  "index": {
                                    "type": "string",
                                    "description": "The index value"
                                  },
                                  "beacon_block_root": {
                                    "type": "string",
                                    "description": "The beacon block root hash"
                                  },
                                  "source": {
                                    "type": "string",
                                    "description": "The checkpoint source"
                                  },
                                  "target": {
                                    "type": "string",
                                    "description": "The checkpoint target"
                                  }
                                },
                                "description": "Data object containing values from slot, index, beacon root, source and target"
                              },
                              "inclusion_delay": {
                                "type": "string",
                                "description": "Inclusion delay string value"
                              },
                              "proposer_index": {
                                "type": "string",
                                "description": "Proposer index string value"
                              }
                            }
                          },
                          "description": "List of attestations from the previous epoch"
                        },
                        "current_epoch_attestations": {
                          "type": "array",
                          "items": {},
                          "description": "List of attestations from the current epoch"
                        },
                        "justification_bits": {
                          "type": "string",
                          "description": "Bitfield representing recent block justification"
                        },
                        "previous_justified_checkpoint": {
                          "type": "object",
                          "properties": {
                            "epoch": {
                              "type": "string",
                              "description": "The epoch of the justified checkpoint"
                            },
                            "root": {
                              "type": "string",
                              "description": "The root of the justified checkpoint"
                            }
                          },
                          "description": "Information on the previously justified checkpoint"
                        },
                        "current_justified_checkpoint": {
                          "type": "object",
                          "properties": {
                            "epoch": {
                              "type": "string",
                              "description": "The epoch of the justified checkpoint"
                            },
                            "root": {
                              "type": "string",
                              "description": "The root of the justified checkpoint"
                            }
                          },
                          "description": "Information on the currently justified checkpoint"
                        },
                        "finalized_checkpoint": {
                          "type": "object",
                          "properties": {
                            "epoch": {
                              "type": "string",
                              "description": "The epoch of the finalized checkpoint"
                            },
                            "root": {
                              "type": "string",
                              "description": "The root of the finalized checkpoint"
                            }
                          },
                          "description": "Information on the finalized checkpoint"
                        }
                      },
                      "description": "The BeaconState object containing detailed state information at a specific point in the blockchain"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "servers": [
    {
      "url": "https://docs-demo.quiknode.pro",
      "description": "Quicknode Ethereum"
    }
  ]
}