Devnet endpoints
The sandbox is a full Joyride deployment athttps://devnet.joyride.exchange, backed by a vault program on Solana Devnet. Paths are the same as on Mainnet; only the host differs.
Authentication, session rules, rate budgets, and error codes are as described on API Connectivity. Moving a client from Devnet to Mainnet means changing the origin and using a wallet with a Mainnet account.
Requesting access
Devnet and Mainnet accounts are separate. Create the Devnet account in the Devnet app athttps://devnet.joyride.exchange with the wallet the client will sign in with; a separate key for the sandbox is fine, since the Mainnet account is created and designated on its own.
Then email support@joyride.exchange with that public key and a request for the quoter role on Devnet. Designation returns:
- The
rfq_quoterrole on the account:rolesin thepublic/authresponse contains it. - A subaccount on the Devnet vault owned by the key:
GET /api/query/vault-subaccountreturns one row for the account when it is ready.
Funding
Deposits are Devnet USDC sent to the Joyride vault through its deposit instruction. Transaction fees need Devnet SOL (solana airdrop on the Devnet cluster). The USDC mint is listed under Devnet identity; a Devnet USDC faucet can supply it.
The caps are set in the vault’s on-chain configuration and are shared by every sandbox account, so other users’ activity can cause a rejection. Email support@joyride.exchange if a cap blocks testing.
A deposit is credited once its transaction is finalized on Devnet;
GET /api/query/vault-subaccount then shows the funded free_balance. Only deposits made through the vault’s deposit instruction are credited; a plain token transfer to the vault is not.
Devnet USDC has no value. The caps bound what the sandbox vault holds and releases. Mainnet collateral is agreed per maker, as described on Becoming an RFQ Quoter.
Devnet identity
Quotes bind to the deployment they are signed for, so a quote signed for Devnet is rejected on Mainnet and the reverse. Thedeployment object on every RFQ open event carries the identity of the connected environment, and the quote is signed from it; deployment_id is the field that differs between the two clusters.
The deployment id and the Mainnet values are on Program Addresses.
Verifying readiness
Readiness is checked from the account’s own session once provisioning is complete. Run the checklist on Becoming an RFQ Quoter against the Devnet origin:public/auth roles include rfq_quoter, rfq.maker.subscribe succeeds, GET /api/query/vault-subaccount returns a row, and rfq.maker.poll returns without RFQ_NOT_READY.
RFQs arrive only when a Devnet taker sends one, so testing the quoting path requires driving the taker side as well. A quiet sandbox does not indicate an outage.
What Devnet shares with Mainnet
The sandbox runs the same code as Mainnet, released to Devnet first; between releases it is one promotion ahead.
A client that passes readiness on Devnet needs only its origin, wallet key, and identity configuration changed for Mainnet.
Next: Fees and Limits