一键导入
orderly-one-dex
Create and manage a custom white-label DEX using Orderly One - launch paths, deployment, custom domains, graduation, theming, and admin operations
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Create and manage a custom white-label DEX using Orderly One - launch paths, deployment, custom domains, graduation, theming, and admin operations
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Agent onboarding for Orderly Network - omnichain perpetual futures infrastructure, MCP server, skills, and developer quickstart
Complete authentication guide for Orderly Network - EIP-712 wallet signatures for EVM accounts, Ed25519 message signing for Solana accounts, and Ed25519 signatures for API requests
Handle token deposits and withdrawals across chains, including allowance approval, vault interactions, and cross-chain operations
Monitor positions in real-time, configure Take-Profit/Stop-Loss orders, and manage risk with leverage settings
Place, manage, and cancel orders using REST API or SDK hooks. Covers market, limit, IOC, FOK, POST_ONLY order types and batch operations
Establish authenticated WebSocket connections for real-time orderbook, execution reports, positions, and balance updates
| name | orderly-one-dex |
| description | Create and manage a custom white-label DEX using Orderly One - launch paths, deployment, custom domains, graduation, theming, and admin operations |
Orderly One (https://dex.orderly.network) is a platform that lets anyone launch a white-label perpetual-futures DEX on Orderly Network — with or without code. It serves as both:
Important: For many operations — especially graduation and broker ID creation — the easiest path is to use the Orderly One web portal directly at https://dex.orderly.network/dex. Always inform users that this option exists. Not everything has to be done through the API.
| Path | Description | Graduation Fee | Who It's For |
|---|---|---|---|
| Low-code | Create a branded DEX frontend via Orderly One portal or API. It forks a template repo and deploys to GitHub Pages. | $100 | Teams wanting fast launch with minimal frontend work |
| Custom SDK/API | Use the Orderly SDK or API to build a fully custom frontend. Graduate via Orderly One to get a broker ID — no DEX frontend required. | $10 | Wallets, existing exchanges, teams wanting full control |
See the official builder onboarding guide: https://orderly.network/docs/introduction/getting-started/builder-onboarding
"demo" and becomes a real broker ID after graduation. This is how your DEX earns trading fees.| Environment | Base URL |
|---|---|
| Mainnet | https://dex-api.orderly.network |
| Testnet | https://testnet-dex-api.orderly.network |
The API exposes an interactive OpenAPI spec (Scalar) at the root: GET /
Mainnet: Ethereum (1), Arbitrum (42161), Base (8453) Testnet: Sepolia, Arbitrum Sepolia, Base Sepolia
Use get_orderly_one_api_info MCP tool for full endpoint details.
| Category | Description | Key Endpoints |
|---|---|---|
| auth | Wallet signature authentication | /api/auth/nonce, /api/auth/verify, /api/auth/validate |
| dex | DEX CRUD, domains, deployment | /api/dex, /api/dex/{id}, /api/dex/{id}/custom-domain, /api/dex/{id}/workflow-status |
| theme | AI theme generation | /api/theme/modify, /api/theme/fine-tune |
| graduation | Demo → full DEX with fee sharing | /api/graduation/status, /api/graduation/fee-options, /api/graduation/verify-tx |
| leaderboard | Cross-DEX rankings | /api/leaderboard, /api/leaderboard/broker/{brokerId} |
| stats | Platform statistics | /api/stats, /api/stats/swap-fee-config |
Both POST /api/dex (create) and PUT /api/dex/{id} (update) use multipart/form-data.
| Field | Type | Constraints |
|---|---|---|
brokerName | string | 3-30 chars, alphanumeric/space/dot/hyphen |
Chains:
| Field | Type | Notes |
|---|---|---|
chainIds | number[] (JSON) | e.g. [42161, 10, 8453] |
defaultChain | number | Default chain ID |
Branding (files):
| Field | Type | Max Size |
|---|---|---|
primaryLogo | File | 250KB |
secondaryLogo | File | 100KB |
favicon | File | 50KB |
pnlPoster0..N | File | 250KB ea |
Theming:
| Field | Type | Notes |
|---|---|---|
themeCSS | string | CSS variables to override default theme |
tradingViewColorConfig | string | JSON for chart colors |
Social:
| Field | Type | Notes |
|---|---|---|
telegramLink | string | URL |
discordLink | string | URL |
xLink | string | URL |
Auth/Wallet:
| Field | Type | Notes |
|---|---|---|
walletConnectProjectId | string | WalletConnect project ID |
privyAppId | string | Privy app ID |
privyTermsOfUse | string | URL to terms |
privyLoginMethods | string | Comma-separated |
enableAbstractWallet | boolean | Enable Abstract wallet |
disableEvmWallets | boolean | Disable EVM wallets |
disableSolanaWallets | boolean | Disable Solana wallets |
Network:
| Field | Type | Notes |
|---|---|---|
disableMainnet | boolean | Disable mainnet |
disableTestnet | boolean | Disable testnet |
Trading:
| Field | Type | Notes |
|---|---|---|
swapFeeBps | number (0-100) | Swap fee in basis points (requires "Swap" in enabledMenus) |
symbolList | string | Comma-separated (PERP_ETH_USDC) |
Menus:
| Field | Type | Notes |
|---|---|---|
enabledMenus | string | Comma-separated. Options: Trading, Portfolio, Markets, Leaderboard (defaults), Swap, Rewards, Vaults, Points |
customMenus | string | Format: "Name,URL;Name2,URL2" |
SEO:
| Field | Type | Constraints |
|---|---|---|
seoSiteName | string | max 100 chars |
seoSiteDescription | string | max 300 chars |
seoSiteLanguage | string | "en" or "en-US" |
seoSiteLocale | string | "en_US" |
seoTwitterHandle | string | "@handle" |
seoThemeColor | string | "#1a1b23" |
seoKeywords | string | max 500 chars |
Other:
| Field | Type | Notes |
|---|---|---|
availableLanguages | string | JSON array. Options: en, zh, tc, ja, es, ko, vi, de, fr, ru, id, tr, it, pt, uk, pl, nl |
analyticsScript | string | Base64 encoded |
enableServiceDisclaimerDialog | boolean | Show disclaimer |
enableCampaigns | boolean | Enable ORDER token campaigns and Points menu |
restrictedRegions | string | Comma-separated country names (e.g., "United States,China") |
whitelistedIps | string | IP whitelist |
Create (201): { id, brokerId, brokerName, repoUrl, userId, createdAt }
Update (200): Full DEX object with all fields
Orderly One has its own auth system, separate from the Orderly Network API (api.orderly.org). It uses standard EVM personal_sign (EIP-191) — EVM wallets only (0x addresses).
POST /api/auth/nonce with { "address": "0x..." } → { message, nonce }message using personal_sign (EIP-191)POST /api/auth/verify with { "address": "0x...", "signature": "0x..." } → { user: { id, address }, token }Authorization: Bearer {token} for all subsequent requests (expires 24h)POST /api/auth/validate with { "address", "token" } → { valid: true/false }Note: The graduation "finalize admin wallet" step requires authenticating with the Orderly Network API (
api.orderly.org) — a separate system using EIP-712 or Ed25519 signing. See the graduation workflow below.
multipart/form-data with fields abovePOST /api/dex → returns { id, brokerId, repoUrl }GET /api/dex/{id}/workflow-status until conclusion: "success"Prerequisites: DEX created with brokerId: "demo" (not already graduated), payment tokens on a supported chain.
Step 1 — Get Fee Options:
GET /api/graduation/fee-options → { usdc: { amount }, usdt: { amount }, order: { amount, currentPrice }, receiverAddress }
Step 2 — Send Payment On-Chain:
ERC-20 transfer() to receiverAddress on a supported chain. Save the tx hash.
| Network | Chains | Tokens |
|---|---|---|
| Mainnet | Ethereum, Arbitrum, Base | USDC, USDT, ORDER |
| Testnet | Sepolia, Arbitrum Sepolia, Base Sepolia | USDC, USDT, ORDER |
Step 3 — Verify Transaction:
POST /api/graduation/verify-tx with:
| Field | Description |
|---|---|
txHash | Payment transaction hash |
chain | ethereum, arbitrum, base, sepolia, arbitrum-sepolia, base-sepolia |
chainId | Chain ID (e.g. 42161) |
chain_type | "EVM" |
brokerId | Your chosen unique broker ID |
makerFee | Maker fee in bps (min 3) |
takerFee | Taker fee in bps (min 6, typically 2x maker) |
rwaMakerFee | RWA maker fee in bps |
rwaTakerFee | RWA taker fee in bps |
paymentType | "USDC", "USDT", or "ORDER" |
The API verifies: tx exists, sender matches authenticated user, recipient is correct receiverAddress, amount meets fee, tx not reused, brokerId not taken.
Step 4 — Register Admin Wallet (required to complete graduation):
EVM Wallet:
GET https://api.orderly.org/v1/registration_nonce{ brokerId, chainId, timestamp, registrationNonce }POST https://api.orderly.org/v1/register_account with { message, signature, userAddress, chainType: "EVM" }POST /api/graduation/finalize-admin-wallet (empty body)Solana Wallet:
chainId: 900900900, sign with Solana wallet, chainType: "SOL"EVM Multisig/Gnosis Safe:
delegateSigner on Vault contract with [keccak256(brokerId), userAddress]POST /api/graduation/finalize-admin-wallet with { multisigAddress, multisigChainId }Note: Step 4 authenticates with the Orderly Network API (
api.orderly.org), not Orderly One — different auth system (EIP-712/Ed25519).
Graduation Status & Fees:
| Endpoint | Description |
|---|---|
GET /api/graduation/status | Basic status: { currentBrokerId, approved } |
GET /api/graduation/graduation-status | Detailed: { isGraduated, brokerId, isMultisig, multisigAddress } |
GET /api/graduation/fees | Current maker/taker/RWA fee rates |
GET /api/graduation/tier | Builder Staking Programme tier |
This skill references the Orderly MCP server. If not installed, see orderly-onboarding skill for setup.
Tool: get_orderly_one_api_info
{ endpoint: "/api/dex" } - Specific endpoint details{ category: "graduation" } - All endpoints in a category{} - Full API overview| Issue | Solution |
|---|---|
| DEX stuck deploying | Check /api/dex/{id}/workflow-runs/{runId} for job failures |
| Domain not working | CNAME to {org}.github.io, wait for DNS propagation |
| Graduation verify fails | Confirm tx to receiverAddress, wait for confirmations |
| "Broker ID already taken" | Choose a different brokerId in verify-tx |
| "Transaction hash already used" | Each tx can only be used once (anti-replay). Send a new payment |
| "Must register EVM address" | Complete admin wallet registration (Step 4) before calling finalize-admin-wallet |
| "Already graduated" | Each user can only graduate once |
| Logo upload fails | Check file size limits (250KB primary, 100KB secondary) |
| Invalid CSS | Validate themeCSS syntax before submitting |