d.prod.pro docs
API

API Overview

d.pro's backend API versus the Hyperliquid API — what each covers and when to use which.

API Overview

d.pro exposes two distinct API surfaces:

  1. d.pro Backend API (dpro-backend) — d.pro-specific features: referrals, OPC, watchlist, cohort, leaderboard, skill market
  2. Hyperliquid API — trading execution, market data, account state, WebSocket streams

For core trading operations (placing orders, reading positions, subscribing to market data), use the Hyperliquid API directly. d.pro's UI wraps it, but you can also call it directly.

For d.pro-exclusive features, use the d.pro Backend API.

The d.pro backend runs on Fastify (via NestJS) and exposes a REST API at the base path /api/v1/. All protected endpoints require a JWT token obtained via the authentication flow.

API surfaces

d.pro Backend API

Base URL: https://api.d.pro/api/v1/

Authentication: Bearer JWT (see Authentication)

Modules and endpoints:

ModuleBase PathDescription
Auth/authJWT session management
Referral System/referralCreate codes, bind, claim rewards
OPC/opcWhite-label platform management
Watchlist/watchlistAddress group monitoring
Cohort/cohortComparative analytics
Leaderboard/leaderboardEnhanced leaderboard
Skill Market/skill-marketBrowse and download AI skills
Hyperliquid Proxy/hlProxied Hyperliquid data (with caching)
Revenue/revenueOPC revenue rounds
Claim/claimClaim rounds management

Content type: application/json for all requests and responses.

Pagination: All list endpoints support page and limit query parameters.

Hyperliquid API

All Hyperliquid API calls are POST requests to two endpoints:

EndpointUsage
https://api.hyperliquid.xyz/infoRead-only: market data, account state
https://api.hyperliquid.xyz/exchangeWrite: place orders, transfers, modifications

Request format:

{
  "type": "clearinghouseState",
  "user": "0x..."
}

WebSocket: wss://api.hyperliquid.xyz/ws for real-time subscriptions.

For complete Hyperliquid API documentation, see Hyperliquid's official docs.

d.pro API quick reference

Rate limits

The d.pro API enforces per-IP and per-authenticated-user rate limits. Exceeding the limit returns HTTP 429.

Hyperliquid's API has its own rate limits — see the Hyperliquid rate limits documentation for details.

Error format

d.pro API errors follow standard HTTP semantics:

{
  "statusCode": 401,
  "message": "Unauthorized",
  "error": "Invalid or expired JWT token"
}

Hyperliquid API errors are embedded in HTTP 200 responses:

{
  "status": "err",
  "response": "Order would immediately cross"
}

On this page