Skip to main content
POST
/
perp
/
sol
/
cancel
Cancel a pending perp trigger order
curl --request POST \
  --url https://ca.raze.sh/perp/sol/cancel \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <api-key>' \
  --data '
{
  "wallet_addresses": [
    "62ThHC1rs2GUfa8J4Qjcj5GD2MSL2d65pcJtenNieDnm"
  ],
  "market_id": "jup:SOL-PERP",
  "position_pubkey": "PoSLk3hQrTtUKn1ePNKczqJsZbftrxCzpEuhKdzS5sM",
  "order_id": "ReQQ2ksgqBPmQEHuRsupbZbe6kDhQVo4QAGCfRCYiKE",
  "client_order_id": "ui-cancel-20260506-c1"
}
'
{
  "success": true,
  "data": [
    {
      "wallet": "<string>",
      "tx_b64": "<string>",
      "status": "<string>"
    }
  ],
  "error": "<string>"
}

Documentation Index

Fetch the complete documentation index at: https://docs.raze.bot/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

X-API-Key
string
header
required

Body

application/json
wallet_addresses
string[]
required
Minimum array length: 1
market_id
string
required
position_pubkey
string
required
order_id
string
required

position_request PDA — the order's stable identifier from /api/sol/perp/wallets/{addr}/perp-orders on the History API.

client_order_id
string
required
request_mint
string | null

Mint the request was funded with. Required because closePositionRequest closes the request ATA back to the user; the wrong mint triggers Anchor ConstraintTokenMint. Defaults to USDC when omitted — safe for TP/SL (always USDC), but limit-order cancels must explicitly pass the input mint.

Response

Transactions built

success
boolean
data
object[]
error
string