> For the complete documentation index, see [llms.txt](https://docs.cspr.cloud/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.cspr.cloud/1.0.x/rest-api/block.md).

# Block

The `Block` entity provides a normalized representation of the Casper Network block. It doesn't contain the executed deploy hashes as the network block object. However, they could be queried separately using the [Deploy](/1.0.x/rest-api/deploy.md) API.

## Properties

The `Block` entity has the following properties:

| Property                  | Type         | Description                                                                                               |
| ------------------------- | ------------ | --------------------------------------------------------------------------------------------------------- |
| `block_height`            | `uint64`     | Block height. Primary block identifier                                                                    |
| `block_hash`              | `string(64)` | Block hash represented as a hexadecimal string. Secondary block identifier                                |
| `parent_block_hash`       | `string(64)` | Parent block hash represented as a hexadecimal string                                                     |
| `state_root_hash`         | `string(64)` | Identifier of the network's state after executing the block's deploys represented as a hexadecimal string |
| `era_id`                  | `uint32`     | Era ID in which the block was created                                                                     |
| `proposer_public_key`     | `string(68)` | Public key of the validator who proposed the block represented as a hexadecimal string                    |
| `native_transfers_number` | `uint16`     | Number of native transfer deploys included in the block                                                   |
| `contract_calls_number`   | `uint16`     | Number of contract calls included in the block                                                            |
| `is_switch_block`         | `bool`       | `true` if the block is the last one in the era                                                            |
| `timestamp`               | `datetime`   | The timestamp from when the block was proposed                                                            |

**Example**

```json
{
  "block_height": 500442,
  "block_hash": "9fccaf372ec5f61ac851fcec593d159f928a26df8f2af5aa3522ed9e0b7cbb36",
  "parent_block_hash": "898f0caafafdd67d7693b17c01b885941dd0f7bb000ffb4faf26d16f37681a38",
  "state_root_hash": "656b3f410c68bb2e5dd16089295376193130b9470e5158decc9c4d5c22674087",
  "era_id": 3561,
  "proposer_public_key": "0109b48a169e6163078a07b6248f330133236c6e390fe915813c187c3f268c213e",
  "native_transfers_number": 0,
  "contract_calls_number": 0,
  "is_switch_block": false,
  "timestamp": "2022-01-31T10:36:55Z"
}
```

## Optional properties

Depending on the endpoint some of the following optional properties may be included in the `Block` entity:

| Property                | Type   | Description                         |
| ----------------------- | ------ | ----------------------------------- |
| `proposer_account_info` | `JSON` | Account info of proposer public key |

## Relations

| Entity                                      | Mapping property      | Description                       |
| ------------------------------------------- | --------------------- | --------------------------------- |
| [`Deploy`](/1.0.x/rest-api/deploy.md)       | `block_hash`          | Blocks can have deploys           |
| [`Validator`](/1.0.x/rest-api/validator.md) | `proposer_public_key` | Blocks are proposed by validators |

## Endpoints

The `Block` entity has the following endpoints:

* [Get block](/1.0.x/rest-api/block/get-block.md)
* [Get blocks](/1.0.x/rest-api/block/get-blocks.md)
* [Get validator blocks](/1.0.x/rest-api/block/get-validator-blocks.md)

## Relation endpoints

The `Block` entity has the following relation endpoints:

* [Get block deploys](/1.0.x/rest-api/deploy/get-block-deploys.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.cspr.cloud/1.0.x/rest-api/block.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
