# Release a reserved position

`DELETE https://api.cryptohopper.com/v1/hopper/{id}/reserved/{reserved_id}/release`

Part of [Positions](https://www.cryptohopper.com/api-documentation/api-reference/positions.md) in the Cryptohopper API reference.

Removes one reserved position, so the funds are no longer reserved, and recalculates the hopper's reserved balances. No order is placed.

If the hopper is not found or has no config, the call returns data "No config found for hopper." instead of an error. Not available for exchange arbitrage, market maker, copy and grid bots.

## Headers

| Name | Type | Required | Description |
|---|---|---|---|
| `access-token` | string | yes | The OAuth access token of the user. |

## Path parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `id` | string | yes | Hopper ID. |
| `reserved_id` | string | yes | Reserved position ID. |

## Example request

```bash
curl -X DELETE "https://api.cryptohopper.com/v1/hopper/HOPPER_ID/reserved/RESERVED_ID/release" \
  -H "access-token: YOUR_ACCESS_TOKEN"
```

## Response

Example response (illustrative values):

```json
{
    "data": "Positions released."
}
```

Status codes: 200. Errors return JSON with `status`, `error` and `message`, plus a numeric `code` when the error comes from the API itself rather than the gateway.
