# Get contracts

Get a paginated list of contracts.

```
GET /contracts
```

## Query params

| Query param             | Description                                                  |
| ----------------------- | ------------------------------------------------------------ |
| `deploy_hash`           | Hash of the deploy that deployed the contract to the network |
| `contract_package_hash` | Contract Package hash.                                       |
| `from_block_height`     | From block height range                                      |
| `to_block_height`       | To block height range                                        |

## Sorting

| Property    | Description                 |
| ----------- | --------------------------- |
| `timestamp` | Sort contracts by timestamp |

Default sorting is `timestamp DESC`

## Optional properties

| Property           | Type                                                                       | Description                                          |
| ------------------ | -------------------------------------------------------------------------- | ---------------------------------------------------- |
| `contract_package` | [ContractPackage](https://docs.cspr.cloud/1.3.x/rest-api/contract-package) | Contract package, this contract version is a part of |

## Response

[`PaginatedResponse`](https://docs.cspr.cloud/1.3.x/documentation/overview/pagination)[`<Contract>`](https://docs.cspr.cloud/1.3.x/rest-api/contract)

## Example

```bash
curl -X 'GET' \
  'https://api.testnet.cspr.cloud/contracts' \
  -H 'Accept: application/json' \
  -H 'Authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
```

```json
{
  "data": [
    {
      "contract_hash": "8a2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e732",
      "contract_package_hash": "ae2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e744",
      "deploy_hash": "1a2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e755",
      "block_height": 2404577,
      "contract_type_id": 2,
      "timestamp": "2023-01-01T12:00:00Z",
      "contract_version": 1,
      "is_disabled": false
    },
    {
      "contract_hash": "5e718fa0918ae95e58b9a320f412b935af6544b04b6b89fb2ca9982cab0dd261",
      "contract_package_hash": "8e718fa0918ae95e58b9a320f412b935af6544b04b6b89fb2ca9982cab0dd262",
      "deploy_hash": "2e718fa0918ae95e58b9a320f412b935af6544b04b6b89fb2ca9982cab0dd263",
      "block_height": 2404576,
      "contract_type_id": 4,
      "timestamp": "2023-01-02T12:00:00Z",
      "contract_version": 2,
      "is_disabled": false
    },
    ...
    {
      "contract_hash": "7894d8458c82388f6d276c07c1c52033ac37b175fa722b9cc40e7a0157ce17fc",
      "contract_package_hash": "8894d8458c82388f6d276c07c1c52033ac37b175fa722b9cc40e7a0157ce17fd",
      "deploy_hash": "9894d8458c82388f6d276c07c1c52033ac37b175fa722b9cc40e7a0157ce17fe",
      "block_height": 2404571,
      "contract_type_id": 7,
      "timestamp": "2023-01-03T12:00:00Z",
      "contract_version": 3,
      "is_disabled": false
    }
  ],
  "item_count": 100,
  "page_count": 10
}
```
