Skip to main content
POST
Ingest trade signal

Body

application/json
apiKey
string
required

Webhook authentication key. Provided inside the JSON payload body — NOT as an HTTP header.

Example:

"whk_live_a1b2c3d4e5f6"

exchange
enum<string>
required

Target exchange

Available options:
binance,
bybit,
mexc
Example:

"bybit"

action
enum<string>
required

Trade action to execute

Available options:
LONG,
SHORT,
CLOSE_LONG,
CLOSE_SHORT
Example:

"LONG"

symbol
string
required

Trading pair symbol

Maximum string length: 20
Example:

"BTCUSDT"

quantity
number
required

Order size in contracts or base currency

Required range: x > 0
Example:

0.002

price
number

Optional limit price (market order if omitted)

Required range: x > 0
Example:

68500.5

leverage
integer

Optional leverage multiplier for margin trades

Required range: x >= 1
Example:

10

idempotencyKey
string<uuid>

Optional client-supplied idempotency key. When the gateway receives a duplicate request with the same key inside the dedupe TTL window, the original response is replayed (see 409 below).

Example:

"9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"

notify
object

Optional Telegram notification configuration

Response

Trade processed successfully

success
boolean
Example:

true

requestId
string<uuid>

Unique request trace identifier

Example:

"9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"

tradeResult
object | null
notificationResult
object | null
Last modified on June 17, 2026