Skip to Content
DevelopersREST API Reference

REST API Reference

The Orbit Finance adapter API serves pool data, token prices, trade history, and supports transaction building.

Base URL: https://orbit-dex.api.cipherlabsx.com/api/v1

All endpoints return JSON. No authentication required for read endpoints.


Pools

GET /pools

Fetch all Orbit Finance pools with current state.

curl https://orbit-dex.api.cipherlabsx.com/api/v1/pools

Response:

{ "pools": [ { "id": "EoLGqHKvtK9NcxjjnvSxTYYuFMYDeWTFFyKYj1DcJyPB", "programId": "Fn3fA3fjsmpULNL7E9U79jKTe1KHxPtQeWdURCbJXCnM", "baseMint": "Ciphern9cCXtms66s8Mm6wCFC27b2JProRQLYmiLMH3N", "quoteMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", "priceNumber": 0.00302, "priceUsd": 0.00302, "activeBin": -993, "binStepBps": 125, "baseFeeBps": 200, "liquidityUsd": 14929.27, "reserveBaseUi": 3240000, "reserveQuoteUi": 195.23 } ] }

GET /pools/:pool

Fetch a single pool by address.

curl https://orbit-dex.api.cipherlabsx.com/api/v1/pools/EoLGqHKvtK9NcxjjnvSxTYYuFMYDeWTFFyKYj1DcJyPB

GET /bins/:pool

Fetch bin liquidity data for a pool. Returns all active bins with reserves.

curl https://orbit-dex.api.cipherlabsx.com/api/v1/bins/EoLGqHKvtK9NcxjjnvSxTYYuFMYDeWTFFyKYj1DcJyPB

Prices

GET /tokens/prices

Get current USD prices for one or more tokens.

curl "https://orbit-dex.api.cipherlabsx.com/api/v1/tokens/prices?mints=Ciphern9cCXtms66s8Mm6wCFC27b2JProRQLYmiLMH3N"

Query params:

ParamTypeDescription
mintsstringComma-separated token mint addresses

Response:

{ "prices": [ { "mint": "Ciphern9cCXtms66s8Mm6wCFC27b2JProRQLYmiLMH3N", "priceUsd": 0.0038144, "lastUpdated": 1773837572473 } ], "ts": 1773837667444 }

GET /price/:mint

Get price for a single token.

GET /price-quote

Get a price quote between two tokens.

curl "https://orbit-dex.api.cipherlabsx.com/api/v1/price-quote?base=CIPHER_MINT&quote=USDC_MINT"

Volume & Trading

GET /volumes

Get 24h trading volumes per pool.

curl "https://orbit-dex.api.cipherlabsx.com/api/v1/volumes?tf=24h"

Query params:

ParamTypeDescription
tfstringTime frame: 1h, 24h, 7d
poolsstringOptional comma-separated pool addresses

Response:

{ "tf": "24h", "volumes": { "EoLGqHKvtK9NcxjjnvSxTYYuFMYDeWTFFyKYj1DcJyPB": 1181.04, "HQqS7RH8YoshgmGFbynCGywuzpGjWT627QjKWbUKoccu": 0 }, "ts": 1773837666708 }

GET /trades/:pool

Get recent trades for a pool.

GET /candles/:pool

Get OHLCV candle data for charting.

curl "https://orbit-dex.api.cipherlabsx.com/api/v1/candles/EoLGqHKv...?tf=1h&limit=100"

Query params:

ParamTypeDescription
tfstringTimeframe: 1m, 5m, 15m, 1h, 4h, 1d
limitnumberMax candles to return (default 100)

Tokens

GET /tokens

List all known tokens with metadata.

curl https://orbit-dex.api.cipherlabsx.com/api/v1/tokens

GET /tokens/:mint

Get metadata for a specific token.

GET /tokens/by-mints

Batch fetch token metadata.

curl "https://orbit-dex.api.cipherlabsx.com/api/v1/tokens/by-mints?mints=CIPHER_MINT,USDC_MINT"

Pool Creation

POST /pool/create

Create a new DLMM pool. Requires admin wallet signature.

curl -X POST https://orbit-dex.api.cipherlabsx.com/api/v1/pool/create \ -H "Content-Type: application/json" \ -d '{ "admin": "orb4xg...", "baseMint": "...", "quoteMint": "...", "binStepBps": 100, "initialPrice": 0.004, "feeConfig": { "baseFeeBps": 90, "creatorCutBps": 20000, "holdersCutBps": 30000, "nftCutBps": 10000, "protocolCutBps": 40000 } }'

Returns unsigned transaction(s) for signing.

POST /pool/create-batch

Create pool with initial liquidity in one call.


Staking

GET /streamflow/vaults

List Streamflow staking vaults.

GET /streamflow/stakes/:owner

Get staking positions for a wallet.

curl https://orbit-dex.api.cipherlabsx.com/api/v1/streamflow/stakes/GZ74i6xZX...

NFT Staking

GET /nft-staking/stats

Get overall NFT staking statistics.

GET /nft-staking/stakes/:owner

Get NFT staking positions for a wallet.

GET /nft-staking/status/:nftMint/:owner

Check stake status for a specific NFT.


Rewards

POST /rewards/holder/claimable

Calculate claimable holder rewards for a user.

curl -X POST https://orbit-dex.api.cipherlabsx.com/api/v1/rewards/holder/claimable \ -H "Content-Type: application/json" \ -d '{ "user": "WALLET_ADDRESS" }'

POST /rewards/nft/claimable

Calculate claimable NFT rewards for a user.


WebSocket

Real-time event streaming via WebSocket.

wss://orbit-dex.api.cipherlabsx.com/api/v1/ws

Authentication:

  1. Get a ticket: GET /api/v1/ws-ticket (requires WS_TOKEN header)
  2. Connect with ticket: wss://...?ticket=TICKET

Events streamed:

  • Pool state updates
  • New trades / swaps
  • Bin liquidity changes
  • Price updates

Health

GET /health

Basic health check.

{ "ok": true }

GET /health/detailed

Detailed health with RPC status, pool count, uptime.

GET /metrics

Prometheus-compatible metrics endpoint.


Rate Limits

The API is rate-limited per IP. If you need higher limits for integration purposes, reach out on X (@CipherLabsx).

Errors

All errors return:

{ "message": "Description of what went wrong", "error": "ErrorType", "statusCode": 400 }

Common status codes:

CodeMeaning
200Success
400Bad request (missing/invalid params)
404Not found
429Rate limited
500Server error
Last updated on