kucoin-api 2.4.1 → 2.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +37 -0
- package/dist/cjs/BrokerClient.d.ts +2 -2
- package/dist/cjs/BrokerClient.js +2 -2
- package/dist/cjs/FuturesClient.d.ts +1 -3
- package/dist/cjs/FuturesClient.js +0 -4
- package/dist/cjs/FuturesClient.js.map +1 -1
- package/dist/cjs/SpotClient.d.ts +21 -16
- package/dist/cjs/SpotClient.js +20 -17
- package/dist/cjs/SpotClient.js.map +1 -1
- package/dist/cjs/UnifiedAPIClient.d.ts +8 -5
- package/dist/cjs/UnifiedAPIClient.js +7 -4
- package/dist/cjs/UnifiedAPIClient.js.map +1 -1
- package/dist/cjs/WebsocketClient.js +1 -1
- package/dist/cjs/WebsocketClient.js.map +1 -1
- package/dist/cjs/lib/BaseRestClient.js +8 -0
- package/dist/cjs/lib/BaseRestClient.js.map +1 -1
- package/dist/cjs/lib/requestUtils.d.ts +22 -6
- package/dist/cjs/lib/requestUtils.js +39 -9
- package/dist/cjs/lib/requestUtils.js.map +1 -1
- package/dist/cjs/types/request/broker.types.d.ts +1 -1
- package/dist/cjs/types/request/spot-funding.d.ts +2 -2
- package/dist/cjs/types/request/uta-types.d.ts +7 -0
- package/dist/cjs/types/response/broker.types.d.ts +1 -1
- package/dist/cjs/types/response/spot-account.d.ts +3 -1
- package/dist/cjs/types/response/uta-types.d.ts +17 -0
- package/dist/cjs/types/websockets/ws-general.d.ts +14 -1
- package/dist/mjs/BrokerClient.d.ts +2 -2
- package/dist/mjs/BrokerClient.js +2 -2
- package/dist/mjs/FuturesClient.d.ts +1 -3
- package/dist/mjs/FuturesClient.js +1 -5
- package/dist/mjs/FuturesClient.js.map +1 -1
- package/dist/mjs/SpotClient.d.ts +21 -16
- package/dist/mjs/SpotClient.js +21 -18
- package/dist/mjs/SpotClient.js.map +1 -1
- package/dist/mjs/UnifiedAPIClient.d.ts +8 -5
- package/dist/mjs/UnifiedAPIClient.js +8 -5
- package/dist/mjs/UnifiedAPIClient.js.map +1 -1
- package/dist/mjs/WebsocketClient.js +1 -1
- package/dist/mjs/WebsocketClient.js.map +1 -1
- package/dist/mjs/lib/BaseRestClient.js +8 -0
- package/dist/mjs/lib/BaseRestClient.js.map +1 -1
- package/dist/mjs/lib/requestUtils.d.ts +22 -6
- package/dist/mjs/lib/requestUtils.js +39 -9
- package/dist/mjs/lib/requestUtils.js.map +1 -1
- package/dist/mjs/types/request/broker.types.d.ts +1 -1
- package/dist/mjs/types/request/spot-funding.d.ts +2 -2
- package/dist/mjs/types/request/uta-types.d.ts +7 -0
- package/dist/mjs/types/response/broker.types.d.ts +1 -1
- package/dist/mjs/types/response/spot-account.d.ts +3 -1
- package/dist/mjs/types/response/uta-types.d.ts +17 -0
- package/dist/mjs/types/websockets/ws-general.d.ts +14 -1
- package/llms.txt +11758 -11091
- package/package.json +1 -1
|
@@ -2,16 +2,19 @@
|
|
|
2
2
|
* Used to switch how authentication/requests work under the hood
|
|
3
3
|
*/
|
|
4
4
|
export declare const REST_CLIENT_TYPE_ENUM: {
|
|
5
|
-
/** Spot & Margin */
|
|
5
|
+
/** Global & AU: Spot & Margin */
|
|
6
6
|
readonly main: "main";
|
|
7
|
-
/** Futures */
|
|
7
|
+
/** Global & AU: Futures */
|
|
8
8
|
readonly futures: "futures";
|
|
9
|
-
/** Broker */
|
|
9
|
+
/** Global: Broker */
|
|
10
10
|
readonly broker: "broker";
|
|
11
|
-
/** Unified Trading Account */
|
|
11
|
+
/** Global: Unified Trading Account */
|
|
12
12
|
readonly unifiedTradingAccount: "unifiedTradingAccount";
|
|
13
|
+
/** Dedicated EU: main (Spot & Margin). No futures at this time. */
|
|
14
|
+
readonly mainEU: "mainEU";
|
|
13
15
|
};
|
|
14
16
|
export type RestClientType = (typeof REST_CLIENT_TYPE_ENUM)[keyof typeof REST_CLIENT_TYPE_ENUM];
|
|
17
|
+
export type APIRegion = 'global' | 'EU' | 'AU';
|
|
15
18
|
export interface RestClientOptions {
|
|
16
19
|
/** Your API key */
|
|
17
20
|
apiKey?: string;
|
|
@@ -26,10 +29,23 @@ export interface RestClientOptions {
|
|
|
26
29
|
apiAccessToken?: string;
|
|
27
30
|
/** The API key version. Defaults to "2" right now. You can see this in your API management page */
|
|
28
31
|
apiKeyVersion?: number | string;
|
|
32
|
+
/**
|
|
33
|
+
* The API region you would like to work with:
|
|
34
|
+
* - Global (default)
|
|
35
|
+
* - API Docs: https://www.kucoin.com/docs-new/introduction
|
|
36
|
+
* - EU:
|
|
37
|
+
* - API Docs: https://www.kucoin.com/en-eu/docs-new/introduction/eu
|
|
38
|
+
* - Behaves the same as global, but keep in mind that futures may not be available at this time for EU users.
|
|
39
|
+
* - AU:
|
|
40
|
+
* - API Docs: https://www.kucoin.com/en-au/docs-new/introduction/au
|
|
41
|
+
* - Ensures regional market data is retrieved (e.g. correct trading pairs, correct tickers, etc).
|
|
42
|
+
* - Also ensures requests for AU users include the required extra header (X-SITE-TYPE: australia).
|
|
43
|
+
*/
|
|
44
|
+
apiRegion?: APIRegion;
|
|
29
45
|
/** Default: false. If true, we'll throw errors if any params are undefined */
|
|
30
46
|
strictParamValidation?: boolean;
|
|
31
47
|
/**
|
|
32
|
-
* Optionally override API protocol + domain
|
|
48
|
+
* Optionally override API protocol + domain. This will override any domain influence from the apiRegion parameter.
|
|
33
49
|
* e.g baseUrl: 'https://api.kucoin.com'
|
|
34
50
|
**/
|
|
35
51
|
baseUrl?: string;
|
|
@@ -58,4 +74,4 @@ export declare const APIIDMain = "NODESDK";
|
|
|
58
74
|
export declare const APIIDMainSign = "d28f5b4a-179d-4fcb-9c00-c8319c0bb82c";
|
|
59
75
|
export declare const APIIDFutures = "NODESDKFUTURES";
|
|
60
76
|
export declare const APIIDFuturesSign = "7f7fb0d6-e600-4ef4-8fe3-41e6aea9af84";
|
|
61
|
-
export declare function getRestBaseUrl(useTestnet: boolean,
|
|
77
|
+
export declare function getRestBaseUrl(useTestnet: boolean, restOptions: RestClientOptions, restClientType: RestClientType): string;
|
|
@@ -1,18 +1,23 @@
|
|
|
1
|
+
import { neverGuard } from './misc-util.js';
|
|
1
2
|
/**
|
|
2
3
|
* Used to switch how authentication/requests work under the hood
|
|
3
4
|
*/
|
|
4
5
|
export const REST_CLIENT_TYPE_ENUM = {
|
|
5
|
-
/** Spot & Margin */
|
|
6
|
+
/** Global & AU: Spot & Margin */
|
|
6
7
|
main: 'main',
|
|
7
|
-
/** Futures */
|
|
8
|
+
/** Global & AU: Futures */
|
|
8
9
|
futures: 'futures',
|
|
9
|
-
/** Broker */
|
|
10
|
+
/** Global: Broker */
|
|
10
11
|
broker: 'broker',
|
|
11
|
-
/** Unified Trading Account */
|
|
12
|
+
/** Global: Unified Trading Account */
|
|
12
13
|
unifiedTradingAccount: 'unifiedTradingAccount',
|
|
14
|
+
/** Dedicated EU: main (Spot & Margin). No futures at this time. */
|
|
15
|
+
mainEU: 'mainEU',
|
|
13
16
|
};
|
|
14
17
|
const kucoinURLMap = {
|
|
15
18
|
[REST_CLIENT_TYPE_ENUM.main]: 'https://api.kucoin.com',
|
|
19
|
+
// https://www.kucoin.com/en-eu/docs-new/introduction/eu
|
|
20
|
+
[REST_CLIENT_TYPE_ENUM.mainEU]: 'https://api.kucoin.eu',
|
|
16
21
|
[REST_CLIENT_TYPE_ENUM.futures]: 'https://api-futures.kucoin.com',
|
|
17
22
|
[REST_CLIENT_TYPE_ENUM.broker]: 'https://api-broker.kucoin.com',
|
|
18
23
|
[REST_CLIENT_TYPE_ENUM.unifiedTradingAccount]: 'https://api.kucoin.com',
|
|
@@ -39,14 +44,39 @@ export const APIIDMain = 'NODESDK';
|
|
|
39
44
|
export const APIIDMainSign = 'd28f5b4a-179d-4fcb-9c00-c8319c0bb82c';
|
|
40
45
|
export const APIIDFutures = 'NODESDKFUTURES';
|
|
41
46
|
export const APIIDFuturesSign = '7f7fb0d6-e600-4ef4-8fe3-41e6aea9af84';
|
|
42
|
-
export function getRestBaseUrl(useTestnet,
|
|
47
|
+
export function getRestBaseUrl(useTestnet, restOptions, restClientType) {
|
|
48
|
+
let resolvedClientType = restClientType;
|
|
49
|
+
if (restOptions.baseUrl) {
|
|
50
|
+
return restOptions.baseUrl;
|
|
51
|
+
}
|
|
52
|
+
// Override to EU URL for EU regional users
|
|
53
|
+
if (restOptions.apiRegion === 'EU') {
|
|
54
|
+
switch (restClientType) {
|
|
55
|
+
case REST_CLIENT_TYPE_ENUM.main:
|
|
56
|
+
case REST_CLIENT_TYPE_ENUM.mainEU: {
|
|
57
|
+
resolvedClientType = REST_CLIENT_TYPE_ENUM.mainEU;
|
|
58
|
+
break;
|
|
59
|
+
}
|
|
60
|
+
case REST_CLIENT_TYPE_ENUM.futures: {
|
|
61
|
+
console.warn('Futures market is not available for EU users at this time. API requests may not function as expected');
|
|
62
|
+
break;
|
|
63
|
+
}
|
|
64
|
+
case REST_CLIENT_TYPE_ENUM.broker: {
|
|
65
|
+
break;
|
|
66
|
+
}
|
|
67
|
+
case REST_CLIENT_TYPE_ENUM.unifiedTradingAccount: {
|
|
68
|
+
resolvedClientType = REST_CLIENT_TYPE_ENUM.mainEU;
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
default: {
|
|
72
|
+
throw neverGuard(restClientType, `Unhandled REST Client Type "${restClientType}"`);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
43
76
|
const exchangeBaseUrls = {
|
|
44
|
-
livenet: kucoinURLMap[
|
|
77
|
+
livenet: kucoinURLMap[resolvedClientType],
|
|
45
78
|
testnet: 'https://noTestnet',
|
|
46
79
|
};
|
|
47
|
-
if (restInverseOptions.baseUrl) {
|
|
48
|
-
return restInverseOptions.baseUrl;
|
|
49
|
-
}
|
|
50
80
|
if (useTestnet) {
|
|
51
81
|
return exchangeBaseUrls.testnet;
|
|
52
82
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"requestUtils.js","sourceRoot":"","sources":["../../../src/lib/requestUtils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,
|
|
1
|
+
{"version":3,"file":"requestUtils.js","sourceRoot":"","sources":["../../../src/lib/requestUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ export interface GetBrokerSubAccountsRequest {
|
|
|
8
8
|
currentPage?: number;
|
|
9
9
|
pageSize?: number;
|
|
10
10
|
}
|
|
11
|
-
export type BrokerSubAccountPermission = '
|
|
11
|
+
export type BrokerSubAccountPermission = 'General' | 'Spot' | 'Margin' | 'Futures' | 'InnerTransfer' | 'Transfer' | 'Earn';
|
|
12
12
|
export interface CreateBrokerSubAccountApiRequest {
|
|
13
13
|
uid: string;
|
|
14
14
|
passphrase: string;
|
|
@@ -82,11 +82,11 @@ export interface FlexTransferRequest {
|
|
|
82
82
|
currency?: string;
|
|
83
83
|
amount: string;
|
|
84
84
|
fromUserId?: string;
|
|
85
|
-
fromAccountType: 'MAIN' | 'TRADE' | 'CONTRACT' | 'MARGIN' | 'ISOLATED' | 'TRADE_HF' | 'MARGIN_V2' | 'ISOLATED_V2' | 'OPTION';
|
|
85
|
+
fromAccountType: 'MAIN' | 'TRADE' | 'CONTRACT' | 'MARGIN' | 'ISOLATED' | 'TRADE_HF' | 'MARGIN_V2' | 'ISOLATED_V2' | 'UNIFIED' | 'OPTION';
|
|
86
86
|
fromAccountTag?: string;
|
|
87
87
|
type: 'INTERNAL' | 'PARENT_TO_SUB' | 'SUB_TO_PARENT';
|
|
88
88
|
toUserId?: string;
|
|
89
|
-
toAccountType: 'MAIN' | 'TRADE' | 'CONTRACT' | 'MARGIN' | 'ISOLATED' | 'TRADE_HF' | 'MARGIN_V2' | 'ISOLATED_V2' | 'OPTION';
|
|
89
|
+
toAccountType: 'MAIN' | 'TRADE' | 'CONTRACT' | 'MARGIN' | 'ISOLATED' | 'TRADE_HF' | 'MARGIN_V2' | 'ISOLATED_V2' | 'UNIFIED' | 'OPTION';
|
|
90
90
|
toAccountTag?: string;
|
|
91
91
|
}
|
|
92
92
|
export interface submitTransferMasterSubRequest {
|
|
@@ -215,6 +215,13 @@ export interface BatchCancelOrdersRequestUTA {
|
|
|
215
215
|
tradeType: 'SPOT' | 'FUTURES' | 'ISOLATED' | 'CROSS';
|
|
216
216
|
cancelOrderList: CancelOrderItemRequestUTA[];
|
|
217
217
|
}
|
|
218
|
+
/** Batch cancel orders by symbol (POST /order/cancel-all) */
|
|
219
|
+
export interface BatchCancelOrdersBySymbolRequestUTA {
|
|
220
|
+
tradeType: 'SPOT' | 'FUTURES' | 'MARGIN';
|
|
221
|
+
symbol: string;
|
|
222
|
+
marginMode?: 'CROSS' | 'ISOLATED';
|
|
223
|
+
orderFilter?: 'NORMAL' | 'ADVANCED';
|
|
224
|
+
}
|
|
218
225
|
export interface SetDCPRequestUTA {
|
|
219
226
|
tradeType: 'SPOT' | 'FUTURES' | 'MARGIN';
|
|
220
227
|
timeout: number;
|
|
@@ -37,7 +37,7 @@ export interface BrokerSubAccountApi {
|
|
|
37
37
|
label: string;
|
|
38
38
|
apiKey: string;
|
|
39
39
|
apiVersion: number;
|
|
40
|
-
permissions: ('General' | 'Spot' | 'Futures')[];
|
|
40
|
+
permissions: ('General' | 'Spot' | 'Margin' | 'Futures' | 'InnerTransfer' | 'Transfer' | 'Earn')[];
|
|
41
41
|
ipWhitelist: string[];
|
|
42
42
|
createdAt: number;
|
|
43
43
|
}
|
|
@@ -52,7 +52,8 @@ export interface AccountHFMarginTransactions {
|
|
|
52
52
|
amount: string;
|
|
53
53
|
fee: string;
|
|
54
54
|
balance: string;
|
|
55
|
-
|
|
55
|
+
/** Migrating from MARGIN_V2/ISOLATED_V2 to MARGIN/ISOLATED per SPOT Margin HF migration */
|
|
56
|
+
accountType: 'MARGIN' | 'ISOLATED' | 'MARGIN_V2' | 'ISOLATED_V2';
|
|
56
57
|
bizType: 'TRANSFER' | 'MARGIN_EXCHANGE' | 'ISOLATED_EXCHANGE' | 'LIQUIDATION' | 'ASSERT_RETURN';
|
|
57
58
|
direction: 'out' | 'in';
|
|
58
59
|
createdAt: string;
|
|
@@ -211,4 +212,5 @@ export interface ApiKeyInfo {
|
|
|
211
212
|
createdAt: number;
|
|
212
213
|
expiredAt?: number | null;
|
|
213
214
|
thirdPartyApp?: string;
|
|
215
|
+
siteType?: 'global' | 'turkey' | 'australia' | 'europe' | 'thailand';
|
|
214
216
|
}
|
|
@@ -457,6 +457,23 @@ export interface BatchCancelOrdersResponseUTA {
|
|
|
457
457
|
tradeType: 'SPOT' | 'FUTURES' | 'ISOLATED' | 'CROSS';
|
|
458
458
|
items: BatchCancelOrderItemResponseUTA[];
|
|
459
459
|
}
|
|
460
|
+
/** Batch cancel by symbol - Classic response (orderId list) */
|
|
461
|
+
export interface BatchCancelOrdersBySymbolItemClassicUTA {
|
|
462
|
+
orderId: string;
|
|
463
|
+
}
|
|
464
|
+
/** Batch cancel by symbol - UTA response (full result per order) */
|
|
465
|
+
export interface BatchCancelOrdersBySymbolItemUTA {
|
|
466
|
+
code?: string;
|
|
467
|
+
msg?: string;
|
|
468
|
+
orderId?: string;
|
|
469
|
+
ts?: number;
|
|
470
|
+
clientOid?: string | null;
|
|
471
|
+
}
|
|
472
|
+
export interface BatchCancelOrdersBySymbolResponseUTA {
|
|
473
|
+
tradeType: 'SPOT' | 'FUTURES' | 'MARGIN';
|
|
474
|
+
ts?: number;
|
|
475
|
+
items: BatchCancelOrdersBySymbolItemClassicUTA[] | BatchCancelOrdersBySymbolItemUTA[];
|
|
476
|
+
}
|
|
460
477
|
export interface DCPResponseUTA {
|
|
461
478
|
tradeType: 'SPOT' | 'FUTURES' | 'MARGIN';
|
|
462
479
|
symbol: string[];
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AxiosRequestConfig } from 'axios';
|
|
2
2
|
import type { ClientRequestArgs } from 'http';
|
|
3
3
|
import WebSocket from 'isomorphic-ws';
|
|
4
|
-
import { RestClientOptions } from '../../lib/requestUtils.js';
|
|
4
|
+
import { APIRegion, RestClientOptions } from '../../lib/requestUtils.js';
|
|
5
5
|
/** General configuration for the WebsocketClient */
|
|
6
6
|
export interface WSClientConfigurableOptions {
|
|
7
7
|
/** Your API key */
|
|
@@ -10,6 +10,19 @@ export interface WSClientConfigurableOptions {
|
|
|
10
10
|
apiSecret?: string;
|
|
11
11
|
/** Your API passphrase (can be anything) that you included when creating this API key */
|
|
12
12
|
apiPassphrase?: string;
|
|
13
|
+
/**
|
|
14
|
+
* The API region you would like to work with:
|
|
15
|
+
* - Global (default)
|
|
16
|
+
* - API Docs: https://www.kucoin.com/docs-new/introduction
|
|
17
|
+
* - EU:
|
|
18
|
+
* - API Docs: https://www.kucoin.com/en-eu/docs-new/introduction/eu
|
|
19
|
+
* - Behaves the same as global, but keep in mind that futures may not be available at this time for EU users.
|
|
20
|
+
* - AU:
|
|
21
|
+
* - API Docs: https://www.kucoin.com/en-au/docs-new/introduction/au
|
|
22
|
+
* - Ensures regional market data is retrieved (e.g. correct trading pairs, correct tickers, etc).
|
|
23
|
+
* - Also ensures requests for AU users include the required extra header (X-SITE-TYPE: australia).
|
|
24
|
+
*/
|
|
25
|
+
apiRegion?: APIRegion;
|
|
13
26
|
/** Define a recv window when preparing a private websocket signature. This is in milliseconds, so 5000 == 5 seconds */
|
|
14
27
|
recvWindow?: number;
|
|
15
28
|
/** How often to check if the connection is alive */
|