---
title: "Spot Set Tp Sl"
method: POST
path: "/v1/spot_hl/tp-sl"
tags: ["spot_hl"]
---

# Spot Set Tp Sl

`POST /v1/spot_hl/tp-sl`

## Request

- Base URL: `https://api.fereai.xyz`
- URL: `https://api.fereai.xyz/v1/spot_hl/tp-sl`
- Auth: none declared

Attach reduce-side TP/SL sell triggers to an existing spot holding.

## Query parameters

- `wait` boolean: Block until task completes
- `timeout` integer: Seconds to block when wait=true (max 90; the ~100s edge cuts longer waits — use wait=false + poll for longer).

## Request body

- SpotTpSlRequest
  - `asset` string, required: Held spot asset symbol to protect, e.g. 'HYPE'.
  - `tp_price` number, nullable: Take-profit trigger price.
  - `sl_price` number, nullable: Stop-loss trigger price.
  - `size` number, nullable: Base amount to protect. Omit to use the full held balance.
  - `tp_is_market` boolean
  - `sl_is_market` boolean

## Response `200`

Successful Response

- TaskResponse
  - `task_id` string, required: Celery task ID for tracking the async operation.
  - `status` string: Current task status: queued, pending, started.
  - `poll_url` string, nullable: Relative URL to poll for task status.
  - `notification_stream` string, nullable: SSE stream URL for real-time task updates.

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/fereai/apis/fereai-gateway.md) - [All operations](https://skmtc.dev/fereai/apis/fereai-gateway/llms.txt) - [OpenAPI document](https://skmtc.dev/fereai/apis/fereai-gateway/revisions/ad211f8e2f30?raw)
