Kucoin
Kucoin API Information
Kucoin API Link: https://www.kucoin.com/docs/basic-info/base-url
Base Endpoints
- Base Endpoint:
https://api.kucoin.com - Futures Endpoint:
https://api-futures.kucoin.com
Timestamps
- Unless otherwise specified, all timestamps returned from the API are in milliseconds (e.g., 1546658861000). Most modern languages and libraries can handle this without issues.
- However, please note that the timestamps between the matching engine and the order system are in nanoseconds.
- The
KC-API-TIMESTAMPheader must be a number in milliseconds in UTC since Unix Epoch, i.e., Unix Time. - The difference between your timestamp and the API server time must be less than 5 seconds, otherwise your request will be considered expired and rejected. If there could be a time difference between your server and the API server, it is recommended to query the API server time using the time endpoint.
Rate Limit
The new rate limit 2.0 has been introduced. Compared to 1.0, users can exceed the rate limit of a single interface more freely according to strategy and coordinate interfaces freely, allowing strategies that depend heavily on certain interfaces to operate smoothly. For example, in the 1.0 rate limit, high-frequency users’ order cancel interface was relatively limited. Under the new logic, as long as other interfaces are not heavily requested, order cancellation can be 2-3 times higher than before, meeting higher rate limit requirements. In other words, the new rate limit rules allow resource allocation and configure the interface optimally according to user needs.
| Level | Spot | Futures | Management | Public | Earn |
|---|---|---|---|---|---|
| VIP0 | 4000/30s | 2000/30s | 2000/30s | 2000/30s | 2000/30s |
| VIP1 | 6000/30s | 2000/30s | 2000/30s | 2000/30s | 2000/30s |
| VIP2 | 8000/30s | 4000/30s | 4000/30s | 2000/30s | 2000/30s |
| VIP3 | 10000/30s | 5000/30s | 5000/30s | 2000/30s | 2000/30s |
| VIP4 | 13000/30s | 6000/30s | 6000/30s | 2000/30s | 2000/30s |
| VIP5 | 16000/30s | 7000/30s | 7000/30s | 2000/30s | 2000/30s |
| VIP6 | 20000/30s | 8000/30s | 8000/30s | 2000/30s | 2000/30s |
| VIP7 | 23000/30s | 10000/30s | 10000/30s | 2000/30s | 2000/30s |
| VIP8 | 26000/30s | 12000/30s | 12000/30s | 2000/30s | 2000/30s |
| VIP9 | 30000/30s | 14000/30s | 14000/30s | 2000/30s | 2000/30s |
| VIP10 | 33000/30s | 16000/30s | 16000/30s | 2000/30s | 2000/30s |
| VIP11 | 36000/30s | 18000/30s | 18000/30s | 2000/30s | 2000/30s |
| VIP12 | 40000/30s | 20000/30s | 20000/30s | 2000/30s | 2000/30s |
Pagination
Pagination allows retrieving results based on the current page and is especially suitable for real-time data. Endpoints such as /api/v1/deposit-list, /api/v1/orders, and /api/v1/fills return the latest items by default. To fetch more results, users must specify the currentPage number in subsequent requests, based on the data returned from previous requests.
| Parameter | Default | Description |
|---|---|---|
| currentPage | 1 | Current request page. |
| pageSize | 50 | Number of results per request. Minimum is 10, maximum is 500. |
HTTP Errors Code
| Code | Meaning |
|---|---|
| 400 | Bad Request – Invalid request format. |
| 401 | Unauthorized – Invalid API Key. |
| 403 | Forbidden or Too Many Requests – The request is forbidden or Access limit breached. |
| 404 | Not Found – The specified resource could not be found. |
| 405 | Method Not Allowed – You tried to access the resource with an invalid method. |
| 415 | Unsupported Media Type. You need to use: application/json. |
| 500 | Internal Server Error – We had a problem with our server. Try again later. |
| 503 | Service Unavailable – We’re temporarily offline for maintenance. Please try again later. |