# blocksFromHeight **Type:** GraphQL queries **Description:** Retrieve blocks from one or more chains based on their block height range. In Kadena, **height** represents a block’s sequential position within its chain, starting at 0 for the genesis block and increasing by 1 for each new block. This query lets you fetch blocks by specifying a starting height (`startHeight`) and, optionally, an ending height (`endHeight`). It is particularly useful when you want to retrieve a continuous range of blocks — for example, when backfilling data, syncing from a specific point in the chain, or analyzing block activity over a known range. If `endHeight` is omitted, the query returns all blocks from the starting height up to the current chain tip. ## Arguments - chainIds (String): The chain IDs to retrieve blocks from. Kadena runs multiple braided chains in parallel — specify one or more chain IDs here. - endHeight (Int): The inclusive upper bound of the height range. If omitted, results will include all blocks from `startHeight` to the current tip. - startHeight (Int): The inclusive lower bound of the height range. Blocks with a height below this value will be excluded. - after (String): Cursor to start paginating **after** a specific result. Used for forward pagination. - before (String): Cursor to start paginating **before** a specific result. Used for backward pagination. - first (Int): Maximum number of records to return when paginating forward. - last (Int): Maximum number of records to return when paginating backward. ## Response **Type:** QueryBlocksFromHeightConnection **Description:** undefined ### Fields - edges (QueryBlocksFromHeightConnectionEdge) - pageInfo (PageInfo) - totalCount (Int)