> For the complete documentation index, see [llms.txt](https://docs.hydromancer.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hydromancer.xyz/readme/rest-api/borrow-lend/allborrowlendreservestates.md).

# allBorrowLendReserveStates

Returns the borrow/lend reserve state for every token reserve as a list of `[tokenIndex, reserveState]` pairs.

<table><thead><tr><th width="115">Field</th><th width="177">Type</th><th>Description</th></tr></thead><tbody><tr><td><code>type</code></td><td>string</td><td>Must be <code>"allBorrowLendReserveStates"</code></td></tr></tbody></table>

## Request

{% tabs %}
{% tab title="cURL" %}

```bash
curl -X POST https://api.hydromancer.xyz/info \
  -H "Authorization: Bearer $HYDROMANCER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "allBorrowLendReserveStates"
  }'
```

{% endtab %}

{% tab title="Python" %}

```python
import requests
import os
import json

response = requests.post(
    'https://api.hydromancer.xyz/info',
    json={
        'type': 'allBorrowLendReserveStates'
    },
    headers={
        'Authorization': f'Bearer {os.environ["HYDROMANCER_API_KEY"]}',
        'Content-Type': 'application/json'
    }
)
print(json.dumps(response.json(), indent=2))
```

{% endtab %}

{% tab title="Javascript" %}

```javascript
import axios from 'axios';

const response = await axios.post(
  'https://api.hydromancer.xyz/info',
  {
    type: 'allBorrowLendReserveStates'
  },
  {
    headers: {
      'Authorization': `Bearer ${process.env.HYDROMANCER_API_KEY}`,
      'Content-Type': 'application/json'
    }
  }
);

console.log(JSON.stringify(response.data, null, 2));
```

{% endtab %}
{% endtabs %}

***

## Response Fields

| Field                     | Type   | Description                                 |
| ------------------------- | ------ | ------------------------------------------- |
| (root)                    | array  | Array of `[tokenIndex, reserveState]` pairs |
| `[n][0]`                  | int    | Token index                                 |
| `[n][1].borrowYearlyRate` | string | Annualized borrow rate                      |
| `[n][1].supplyYearlyRate` | string | Annualized supply rate                      |
| `[n][1].balance`          | string | Reserve balance                             |
| `[n][1].utilization`      | string | Utilization ratio (borrowed / supplied)     |
| `[n][1].oraclePx`         | string | Oracle price of the token                   |
| `[n][1].ltv`              | string | Loan-to-value ratio                         |
| `[n][1].totalSupplied`    | string | Total supplied to the reserve               |
| `[n][1].totalBorrowed`    | string | Total borrowed from the reserve             |

<details>

<summary>Response (trimmed)</summary>

```json
[
  [
    0,
    {
      "borrowYearlyRate": "0.05",
      "supplyYearlyRate": "0.0141878137",
      "balance": "75035169.4813607037",
      "utilization": "0.3152847491",
      "oraclePx": "1.0",
      "ltv": "0.0",
      "totalSupplied": "109585941.8306342065",
      "totalBorrowed": "34550776.179527849"
    }
  ]
]
```

</details>
