# Cancelar orden

`DELETE /orders/{orderId}`

Cancela una orden pendiente y libera lo que haya reservado.

- La orden debe seguir estando `active`; una que ya se haya ejecutado o haya sido cancelada responde `403`.
- Permitido mientras la cuenta está bloqueada por el límite de capital gestionado — ese bloqueo solo detiene las órdenes que aumentarían una posición.
- El mercado no debe estar pausado.

<a id="authorization"></a>

## Autorización

bearer: http · bearer (obligatorio). Clave de API personal, con el prefijo `usk_`.

<a id="parameters"></a>

## Parámetros

- path: orderId (string · uuid; obligatorio). Identificador de la orden a cancelar.

Tipo: string · uuid

format: uuid

<a id="example-curl"></a>

## Ejemplo · cURL

```bash
curl --request DELETE 'https://api.upscale.trade/orders/{orderId}' \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer YOUR_API_KEY'
```

<a id="example-javascript"></a>

## Ejemplo · JavaScript

```javascript
const response = await fetch("https://api.upscale.trade/orders/{orderId}", {
  method: "DELETE",
  headers: {
    "Accept": "application/json",
    "Authorization": "Bearer YOUR_API_KEY"
  },
});
console.log(response.status, await response.text());
```

<a id="example-python"></a>

## Ejemplo · Python

```python
import requests

response = requests.request(
    "DELETE",
    "https://api.upscale.trade/orders/{orderId}",
    headers={"Accept":"application/json","Authorization":"Bearer YOUR_API_KEY"},
    timeout=30,
)
print(response.status_code, response.text)
```

<a id="response-204"></a>

## Respuesta 204

**204**  — Orden cancelada

<a id="response-401"></a>

## Respuesta 401

**401**  — No autorizado

<a id="response-403"></a>

## Respuesta 403

**403**  — La orden ya no está activa. La cuenta pertenece a otro usuario (`account_access_denied`), o la solicitud está autenticada con una clave de API mientras `api_trading` está deshabilitado en la cuenta (`api_trading_not_enabled`). El trading en la cuenta ha terminado en su estado actual (`challenge_closed`), o la cuenta está bloqueada por el límite de capital gestionado (`funded_limit_trading_locked`). El mercado está en pausa (`market_paused`) o solo acepta órdenes de cierre (`market_close_only`).

<a id="response-404"></a>

## Respuesta 404

**404**  — No hay ninguna orden con este identificador.

<a id="response-429"></a>

## Respuesta 429

**429**  — Se superó el límite de velocidad de la clave de API (`api_key_rate_limit_exceeded`). `Retry-After` indica cuándo volver; el cuerpo incluye el bucket (`read` / `write`), la ventana que se activó, su límite y `retryAt`.