Skip to main content

General Information

This page covers general information that applies to all BigONE API endpoints.

Rate Limits​

To ensure service stability, BigONE enforces rate limits on API requests.

Default Limits​

TypeLimit
HTTP Requests500 requests per 10 seconds per IP
WebSocket Connections5 connections per user
Rate Limit Exceeded

If you exceed the rate limit, you will receive a 429 Too Many Requests response. Implement exponential backoff in your application to handle this gracefully.

Best Practices​

  1. Cache public data — Market data like tickers and order books can be cached for a few seconds
  2. Use WebSocket — For real-time data, use WebSocket instead of polling REST endpoints
  3. Batch requests — Use batch endpoints when available (e.g., multi-order creation)
  4. Implement backoff — If rate limited, wait before retrying

HTTP Status Codes​

BigONE APIs follow RFC HTTP standards.

CodeDescription
200OK — Request succeeded
400Bad Request — Invalid parameters
401Unauthorized — Authentication failed
403Forbidden — Insufficient permissions
404Not Found — Resource does not exist
429Too Many Requests — Rate limit exceeded
500Internal Server Error — Server-side error
503Service Unavailable — Service temporarily unavailable

Response Format​

All API responses follow a consistent JSON structure.

Success Response​

{
"code": 0,
"data": {
// Response data here
}
}

Paginated Response​

For endpoints that return lists, pagination is handled via page_token:

{
"code": 0,
"data": [
// Array of items
],
"page_token": "dxvf..."
}

To get the next page, include page_token as a query parameter in your next request.

Error Response​

{
"code": 40004,
"message": "Unauthorized"
}

The code field contains the error code (non-zero for errors), and message provides a description.

Timestamps​

  • All timestamps in the API are in milliseconds since the UNIX epoch (unless otherwise specified)
  • The nonce field in JWT tokens uses nanoseconds
  • Server time can be obtained from the /ping endpoint

Decimal Precision​

  • Prices and amounts are returned as strings to preserve precision
  • Always use decimal libraries (not floating point) when handling cryptocurrency amounts
  • Each asset pair has specific precision requirements — check the asset pair info endpoint

Request Headers​

Required Headers for Private APIs​

HeaderValue
AuthorizationBearer <JWT_TOKEN>
Content-Typeapplication/json (for POST/PUT requests)

Optional Headers​

HeaderDescription
Accept-LanguagePreferred language for error messages (en, zh-Hans)

Next Steps​