API Summary

Summary of APIs available

API Overview

Zodia Markets provides REST API for viewing balance, transactions and limits and WebSocket for real-time price streaming and order execution. Clients may also register a Webhook to retrieve real time transaction notifications.

API use cases

Use CaseAPI
Real-time price updatesWebSocket
Trade execution on live pricesWebSocket
Specify beneficiary for crypto delivery on trade executionWebSocket
Query account balancesREST
Historical transaction data requestsREST
Query Credit LimitsREST
Retrieve beneficiary and wallet informationREST
Transfer funds between trading and withdrawal accountsREST
Retrieve list of available pairsREST
Realtime trade, deposit, withdrawal and settlement statusWebhook

REST API

Technical Details

DetailValue
ProtocolHTTPS
AuthenticationAPI Key + HMAC signature
Request FormatJSON
Response FormatJSON
Rate Limit30 requests per second for each IP
VersioningURI path (/3/)

Key Endpoints

POST    /api/3/account                 # Get account balances
POST    /api/3/transfer/list           # List of internal balance transfers
POST    /api/3/transaction/list        # List transaction history
POST    /api/3/beneficiaries           # List beneficiaries
POST    /api/3/user/limit              # Get credit limits

View full REST API reference →


WebSocket API

Technical Details

DetailValue
ProtocolWSS (WebSocket Secure)
AuthenticationAPI Key + token exchange
Message FormatJSON
Rate limit30 messages per second for each account
Max updates4 updates per second for each active connection

Authentication

WebSocket connections require:

  1. Initial HTTPS authentication to obtain session token (REST)
  2. Token sent in connection handshake
  3. Periodic token refresh for long-lived connections

View WebSocket authentication guide →


Webhook

Webhooks can be registered via the Customer Portal when creating the API key. Zodia Markets provides realtime transaction information on the webhook which will include:

  • Transaction legs
  • Crypto and fiat deposits
  • Crypto and fiat withdrawals

View Webhook setup guide →


API Feature Comparison

FeatureREST APIWebSocket APIWebhook
Brokerage - RFS (Request for Stream)❌ Not available✅ Real-time streaming❌ Not available
Order execution❌ Not available✅ On streamed prices❌ Not available
Beneficiary delivery instructions❌ Not available✅ On streamed prices❌ Not available
Account balances✅ Query via POST❌ Use REST❌ Not available
Transaction history✅ With pagination❌ Use REST or Websocket✅ Real time changes
Initiate internal balance transfers✅ POST requests❌ Use REST❌ Not available
Manage and view beneficiaries✅ POST operations❌ Use REST❌ Not available
View credit limits✅ POST requests❌ Use REST❌ Not available


Additional Requirements

IP Whitelisting

IP whitelisting is generally not required although there may be exception. Contact your sales representative for restriction details.


Best Practices

REST API

  • Implement exponential backoff for retries
  • Cache balance queries when appropriate (don't poll excessively)
  • Use pagination for large transaction lists
  • Handle rate limits gracefully with 429 responses

WebSocket API

  • Implement automatic reconnection logic with exponential backoff
  • Handle heartbeat timeouts (reconnect if no pong received)
  • Maintain subscription state across reconnections
  • Validate price timestamps and quoteID before order submission
  • Set reasonable price expiry tolerances

Rate Limits & Throttling

API TypeLimitWindowPerUpdate Frequency
REST API30SecondIP connectedN/A
WebSocket30messagesAccount4 updates per second
WebSocket (order)1 order250 msAccountN/A
WebhookN/AN/AN/A1 update per second