Skip to main content
POST
/
perp
/
sol
/
order
Open a perp position
curl --request POST \
  --url https://ca.raze.sh/perp/sol/order \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <api-key>' \
  --data '
{
  "wallet_addresses": [
    "62ThHC1rs2GUfa8J4Qjcj5GD2MSL2d65pcJtenNieDnm"
  ],
  "market_id": "jup:SOL-PERP",
  "side": "long",
  "collateral_usdc_e6": 100000000,
  "leverage_bps": 50000,
  "slippage_bps": 50,
  "client_order_id": "ui-2026-05-06-a1b2c3"
}
'
{
  "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
Example:

"jup:SOL-PERP"

side
enum<string>
required
Available options:
long,
short
collateral_usdc_e6
integer<int64>
required

Collateral in USDC micros. Server converts to the venue's input-mint native units (lamports for SOL longs, USDC e6 for shorts) using the live oracle price.

leverage_bps
integer
required
Example:

50000

slippage_bps
integer
required
Example:

50

client_order_id
string
required

Caller-supplied idempotency key. Identical IDs within the 60s window return the cached response (same tx) instead of rebuilding.

funding_mint
string | null

Optional funding mint. Omit (or set to the venue's native input mint) for the native-funding path. Pass a different supported mint (USDC, USD1, wSOL, BTC, ETH) to attach a Pyth-derived SwapFunding spec — the on-chain ix performs the keeper-side Jupiter swap on increase. Other mints return an error.

Response

Transactions built

success
boolean
data
object[]
error
string