PAPER · virtual USDC
‹ MoreLab homeAPI docs

AI Lab API

REST + JSON. Base URL https://voxtradepro.com/api/lab/v1. Paper money only: there is no deposit, withdraw, transfer or payment endpoint.

1 · Get a key

Open AI Lab, create your Lab account (save the recovery code), then + New key. Send it on every request:

Authorization: Bearer vtp_ak_XXXXXXXX_…

Keep it secret like a password. Switch it off or revoke it any time in AI Lab. A key cannot manage keys, reset the account or move money.

2 · Endpoints

CallWhat
GET /statusFeed live?, server time
GET /marketsCoins, max leverage, size decimals, funding
GET /prices · /price?coin=BTCLive mid, bid, ask
GET /book?coin=BTC&depth=20Live order book
GET /candles?coin=BTC&tf=15m&limit=5001m … 1d, max 5000
GET /funding?coin=BTCHourly funding rate
GET /accountEquity, available, P/L, fees
GET /positions · /ordersOpen positions / orders
GET /fills?since_id=0 · /orders/history · /funding-paymentsHistory
POST /orderPlace an order (below)
POST /orders/batch{"orders":[…]} up to 10
DELETE /orders/{id or cloid}Cancel one
DELETE /orders · ?coin=BTCCancel all
POST /positions/{coin}/close{"pct":100} market close
POST /positions/{coin}/tpsl{"sl":…,"tp":…,"trail":{"pct":1}}, null removes
POST /leverage{"coin":"ETH","leverage":10}
POST /margin{"coin":"ETH","amount":50} add (negative removes)
POST /dead-man{"seconds":60} cancel all orders if your bot goes quiet; 0 = off

3 · Order fields

coinBTC, ETH, SOL … (Hyperliquid perps)
sidebuy | sell
typemarket | limit | stop_market | take_market
size or size_usdcoin amount, or position value in USDC (min 10)
price / trigger_pricefor limit / stop and take orders
leverage1 … market max (isolated margin)
tifGTC (rest) · IOC · ALO (post-only)
reduce_onlytrue = only reduce an open position
sl / tp{"pct":2} or {"price":70000}
trail{"pct":1.5} trailing stop
max_slippage_pctmarket orders, default 8
cloid · noteyour id · reason shown in AI Lab (140 chars)

How fills work (same as the Trade page)

  • Live Hyperliquid prices and order book.
  • Market orders walk the real book: you pay the real spread and slippage (VWAP), capped by max_slippage_pct.
  • Fees: taker 0.045%, maker 0.015% (a resting limit fills at its price once the mark reaches it).
  • Funding every hour on the hour at the live Hyperliquid rate.
  • Isolated margin. Liquidation when the mark reaches the liquidation price (margin is lost). SL, TP and trailing stops are checked first.
  • Runs on our server 24/7, also when your browser is closed.
  • If live prices stop, nothing fills on old prices; market orders return 503, retry.

Python example

import os, requests
B = "https://voxtradepro.com/api/lab/v1"
H = {"Authorization": "Bearer " + os.environ["VTP_KEY"]}
print(requests.get(B + "/price?coin=ETH", headers=H).json())
r = requests.post(B + "/order", headers=H, json={
    "coin": "ETH", "side": "buy", "type": "limit",
    "price": 3000, "size_usd": 200, "leverage": 3,
    "sl": {"pct": 2}, "tp": {"pct": 4}, "note": "dip buy"})
print(r.status_code, r.json())
print(requests.get(B + "/positions", headers=H).json())

Node example

const B = 'https://voxtradepro.com/api/lab/v1';
const H = { authorization: 'Bearer ' + process.env.VTP_KEY,
            'content-type': 'application/json' };
const api = (p, o = {}) => fetch(B + p, { headers: H, ...o })
  .then(r => r.json());
const acct = await api('/account');
await api('/order', { method: 'POST', body: JSON.stringify(
  { coin: 'BTC', side: 'sell', type: 'market', size_usd: 100,
    leverage: 2, trail: { pct: 1 } }) });

Prompt for ChatGPT / Grok

You are my trading bot for a PAPER account on VoxTradePro AI Lab.
API base: https://voxtradepro.com/api/lab/v1, header
Authorization: Bearer <my key>. Read /account, /positions,
/candles?coin=BTC&tf=15m. Decide using MY rules: <your strategy>.
Place orders with POST /order (fields: coin, side, type, size_usd,
leverage, sl, tp, trail, note). Always set a stop loss.
Never risk more than 2% of equity per trade. Explain each trade
in the "note" field.

Errors and limits

Errors: {"error":{"code","msg"}}. 401 bad key · 403 key off / agents stopped / read-only · 422 no liquidity · 429 rate limited (see Retry-After) · 503 prices unavailable, retry. Limits: 20 req/s per key (burst 40), 10 orders/s per account, 200 open orders, candles weigh 5, 60 req/s per IP.

Not financial advice. AI Lab is a paper-trading sandbox: virtual USDC, live Hyperliquid prices, real-style fees, slippage and funding. No deposits, no withdrawals, no real orders, no payments. Your strategy and your bot are yours; past or simulated results do not predict future results.