kucoin-api 2.1.23 → 2.2.0

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.
Files changed (98) hide show
  1. package/README.md +111 -14
  2. package/dist/cjs/WebsocketAPIClient.d.ts +123 -0
  3. package/dist/cjs/WebsocketAPIClient.js +147 -0
  4. package/dist/cjs/WebsocketAPIClient.js.map +1 -0
  5. package/dist/cjs/WebsocketClient.d.ts +14 -9
  6. package/dist/cjs/WebsocketClient.js +277 -37
  7. package/dist/cjs/WebsocketClient.js.map +1 -1
  8. package/dist/cjs/index.d.ts +4 -3
  9. package/dist/cjs/index.js +4 -3
  10. package/dist/cjs/index.js.map +1 -1
  11. package/dist/cjs/lib/BaseRestClient.d.ts +16 -0
  12. package/dist/cjs/lib/BaseRestClient.js +46 -12
  13. package/dist/cjs/lib/BaseRestClient.js.map +1 -1
  14. package/dist/cjs/lib/BaseWSClient.d.ts +30 -17
  15. package/dist/cjs/lib/BaseWSClient.js +248 -55
  16. package/dist/cjs/lib/BaseWSClient.js.map +1 -1
  17. package/dist/cjs/lib/requestUtils.d.ts +11 -0
  18. package/dist/cjs/lib/requestUtils.js.map +1 -1
  19. package/dist/cjs/lib/websocket/WsStore.d.ts +15 -3
  20. package/dist/cjs/lib/websocket/WsStore.js +61 -12
  21. package/dist/cjs/lib/websocket/WsStore.js.map +1 -1
  22. package/dist/cjs/lib/websocket/WsStore.types.d.ts +6 -4
  23. package/dist/cjs/lib/websocket/WsStore.types.js +2 -2
  24. package/dist/cjs/lib/websocket/WsStore.types.js.map +1 -1
  25. package/dist/cjs/lib/websocket/logger.d.ts +1 -0
  26. package/dist/cjs/lib/websocket/websocket-util.d.ts +12 -6
  27. package/dist/cjs/lib/websocket/websocket-util.js +17 -8
  28. package/dist/cjs/lib/websocket/websocket-util.js.map +1 -1
  29. package/dist/cjs/types/request/futures.types.d.ts +1 -0
  30. package/dist/cjs/types/websockets/ws-api.d.ts +123 -0
  31. package/dist/cjs/types/websockets/ws-api.js +22 -0
  32. package/dist/cjs/types/websockets/ws-api.js.map +1 -0
  33. package/dist/cjs/types/websockets/ws-events.d.ts +11 -0
  34. package/dist/cjs/types/websockets/ws-events.js +11 -0
  35. package/dist/cjs/types/websockets/ws-events.js.map +1 -0
  36. package/dist/cjs/types/websockets/{client.d.ts → ws-general.d.ts} +5 -0
  37. package/dist/cjs/types/websockets/{events.js → ws-general.js} +1 -1
  38. package/dist/cjs/types/websockets/ws-general.js.map +1 -0
  39. package/dist/mjs/WebsocketAPIClient.d.ts +123 -0
  40. package/dist/mjs/WebsocketAPIClient.js +143 -0
  41. package/dist/mjs/WebsocketAPIClient.js.map +1 -0
  42. package/dist/mjs/WebsocketClient.d.ts +14 -9
  43. package/dist/mjs/WebsocketClient.js +278 -38
  44. package/dist/mjs/WebsocketClient.js.map +1 -1
  45. package/dist/mjs/index.d.ts +4 -3
  46. package/dist/mjs/index.js +4 -3
  47. package/dist/mjs/index.js.map +1 -1
  48. package/dist/mjs/lib/BaseRestClient.d.ts +16 -0
  49. package/dist/mjs/lib/BaseRestClient.js +47 -13
  50. package/dist/mjs/lib/BaseRestClient.js.map +1 -1
  51. package/dist/mjs/lib/BaseWSClient.d.ts +30 -17
  52. package/dist/mjs/lib/BaseWSClient.js +248 -55
  53. package/dist/mjs/lib/BaseWSClient.js.map +1 -1
  54. package/dist/mjs/lib/requestUtils.d.ts +11 -0
  55. package/dist/mjs/lib/requestUtils.js.map +1 -1
  56. package/dist/mjs/lib/websocket/WsStore.d.ts +15 -3
  57. package/dist/mjs/lib/websocket/WsStore.js +61 -12
  58. package/dist/mjs/lib/websocket/WsStore.js.map +1 -1
  59. package/dist/mjs/lib/websocket/WsStore.types.d.ts +6 -4
  60. package/dist/mjs/lib/websocket/WsStore.types.js +2 -2
  61. package/dist/mjs/lib/websocket/WsStore.types.js.map +1 -1
  62. package/dist/mjs/lib/websocket/logger.d.ts +1 -0
  63. package/dist/mjs/lib/websocket/websocket-util.d.ts +12 -6
  64. package/dist/mjs/lib/websocket/websocket-util.js +15 -7
  65. package/dist/mjs/lib/websocket/websocket-util.js.map +1 -1
  66. package/dist/mjs/types/request/futures.types.d.ts +1 -0
  67. package/dist/mjs/types/websockets/ws-api.d.ts +123 -0
  68. package/dist/mjs/types/websockets/ws-api.js +19 -0
  69. package/dist/mjs/types/websockets/ws-api.js.map +1 -0
  70. package/dist/mjs/types/websockets/ws-events.d.ts +11 -0
  71. package/dist/mjs/types/websockets/ws-events.js +8 -0
  72. package/dist/mjs/types/websockets/ws-events.js.map +1 -0
  73. package/dist/mjs/types/websockets/{client.d.ts → ws-general.d.ts} +5 -0
  74. package/dist/mjs/types/websockets/ws-general.js +2 -0
  75. package/dist/mjs/types/websockets/ws-general.js.map +1 -0
  76. package/llms.txt +5985 -4979
  77. package/package.json +6 -4
  78. package/dist/cjs/types/websockets/client.js +0 -3
  79. package/dist/cjs/types/websockets/client.js.map +0 -1
  80. package/dist/cjs/types/websockets/events.d.ts +0 -5
  81. package/dist/cjs/types/websockets/events.js.map +0 -1
  82. package/dist/cjs/types/websockets/requests.d.ts +0 -8
  83. package/dist/cjs/types/websockets/requests.js +0 -3
  84. package/dist/cjs/types/websockets/requests.js.map +0 -1
  85. package/dist/cjs/types/websockets/wsAPI.d.ts +0 -9
  86. package/dist/cjs/types/websockets/wsAPI.js +0 -3
  87. package/dist/cjs/types/websockets/wsAPI.js.map +0 -1
  88. package/dist/mjs/types/websockets/client.js +0 -2
  89. package/dist/mjs/types/websockets/client.js.map +0 -1
  90. package/dist/mjs/types/websockets/events.d.ts +0 -5
  91. package/dist/mjs/types/websockets/events.js +0 -2
  92. package/dist/mjs/types/websockets/events.js.map +0 -1
  93. package/dist/mjs/types/websockets/requests.d.ts +0 -8
  94. package/dist/mjs/types/websockets/requests.js +0 -2
  95. package/dist/mjs/types/websockets/requests.js.map +0 -1
  96. package/dist/mjs/types/websockets/wsAPI.d.ts +0 -9
  97. package/dist/mjs/types/websockets/wsAPI.js +0 -2
  98. package/dist/mjs/types/websockets/wsAPI.js.map +0 -1
@@ -2,7 +2,7 @@ import axios from 'axios';
2
2
  import https from 'https';
3
3
  import { neverGuard } from './misc-util.js';
4
4
  import { APIIDFutures, APIIDFuturesSign, APIIDMain, APIIDMainSign, getRestBaseUrl, REST_CLIENT_TYPE_ENUM, serializeParams, } from './requestUtils.js';
5
- import { checkWebCryptoAPISupported, signMessage } from './webCryptoAPI.js';
5
+ import { checkWebCryptoAPISupported, signMessage, } from './webCryptoAPI.js';
6
6
  const MISSING_API_KEYS_ERROR = 'API Key, Secret & API Passphrase are ALL required to use the authenticated REST client';
7
7
  const ENABLE_HTTP_TRACE = typeof process === 'object' &&
8
8
  typeof process.env === 'object' &&
@@ -42,6 +42,7 @@ export class BaseRestClient {
42
42
  apiKey;
43
43
  apiSecret;
44
44
  apiPassphrase;
45
+ apiAccessToken;
45
46
  /**
46
47
  * Create an instance of the REST client. Pass API credentials in the object in the first parameter.
47
48
  * @param {RestClientOptions} [restClientOptions={}] options to configure REST API connectivity
@@ -81,6 +82,7 @@ export class BaseRestClient {
81
82
  this.apiKey = this.options.apiKey;
82
83
  this.apiSecret = this.options.apiSecret;
83
84
  this.apiPassphrase = this.options.apiPassphrase;
85
+ this.apiAccessToken = this.options.apiAccessToken;
84
86
  // Check Web Crypto API support when credentials are provided
85
87
  if (this.apiKey && this.apiSecret && this.apiPassphrase) {
86
88
  checkWebCryptoAPISupported();
@@ -105,6 +107,16 @@ export class BaseRestClient {
105
107
  }
106
108
  return Date.now();
107
109
  }
110
+ hasValidCredentials() {
111
+ const hasAll3APICredentials = this.apiKey && this.apiSecret && this.apiPassphrase;
112
+ return this.hasAccessToken() || hasAll3APICredentials;
113
+ }
114
+ setAccessToken(newAccessToken) {
115
+ this.apiAccessToken = newAccessToken;
116
+ }
117
+ hasAccessToken() {
118
+ return !!this.apiAccessToken;
119
+ }
108
120
  get(endpoint, params) {
109
121
  return this._call('GET', endpoint, params, true);
110
122
  }
@@ -180,6 +192,12 @@ export class BaseRestClient {
180
192
  requestParams,
181
193
  };
182
194
  }
195
+ async signMessage(paramsStr, secret, method, algorithm) {
196
+ if (typeof this.options.customSignMessageFn === 'function') {
197
+ return this.options.customSignMessageFn(paramsStr, secret);
198
+ }
199
+ return await signMessage(paramsStr, secret, method, algorithm);
200
+ }
183
201
  /**
184
202
  * @private sign request and set recv window
185
203
  */
@@ -195,7 +213,7 @@ export class BaseRestClient {
195
213
  serializedParams: '',
196
214
  queryParamsWithSign: '',
197
215
  };
198
- if (!this.apiKey || !this.apiSecret) {
216
+ if (!this.hasValidCredentials()) {
199
217
  return res;
200
218
  }
201
219
  const strictParamValidation = this.options.strictParamValidation;
@@ -205,11 +223,14 @@ export class BaseRestClient {
205
223
  ? serializeParams(data, strictParamValidation, encodeQueryStringValues, '?')
206
224
  : JSON.stringify(data) || '';
207
225
  const paramsStr = `${timestamp}${method}/${endpoint}${signRequestParams}`;
208
- res.sign = await signMessage(paramsStr, this.apiSecret, 'base64', 'SHA-256');
226
+ // Only sign when no access token is provided
227
+ if (!this.hasAccessToken()) {
228
+ res.sign = await this.signMessage(paramsStr, this.apiSecret, 'base64', 'SHA-256');
229
+ }
209
230
  res.queryParamsWithSign = signRequestParams;
210
231
  return res;
211
232
  }
212
- console.error(new Date(), neverGuard(signMethod, `Unhandled sign method: "${signMessage}"`));
233
+ console.error(new Date(), neverGuard(signMethod, `Unhandled sign method: "${signMethod}"`));
213
234
  return res;
214
235
  }
215
236
  async prepareSignParams(method, endpoint, signMethod, params, isPublicApi) {
@@ -219,7 +240,7 @@ export class BaseRestClient {
219
240
  paramsWithSign: params,
220
241
  };
221
242
  }
222
- if (!this.apiKey || !this.apiSecret || !this.apiPassphrase) {
243
+ if (!this.hasValidCredentials()) {
223
244
  throw new Error(MISSING_API_KEYS_ERROR);
224
245
  }
225
246
  return this.signRequest(params, endpoint, method, signMethod);
@@ -255,17 +276,32 @@ export class BaseRestClient {
255
276
  const partnerSign = this.getClientType() === REST_CLIENT_TYPE_ENUM.main
256
277
  ? APIIDMainSign
257
278
  : APIIDFuturesSign;
258
- const partnerSignResult = await signMessage(partnerSignParam, partnerSign, 'base64', 'SHA-256');
259
- const signedPassphrase = await signMessage(this.apiPassphrase, this.apiSecret, 'base64', 'SHA-256');
279
+ const partnerSignResult = await this.signMessage(partnerSignParam, partnerSign, 'base64', 'SHA-256');
280
+ const signedPassphrase = await this.signMessage(this.apiPassphrase, this.apiSecret, 'base64', 'SHA-256');
281
+ let signHeaders = {};
282
+ // Support for Authorization header, if provided:
283
+ // https://github.com/tiagosiebler/kucoin-api/issues/2
284
+ // Use restClient.setAccessToken(newToken), if you need to store a new access token
285
+ if (this.apiAccessToken) {
286
+ signHeaders = {
287
+ Authorization: this.apiAccessToken,
288
+ 'KC-API-PARTNER-SIGN': partnerSignResult,
289
+ };
290
+ }
291
+ else {
292
+ signHeaders = {
293
+ 'KC-API-SIGN': signResult.sign,
294
+ 'KC-API-PARTNER-SIGN': partnerSignResult,
295
+ 'KC-API-PASSPHRASE': signedPassphrase,
296
+ };
297
+ }
260
298
  if (method === 'GET' || method === 'DELETE') {
261
299
  return {
262
300
  ...options,
263
301
  headers: {
264
302
  ...authHeaders,
265
303
  ...options.headers,
266
- 'KC-API-SIGN': signResult.sign,
267
- 'KC-API-PARTNER-SIGN': partnerSignResult,
268
- 'KC-API-PASSPHRASE': signedPassphrase,
304
+ ...signHeaders,
269
305
  },
270
306
  url: options.url + signResult.queryParamsWithSign,
271
307
  };
@@ -275,9 +311,7 @@ export class BaseRestClient {
275
311
  headers: {
276
312
  ...authHeaders,
277
313
  ...options.headers,
278
- 'KC-API-SIGN': signResult.sign,
279
- 'KC-API-PARTNER-SIGN': partnerSignResult,
280
- 'KC-API-PASSPHRASE': signedPassphrase,
314
+ ...signHeaders,
281
315
  },
282
316
  data: params,
283
317
  };
@@ -1 +1 @@
1
- {"version":3,"file":"BaseRestClient.js","sourceRoot":"","sources":["../../../src/lib/BaseRestClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseRestClient.js","sourceRoot":"","sources":["../../../src/lib/BaseRestClient.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,20 @@
1
1
  import EventEmitter from 'events';
2
2
  import WebSocket from 'isomorphic-ws';
3
- import { WebsocketClientOptions, WSClientConfigurableOptions } from '../types/websockets/client.js';
4
- import { WsOperation } from '../types/websockets/requests.js';
3
+ import { WsOperation } from '../types/websockets/ws-api.js';
4
+ import { MessageEventLike } from '../types/websockets/ws-events.js';
5
+ import { WebsocketClientOptions, WSClientConfigurableOptions } from '../types/websockets/ws-general.js';
5
6
  import { DefaultLogger } from './websocket/logger.js';
6
- import { MessageEventLike, WsTopicRequest, WsTopicRequestOrStringTopic } from './websocket/websocket-util.js';
7
+ import { WsTopicRequest, WsTopicRequestOrStringTopic } from './websocket/websocket-util.js';
7
8
  import { WsStore } from './websocket/WsStore.js';
8
9
  import { WSConnectedResult } from './websocket/WsStore.types.js';
10
+ type UseTheExceptionEventInstead = never;
9
11
  interface WSClientEventMap<WsKey extends string> {
10
12
  /** Connection opened. If this connection was previously opened and reconnected, expect the reconnected event instead */
11
13
  open: (evt: {
12
14
  wsKey: WsKey;
13
15
  event: any;
16
+ wsUrl: string;
17
+ ws: WebSocket;
14
18
  }) => void;
15
19
  /** Reconnecting a dropped connection */
16
20
  reconnect: (evt: {
@@ -21,6 +25,8 @@ interface WSClientEventMap<WsKey extends string> {
21
25
  reconnected: (evt: {
22
26
  wsKey: WsKey;
23
27
  event: any;
28
+ wsUrl: string;
29
+ ws: WebSocket;
24
30
  }) => void;
25
31
  /** Connection closed */
26
32
  close: (evt: {
@@ -39,9 +45,11 @@ interface WSClientEventMap<WsKey extends string> {
39
45
  exception: (response: any & {
40
46
  wsKey: WsKey;
41
47
  }) => void;
42
- error: (response: any & {
43
- wsKey: WsKey;
44
- }) => void;
48
+ /**
49
+ * See for more information: https://github.com/tiagosiebler/bybit-api/issues/413
50
+ * @deprecated Use the 'exception' event instead. The 'error' event had the unintended consequence of throwing an unhandled promise rejection.
51
+ */
52
+ error: UseTheExceptionEventInstead;
45
53
  /** Confirmation that a connection successfully authenticated */
46
54
  authenticated: (event: {
47
55
  wsKey: WsKey;
@@ -49,8 +57,9 @@ interface WSClientEventMap<WsKey extends string> {
49
57
  }) => void;
50
58
  }
51
59
  export interface EmittableEvent<TEvent = any> {
52
- eventType: 'response' | 'update' | 'exception' | 'authenticated' | 'connectionReady';
60
+ eventType: 'response' | 'update' | 'exception' | 'connectionReadyForAuth' | 'authenticated' | 'connectionReady';
53
61
  event: TEvent;
62
+ isWSAPIResponse?: boolean;
54
63
  }
55
64
  export interface BaseWebsocketClient<TWSKey extends string> {
56
65
  on<U extends keyof WSClientEventMap<TWSKey>>(event: U, listener: WSClientEventMap<TWSKey>[U]): this;
@@ -59,15 +68,15 @@ export interface BaseWebsocketClient<TWSKey extends string> {
59
68
  type WSTopic = string;
60
69
  export declare abstract class BaseWebsocketClient<TWSKey extends string> extends EventEmitter {
61
70
  private wsStore;
62
- protected logger: typeof DefaultLogger;
71
+ protected logger: DefaultLogger;
63
72
  protected options: WebsocketClientOptions;
64
73
  private wsApiRequestId;
65
- constructor(options?: WSClientConfigurableOptions, logger?: typeof DefaultLogger);
74
+ constructor(options?: WSClientConfigurableOptions, logger?: DefaultLogger);
66
75
  protected abstract sendPingEvent(wsKey: TWSKey, ws: WebSocket): void;
67
76
  protected abstract sendPongEvent(wsKey: TWSKey, ws: WebSocket): void;
68
- protected abstract isWsPong(data: any): boolean;
69
77
  protected abstract isWsPing(data: any): boolean;
70
- protected abstract getWsAuthRequestEvent(wsKey: TWSKey): Promise<object>;
78
+ protected abstract isWsPong(data: any): boolean;
79
+ protected abstract getWsAuthRequestEvent(wsKey: TWSKey, eventToAuth?: object): Promise<object | string | 'waitForEvent' | void>;
71
80
  protected abstract isPrivateTopicRequest(request: WsTopicRequest<WSTopic>, wsKey: TWSKey): boolean;
72
81
  /**
73
82
  * Returns a list of string events that can be individually sent upstream to complete subscribing/unsubscribing/etc to these topics
@@ -87,8 +96,6 @@ export declare abstract class BaseWebsocketClient<TWSKey extends string> extends
87
96
  protected isPrivateWsKey(wsKey: TWSKey): boolean;
88
97
  /** Returns auto-incrementing request ID, used to track promise references for async requests */
89
98
  protected getNewRequestId(): string;
90
- protected abstract sendWSAPIRequest(wsKey: TWSKey, channel: WSTopic, params?: any): Promise<unknown>;
91
- protected abstract sendWSAPIRequest(wsKey: TWSKey, channel: WSTopic, params: any): Promise<unknown>;
92
99
  /**
93
100
  * Subscribe to one or more topics on a WS connection (identified by WS Key).
94
101
  *
@@ -100,8 +107,8 @@ export declare abstract class BaseWebsocketClient<TWSKey extends string> extends
100
107
  * @param wsTopicRequests array of topics to subscribe to
101
108
  * @param wsKey ws key referring to the ws connection these topics should be subscribed on
102
109
  */
103
- subscribeTopicsForWsKey(wsTopicRequests: WsTopicRequestOrStringTopic<WSTopic>[], wsKey: TWSKey): false | Promise<WSConnectedResult | undefined> | undefined;
104
- protected unsubscribeTopicsForWsKey(wsTopicRequests: WsTopicRequestOrStringTopic<string>[], wsKey: TWSKey): void;
110
+ subscribeTopicsForWsKey(wsTopicRequests: WsTopicRequestOrStringTopic<WSTopic>[], wsKey: TWSKey): boolean | Promise<void> | Promise<WSConnectedResult | undefined>;
111
+ protected unsubscribeTopicsForWsKey(wsTopicRequests: WsTopicRequestOrStringTopic<string>[], wsKey: TWSKey): Promise<void> | undefined;
105
112
  /**
106
113
  * Splits topic requests into two groups, public & private topic requests
107
114
  */
@@ -114,7 +121,7 @@ export declare abstract class BaseWebsocketClient<TWSKey extends string> extends
114
121
  /**
115
122
  * Request connection to a specific websocket, instead of waiting for automatic connection.
116
123
  */
117
- connect(wsKey: TWSKey): Promise<WSConnectedResult | undefined>;
124
+ connect(wsKey: TWSKey, customUrl?: string | undefined, throwOnError?: boolean): Promise<WSConnectedResult | undefined>;
118
125
  private connectToWsUrl;
119
126
  private parseWsError;
120
127
  /** Get a signature, build the auth request and send it */
@@ -139,7 +146,7 @@ export declare abstract class BaseWebsocketClient<TWSKey extends string> extends
139
146
  /**
140
147
  * Try sending a string event on a WS connection (identified by the WS Key)
141
148
  */
142
- tryWsSend(wsKey: TWSKey, wsMessage: string): void;
149
+ tryWsSend(wsKey: TWSKey, wsMessage: string, throwExceptions?: boolean): void;
143
150
  private onWsOpen;
144
151
  /**
145
152
  * Called automatically once a connection is ready.
@@ -155,6 +162,8 @@ export declare abstract class BaseWebsocketClient<TWSKey extends string> extends
155
162
  * Only used for exchanges that require auth before sending private topic subscription requests
156
163
  */
157
164
  private onWsAuthenticated;
165
+ private onWsPing;
166
+ private onWsPong;
158
167
  private onWsMessage;
159
168
  private onWsClose;
160
169
  private getWs;
@@ -163,5 +172,9 @@ export declare abstract class BaseWebsocketClient<TWSKey extends string> extends
163
172
  * Promise-driven method to assert that a ws has successfully connected (will await until connection is open)
164
173
  */
165
174
  protected assertIsConnected(wsKey: TWSKey): Promise<unknown>;
175
+ /**
176
+ * Promise-driven method to assert that a ws has been successfully authenticated (will await until auth is confirmed)
177
+ */
178
+ assertIsAuthenticated(wsKey: TWSKey): Promise<unknown>;
166
179
  }
167
180
  export {};