Who can use it
Sandbox access is included with a challenge purchase and stays active for 90 days after each purchase. Buying another challenge extends the window. Access is checked continuously: when the window lapses, sandbox requests return403
with the error code sandbox_access_expired until a new purchase refreshes
it.
Temporary sandbox access may also be provided for a fixed period without a
challenge purchase. The same account and test-key limits apply. Access ends at
the stated expiry unless a recent challenge purchase still qualifies you.
Set up
- Open API Key settings.
- Select Create API Key and choose the Test (Sandbox) environment.
Test keys begin with
fp_test_and automatically cover every sandbox account you own.
Create more sandbox accounts
In API Key settings, find Sandbox Accounts and select Create Sandbox Account. You can create another account while your other sandbox accounts are still active, without creating another API key. Each starts with a $100,000 simulated balance. The panel lists each account’s name, account number, and status. Every existing test key automatically gains access to the new account. Use the account ID returned byGET /v1/accounts to select it in API requests.
The ten-account lifetime limit includes active, passed, failed, and closed
sandbox accounts. Creating more accounts requires the same active sandbox
access as creating test keys. When access lapses or the limit is reached,
Create Sandbox Account is unavailable and the panel explains why.
Sandbox account emails
Sandbox accounts do not send breach or status emails by default, so a test breach never looks like a problem with a real challenge account. To receive them, turn on Sandbox Account Emails in the Sandbox Accounts panel. In-app notifications for sandbox accounts are unaffected.Differences from live
- Test keys authenticate only on
sandbox.myfundedperpetuals.com; live keys authenticate only ondevelopers.myfundedperpetuals.com. Using a key on the wrong host returns401with a message naming the correct host. - The account stream works the same way: test keys
connect to
wss://account-stream.myfundedperpetuals.com/v1/sandbox/streamand receive only sandbox accounts. - Sandbox accounts never appear in live API responses, and challenge accounts
never appear in sandbox responses. This applies to direct position, order,
TWAP/VWAP, and scaled-order IDs, client order IDs, modifications, cancellations,
and idempotent retries. A known ID does not grant access across environments
or outside the accounts selected for the credential. Inaccessible individual
resources return
404; a client order ID lookup returns an empty list. - Archived accounts and their orders, positions, and strategy history are unavailable through trading endpoints in either API environment, including previously successful trading-request replays.
- Sandbox accounts are excluded from analytics, leaderboards, certificates, and payouts. They exist only for integration testing. In the web app they carry a Sandbox badge in the account switcher, and their dashboard never shows funded-stage progression because a sandbox account cannot become funded. To keep them out of the account switcher, open Filter and check Hide Sandbox Accounts; uncheck it to show them again.
- Sandbox trading still enforces evaluation rules, so a sandbox account can breach. That is useful for testing how your integration handles rejections and account failure.
- Reaching the profit target ends a sandbox account as passed. A sandbox pass does not lead to identity verification, an agreement, or a funded account.
Go live
When your integration works in the sandbox, create a live key with the same access level, point your client athttps://developers.myfundedperpetuals.com, and select the challenge accounts
it should reach. No other code changes are needed.