The developer API is in beta. Breaking changes may be introduced at any time.
See API capabilities for coverage and features that
still require the website.
1. Create an API key
Open API Key Settings,
name the key, and copy the secret when it appears. MyFundedPerps stores
only its cryptographic hash, so the secret cannot be shown again.
2. List your accounts
GET /v1/accounts/{account_id} adds a fresh risk snapshot with equity,
unrealized P&L, reserved margin, available balance, gross exposure, loss floors,
room above each floor, and remaining profit target. When any open position lacks
a fresh mark, mark-dependent values are null and marks_complete is false.
Copy the id of the challenge account you want to trade.
3. Find a market and request a quote
Market IDs contain a pipe character. URL-encode it when it appears in a path:
Providing both side and size returns estimated_fill_price (the mark
price adjusted by the size-based slippage tier), slippage_bps,
estimated_notional, and estimated_fee. fillable is false when the
requested size is not valid at the market’s size precision.
4. Place a market order
Use the quote’s mid as expected_price. This value records what your client
observed; the server still prices and validates the order from a fresh,
authoritative book.
An accepted order begins as pending. Read the order endpoint until it becomes
filled or rejected; use a sensible backoff and observe the documented rate
limits. If the placement response is lost, use
GET /v1/orders?client_order_id=quickstart-entry-1 to recover the server order.
5. Place advanced orders
The same /v1/orders endpoint also accepts limit, chase, stop, take, and
external conditional orders. TWAP, VWAP, and scaled ladders use their own
parent resources. Continue with Trading with the API for
request shapes and lifecycle operations.
For continuous market updates, connect to market data streaming
instead of polling prices. Account and order updates remain available through REST.