kucoin-api 2.1.22 → 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.
- package/README.md +111 -14
- package/dist/cjs/FuturesClient.d.ts +9 -0
- package/dist/cjs/FuturesClient.js +7 -0
- package/dist/cjs/FuturesClient.js.map +1 -1
- package/dist/cjs/WebsocketAPIClient.d.ts +123 -0
- package/dist/cjs/WebsocketAPIClient.js +147 -0
- package/dist/cjs/WebsocketAPIClient.js.map +1 -0
- package/dist/cjs/WebsocketClient.d.ts +14 -9
- package/dist/cjs/WebsocketClient.js +277 -37
- package/dist/cjs/WebsocketClient.js.map +1 -1
- package/dist/cjs/index.d.ts +4 -3
- package/dist/cjs/index.js +4 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/BaseRestClient.d.ts +16 -0
- package/dist/cjs/lib/BaseRestClient.js +46 -12
- package/dist/cjs/lib/BaseRestClient.js.map +1 -1
- package/dist/cjs/lib/BaseWSClient.d.ts +30 -17
- package/dist/cjs/lib/BaseWSClient.js +248 -55
- package/dist/cjs/lib/BaseWSClient.js.map +1 -1
- package/dist/cjs/lib/requestUtils.d.ts +11 -0
- package/dist/cjs/lib/requestUtils.js.map +1 -1
- package/dist/cjs/lib/websocket/WsStore.d.ts +15 -3
- package/dist/cjs/lib/websocket/WsStore.js +61 -12
- package/dist/cjs/lib/websocket/WsStore.js.map +1 -1
- package/dist/cjs/lib/websocket/WsStore.types.d.ts +6 -4
- package/dist/cjs/lib/websocket/WsStore.types.js +2 -2
- package/dist/cjs/lib/websocket/WsStore.types.js.map +1 -1
- package/dist/cjs/lib/websocket/logger.d.ts +1 -0
- package/dist/cjs/lib/websocket/websocket-util.d.ts +12 -6
- package/dist/cjs/lib/websocket/websocket-util.js +17 -8
- package/dist/cjs/lib/websocket/websocket-util.js.map +1 -1
- package/dist/cjs/types/request/futures.types.d.ts +1 -0
- package/dist/cjs/types/response/futures.types.d.ts +1 -0
- package/dist/cjs/types/websockets/ws-api.d.ts +123 -0
- package/dist/cjs/types/websockets/ws-api.js +22 -0
- package/dist/cjs/types/websockets/ws-api.js.map +1 -0
- package/dist/cjs/types/websockets/ws-events.d.ts +11 -0
- package/dist/cjs/types/websockets/ws-events.js +11 -0
- package/dist/cjs/types/websockets/ws-events.js.map +1 -0
- package/dist/cjs/types/websockets/{client.d.ts → ws-general.d.ts} +5 -0
- package/dist/cjs/types/websockets/{events.js → ws-general.js} +1 -1
- package/dist/cjs/types/websockets/ws-general.js.map +1 -0
- package/dist/mjs/FuturesClient.d.ts +9 -0
- package/dist/mjs/FuturesClient.js +7 -0
- package/dist/mjs/FuturesClient.js.map +1 -1
- package/dist/mjs/WebsocketAPIClient.d.ts +123 -0
- package/dist/mjs/WebsocketAPIClient.js +143 -0
- package/dist/mjs/WebsocketAPIClient.js.map +1 -0
- package/dist/mjs/WebsocketClient.d.ts +14 -9
- package/dist/mjs/WebsocketClient.js +278 -38
- package/dist/mjs/WebsocketClient.js.map +1 -1
- package/dist/mjs/index.d.ts +4 -3
- package/dist/mjs/index.js +4 -3
- package/dist/mjs/index.js.map +1 -1
- package/dist/mjs/lib/BaseRestClient.d.ts +16 -0
- package/dist/mjs/lib/BaseRestClient.js +47 -13
- package/dist/mjs/lib/BaseRestClient.js.map +1 -1
- package/dist/mjs/lib/BaseWSClient.d.ts +30 -17
- package/dist/mjs/lib/BaseWSClient.js +248 -55
- package/dist/mjs/lib/BaseWSClient.js.map +1 -1
- package/dist/mjs/lib/requestUtils.d.ts +11 -0
- package/dist/mjs/lib/requestUtils.js.map +1 -1
- package/dist/mjs/lib/websocket/WsStore.d.ts +15 -3
- package/dist/mjs/lib/websocket/WsStore.js +61 -12
- package/dist/mjs/lib/websocket/WsStore.js.map +1 -1
- package/dist/mjs/lib/websocket/WsStore.types.d.ts +6 -4
- package/dist/mjs/lib/websocket/WsStore.types.js +2 -2
- package/dist/mjs/lib/websocket/WsStore.types.js.map +1 -1
- package/dist/mjs/lib/websocket/logger.d.ts +1 -0
- package/dist/mjs/lib/websocket/websocket-util.d.ts +12 -6
- package/dist/mjs/lib/websocket/websocket-util.js +15 -7
- package/dist/mjs/lib/websocket/websocket-util.js.map +1 -1
- package/dist/mjs/types/request/futures.types.d.ts +1 -0
- package/dist/mjs/types/response/futures.types.d.ts +1 -0
- package/dist/mjs/types/websockets/ws-api.d.ts +123 -0
- package/dist/mjs/types/websockets/ws-api.js +19 -0
- package/dist/mjs/types/websockets/ws-api.js.map +1 -0
- package/dist/mjs/types/websockets/ws-events.d.ts +11 -0
- package/dist/mjs/types/websockets/ws-events.js +8 -0
- package/dist/mjs/types/websockets/ws-events.js.map +1 -0
- package/dist/mjs/types/websockets/{client.d.ts → ws-general.d.ts} +5 -0
- package/dist/mjs/types/websockets/ws-general.js +2 -0
- package/dist/mjs/types/websockets/ws-general.js.map +1 -0
- package/llms.txt +6632 -5613
- package/package.json +6 -4
- package/dist/cjs/types/websockets/client.js +0 -3
- package/dist/cjs/types/websockets/client.js.map +0 -1
- package/dist/cjs/types/websockets/events.d.ts +0 -5
- package/dist/cjs/types/websockets/events.js.map +0 -1
- package/dist/cjs/types/websockets/requests.d.ts +0 -8
- package/dist/cjs/types/websockets/requests.js +0 -3
- package/dist/cjs/types/websockets/requests.js.map +0 -1
- package/dist/cjs/types/websockets/wsAPI.d.ts +0 -9
- package/dist/cjs/types/websockets/wsAPI.js +0 -3
- package/dist/cjs/types/websockets/wsAPI.js.map +0 -1
- package/dist/mjs/types/websockets/client.js +0 -2
- package/dist/mjs/types/websockets/client.js.map +0 -1
- package/dist/mjs/types/websockets/events.d.ts +0 -5
- package/dist/mjs/types/websockets/events.js +0 -2
- package/dist/mjs/types/websockets/events.js.map +0 -1
- package/dist/mjs/types/websockets/requests.d.ts +0 -8
- package/dist/mjs/types/websockets/requests.js +0 -2
- package/dist/mjs/types/websockets/requests.js.map +0 -1
- package/dist/mjs/types/websockets/wsAPI.d.ts +0 -9
- package/dist/mjs/types/websockets/wsAPI.js +0 -2
- package/dist/mjs/types/websockets/wsAPI.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,4 +1,11 @@
|
|
|
1
|
-
# Node.js & JavaScript SDK for Kucoin REST APIs &
|
|
1
|
+
# Node.js & JavaScript SDK for Kucoin REST APIs, Websockets & WebSocket API
|
|
2
|
+
|
|
3
|
+
[](https://github.com/tiagosiebler/kucoin-api/actions/workflows/e2etest.yml)
|
|
4
|
+
[][1]
|
|
5
|
+
[][1]
|
|
6
|
+
[][1]
|
|
7
|
+
[][1]
|
|
8
|
+
[](https://t.me/nodetraders)
|
|
2
9
|
|
|
3
10
|
<p align="center">
|
|
4
11
|
<a href="https://www.npmjs.com/package/kucoin-api">
|
|
@@ -9,13 +16,6 @@
|
|
|
9
16
|
</a>
|
|
10
17
|
</p>
|
|
11
18
|
|
|
12
|
-
[][1]
|
|
13
|
-
[][1]
|
|
14
|
-
[][1]
|
|
15
|
-
[](https://github.com/tiagosiebler/kucoin-api/actions/workflows/e2etest.yml)
|
|
16
|
-
[][1]
|
|
17
|
-
[](https://t.me/nodetraders)
|
|
18
|
-
|
|
19
19
|
[1]: https://www.npmjs.com/package/kucoin-api
|
|
20
20
|
|
|
21
21
|
Updated & performant JavaScript & Node.js SDK for the Kucoin REST APIs and WebSockets:
|
|
@@ -24,6 +24,7 @@ Updated & performant JavaScript & Node.js SDK for the Kucoin REST APIs and WebSo
|
|
|
24
24
|
- Complete integration with all Kucoin REST APIs and WebSockets.
|
|
25
25
|
- Dedicated REST clients for Spot, Futures, and Broker operations
|
|
26
26
|
- Unified WebSocket client for all markets
|
|
27
|
+
- Dedicated WebSocket API client, to trade on the WebSocket API without the complexity of WebSockets.
|
|
27
28
|
- Complete TypeScript support (with type declarations for most API requests & responses).
|
|
28
29
|
- Strongly typed requests and responses.
|
|
29
30
|
- Automated end-to-end tests ensuring reliability.
|
|
@@ -33,6 +34,9 @@ Updated & performant JavaScript & Node.js SDK for the Kucoin REST APIs and WebSo
|
|
|
33
34
|
- Smart WebSocket persistence with automatic reconnection handling.
|
|
34
35
|
- Emit `reconnected` event when dropped connection is restored.
|
|
35
36
|
- Support for both public and private WebSocket streams.
|
|
37
|
+
- Supports WebSocket API on all available product groups, including Spot & Futures:
|
|
38
|
+
- Use the WebsocketClient's event-driven `sendWSAPIRequest()` method, or;
|
|
39
|
+
- Use the WebsocketAPIClient for a REST-like experience. Use the WebSocket API like a REST API! See [examples/WebSockets/ws-api-client.ts](./examples/WebSockets/ws-api-client.ts) for a demonstration.
|
|
36
40
|
- Browser-friendly HMAC signature mechanism.
|
|
37
41
|
- Automatically supports both ESM and CJS projects.
|
|
38
42
|
- Heavy automated end-to-end testing with real API calls.
|
|
@@ -52,9 +56,13 @@ Updated & performant JavaScript & Node.js SDK for the Kucoin REST APIs and WebSo
|
|
|
52
56
|
- [Spot & Margin Trading](#spot--margin-trading)
|
|
53
57
|
- [Futures Trading](#futures-trading)
|
|
54
58
|
- [Broker Operations](#broker-operations)
|
|
55
|
-
- [
|
|
56
|
-
- [
|
|
57
|
-
|
|
59
|
+
- [WebSockets](#websockets)
|
|
60
|
+
- [WebSocket Consumers](#websocket-consumers)
|
|
61
|
+
- [Public WebSocket Streams](#public-websocket-streams)
|
|
62
|
+
- [Private WebSocket Streams](#private-websocket-streams)
|
|
63
|
+
- [WebSocket API](#websocket-api)
|
|
64
|
+
- [Event Driven API](#event-driven-api)
|
|
65
|
+
- [Promise Driven API](#async-await-api)
|
|
58
66
|
- [Customise Logging](#customise-logging)
|
|
59
67
|
- [LLMs & AI](#use-with-llms--ai)
|
|
60
68
|
- [Used By](#used-by)
|
|
@@ -194,7 +202,11 @@ Key WebSocket features:
|
|
|
194
202
|
- Support for both public and private WebSocket streams
|
|
195
203
|
- Unified client for spot and futures markets
|
|
196
204
|
|
|
197
|
-
###
|
|
205
|
+
### WebSocket Consumers
|
|
206
|
+
|
|
207
|
+
All websockets are accessible via the shared `WebsocketClient`. As before, API credentials are optional unless the user data stream is required.
|
|
208
|
+
|
|
209
|
+
#### Public WebSocket Streams
|
|
198
210
|
|
|
199
211
|
For public market data, API credentials are not required:
|
|
200
212
|
|
|
@@ -278,12 +290,97 @@ try {
|
|
|
278
290
|
}
|
|
279
291
|
```
|
|
280
292
|
|
|
281
|
-
|
|
293
|
+
#### Private WebSocket Streams
|
|
282
294
|
|
|
283
295
|
For private account data streams, API credentials are required. The WebsocketClient will automatically handle authentication when you provide API credentials.
|
|
284
296
|
|
|
285
297
|
See [WebsocketClient](./src/WebsocketClient.ts) for further information and make sure to check the [examples](./examples/) folder for much more detail, especially [ws-spot-public.ts](./examples/ws-spot-public.ts), which explains a lot of detail.
|
|
286
298
|
|
|
299
|
+
### WebSocket API
|
|
300
|
+
|
|
301
|
+
Kucoin also support sending requests (commands) over an active WebSocket connection. This is called the WebSocket API. There are two key ways of interacting with the WebSocket API. The existing WebsocketClient allows raw event routing via the awaitable sendWSAPIRequest() method, or for a much simpler & convenient interface, use the promise-driven API. The surface feels like a REST API, but routing is automatically routed via a dedicated WebSocket connection.
|
|
302
|
+
|
|
303
|
+
#### Event Driven API
|
|
304
|
+
|
|
305
|
+
The WebSocket API is available in the [WebsocketClient](./src/websocket-client.ts) via the `sendWSAPIRequest(wsKey, command, commandParameters)` method.
|
|
306
|
+
|
|
307
|
+
Each call to this method is wrapped in a promise, which you can async await for a response, or handle it in a raw event-driven design.
|
|
308
|
+
|
|
309
|
+
#### Promise Driven API
|
|
310
|
+
|
|
311
|
+
The WebSocket API is also available in a promise-wrapped REST-like format. Either, as above, await any calls to `sendWSAPIRequest(...)`, or directly use the convenient WebsocketAPIClient. This class is very similar to existing REST API classes (such as the MainClient or USDMClient).
|
|
312
|
+
|
|
313
|
+
It provides one function per endpoint, feels like a REST API and will automatically route your request via an automatically persisted, authenticated and health-checked WebSocket API connection.
|
|
314
|
+
|
|
315
|
+
Below is an example showing how easy it is to use the WebSocket API without any concern for the complexity of managing WebSockets. For more detailed demonstration, take a look at the [examples/WebSockets/ws-api-client.ts](./examples/WebSockets//ws-api-client.ts) example:
|
|
316
|
+
|
|
317
|
+
```typescript
|
|
318
|
+
import { DefaultLogger, WebsocketAPIClient } from 'kucoin-api';
|
|
319
|
+
|
|
320
|
+
// or, if you prefer `require()`:
|
|
321
|
+
// const { DefaultLogger, WebsocketAPIClient } = require('kucoin-api');
|
|
322
|
+
|
|
323
|
+
const customLogger = {
|
|
324
|
+
...DefaultLogger,
|
|
325
|
+
// For a more detailed view of the WebsocketClient, enable the `trace` level by uncommenting the below line:
|
|
326
|
+
// trace: (...params) => console.log(new Date(), 'trace', ...params),
|
|
327
|
+
};
|
|
328
|
+
|
|
329
|
+
const account = {
|
|
330
|
+
key: process.env.API_KEY || 'keyHere',
|
|
331
|
+
secret: process.env.API_SECRET || 'secretHere',
|
|
332
|
+
passphrase: process.env.API_PASSPHRASE || 'apiPassPhraseHere', // This is NOT your account password
|
|
333
|
+
};
|
|
334
|
+
|
|
335
|
+
const wsClient = new WebsocketAPIClient(
|
|
336
|
+
{
|
|
337
|
+
apiKey: account.key,
|
|
338
|
+
apiSecret: account.secret,
|
|
339
|
+
apiPassphrase: account.passphrase,
|
|
340
|
+
|
|
341
|
+
// If you want your own event handlers instead of the default ones with logs, disable this setting and see the `attachEventHandlers` example below:
|
|
342
|
+
// attachEventListeners: false
|
|
343
|
+
},
|
|
344
|
+
// customLogger, // optional: uncomment this to inject a custom logger
|
|
345
|
+
);
|
|
346
|
+
|
|
347
|
+
// Make WebSocket API calls, very similar to a REST API:
|
|
348
|
+
|
|
349
|
+
wsClient
|
|
350
|
+
.submitNewSpotOrder({
|
|
351
|
+
side: 'buy',
|
|
352
|
+
symbol: 'BTC-USDT',
|
|
353
|
+
type: 'limit',
|
|
354
|
+
price: '150000',
|
|
355
|
+
size: '0.0001',
|
|
356
|
+
})
|
|
357
|
+
.then((syncSpotOrderResponse) => {
|
|
358
|
+
console.log('Sync spot order response:', syncSpotOrderResponse);
|
|
359
|
+
})
|
|
360
|
+
.catch((e) => {
|
|
361
|
+
console.log('Sync spot order error:', e);
|
|
362
|
+
});
|
|
363
|
+
|
|
364
|
+
wsClient
|
|
365
|
+
.submitFuturesOrder({
|
|
366
|
+
clientOid: 'futures-test-' + Date.now(),
|
|
367
|
+
side: 'buy',
|
|
368
|
+
symbol: 'XBTUSDTM',
|
|
369
|
+
marginMode: 'CROSS',
|
|
370
|
+
type: 'limit',
|
|
371
|
+
price: '1000',
|
|
372
|
+
qty: '0.01',
|
|
373
|
+
leverage: 10,
|
|
374
|
+
positionSide: 'LONG', // needed if trading two-way (hedge) position mode
|
|
375
|
+
})
|
|
376
|
+
.then((futuresOrderResponse) => {
|
|
377
|
+
console.log('Futures order response:', futuresOrderResponse);
|
|
378
|
+
})
|
|
379
|
+
.catch((e) => {
|
|
380
|
+
console.log('Futures order error:', e);
|
|
381
|
+
});
|
|
382
|
+
```
|
|
383
|
+
|
|
287
384
|
---
|
|
288
385
|
|
|
289
386
|
## Customise Logging
|
|
@@ -301,8 +398,8 @@ const logger = {
|
|
|
301
398
|
trace: (...params) => {
|
|
302
399
|
if (
|
|
303
400
|
[
|
|
401
|
+
// Selectively prevent some traces from logging
|
|
304
402
|
'Sending ping',
|
|
305
|
-
// 'Sending upstream ws message: ',
|
|
306
403
|
'Received pong',
|
|
307
404
|
].includes(params[0])
|
|
308
405
|
) {
|
|
@@ -449,6 +449,15 @@ export declare class FuturesClient extends BaseRestClient {
|
|
|
449
449
|
symbol: string;
|
|
450
450
|
level: number;
|
|
451
451
|
}): Promise<boolean>;
|
|
452
|
+
/**
|
|
453
|
+
* Switch Position Mode
|
|
454
|
+
* This endpoint can switch the position mode of the current symbol.
|
|
455
|
+
*/
|
|
456
|
+
updatePositionMode(params: {
|
|
457
|
+
positionMode: '0' | '1';
|
|
458
|
+
}): Promise<APISuccessResponse<{
|
|
459
|
+
positionMode: '0' | '1';
|
|
460
|
+
}>>;
|
|
452
461
|
/**
|
|
453
462
|
*
|
|
454
463
|
* REST - Futures Trading - Funding Fees
|
|
@@ -430,6 +430,13 @@ class FuturesClient extends BaseRestClient_js_1.BaseRestClient {
|
|
|
430
430
|
updateRiskLimitLevel(params) {
|
|
431
431
|
return this.postPrivate('api/v1/position/risk-limit-level/change', params);
|
|
432
432
|
}
|
|
433
|
+
/**
|
|
434
|
+
* Switch Position Mode
|
|
435
|
+
* This endpoint can switch the position mode of the current symbol.
|
|
436
|
+
*/
|
|
437
|
+
updatePositionMode(params) {
|
|
438
|
+
return this.postPrivate('api/v2/position/switchPositionMode', params);
|
|
439
|
+
}
|
|
433
440
|
/**
|
|
434
441
|
*
|
|
435
442
|
* REST - Futures Trading - Funding Fees
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FuturesClient.js","sourceRoot":"","sources":["../../src/FuturesClient.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"FuturesClient.js","sourceRoot":"","sources":["../../src/FuturesClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import { DefaultLogger } from './lib/websocket/logger.js';
|
|
2
|
+
import { WSAPIWsKey } from './lib/websocket/websocket-util.js';
|
|
3
|
+
import { BatchCancelOrdersRequest, Order } from './types/request/futures.types.js';
|
|
4
|
+
import { SubmitHFMarginOrderRequest } from './types/request/spot-margin-trading.js';
|
|
5
|
+
import { ModifyHFOrderRequest, SubmitHFOrderRequest } from './types/request/spot-trading.js';
|
|
6
|
+
import { BatchCancelOrderResult, SubmitMultipleOrdersFuturesResponse } from './types/response/futures.types.js';
|
|
7
|
+
import { MarginSubmitOrderV3Response } from './types/response/spot-margin-trading.js';
|
|
8
|
+
import { SubmitHFOrderSyncResponse, SyncCancelHFOrderResponse } from './types/response/spot-trading.js';
|
|
9
|
+
import { WSAPICancelOrderRequest, WSAPIOrderResponse, WSAPIResponse } from './types/websockets/ws-api.js';
|
|
10
|
+
import { WSClientConfigurableOptions } from './types/websockets/ws-general.js';
|
|
11
|
+
import { WebsocketClient } from './WebsocketClient.js';
|
|
12
|
+
/**
|
|
13
|
+
* Configurable options specific to only the REST-like WebsocketAPIClient
|
|
14
|
+
*/
|
|
15
|
+
export interface WSAPIClientConfigurableOptions {
|
|
16
|
+
/**
|
|
17
|
+
* Default: true
|
|
18
|
+
*
|
|
19
|
+
* Attach default event listeners, which will console log any high level
|
|
20
|
+
* events (opened/reconnecting/reconnected/etc).
|
|
21
|
+
*
|
|
22
|
+
* If you disable this, you should set your own event listeners
|
|
23
|
+
* on the embedded WS Client `wsApiClient.getWSClient().on(....)`.
|
|
24
|
+
*/
|
|
25
|
+
attachEventListeners: boolean;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* This is a minimal Websocket API wrapper around the WebsocketClient.
|
|
29
|
+
*
|
|
30
|
+
* Some methods support passing in a custom "wsKey". This is a reference to which WS connection should
|
|
31
|
+
* be used to transmit that message. This is only useful if you wish to use an alternative wss
|
|
32
|
+
* domain that is supported by the SDK.
|
|
33
|
+
*
|
|
34
|
+
* Note: To use testnet, don't set the wsKey - use `testnet: true` in
|
|
35
|
+
* the constructor instead.
|
|
36
|
+
*
|
|
37
|
+
* Note: You can also directly use the sendWSAPIRequest() method to make WS API calls, but some
|
|
38
|
+
* may find the below methods slightly more intuitive.
|
|
39
|
+
*
|
|
40
|
+
* Refer to the WS API promises example for a more detailed example on using sendWSAPIRequest() directly:
|
|
41
|
+
* https://github.com/tiagosiebler/binance/blob/master/examples/WebSockets/ws-api-raw-promises.ts#L108
|
|
42
|
+
*/
|
|
43
|
+
export declare class WebsocketAPIClient {
|
|
44
|
+
private wsClient;
|
|
45
|
+
private options;
|
|
46
|
+
constructor(options?: WSClientConfigurableOptions & Partial<WSAPIClientConfigurableOptions>, logger?: DefaultLogger);
|
|
47
|
+
getWSClient(): WebsocketClient;
|
|
48
|
+
/**
|
|
49
|
+
* Submit a spot order
|
|
50
|
+
*/
|
|
51
|
+
submitNewSpotOrder(params: SubmitHFOrderRequest, wsKey?: WSAPIWsKey): Promise<WSAPIResponse<WSAPIOrderResponse>>;
|
|
52
|
+
/**
|
|
53
|
+
* Modify a spot order
|
|
54
|
+
*/
|
|
55
|
+
modifySpotOrder(params: ModifyHFOrderRequest, wsKey?: WSAPIWsKey): Promise<WSAPIResponse<{
|
|
56
|
+
newOrderId: string;
|
|
57
|
+
clientOid: string;
|
|
58
|
+
}>>;
|
|
59
|
+
/**
|
|
60
|
+
* Cancel a spot order
|
|
61
|
+
*/
|
|
62
|
+
cancelSpotOrder(params: WSAPICancelOrderRequest, wsKey?: WSAPIWsKey): Promise<WSAPIResponse<WSAPIOrderResponse>>;
|
|
63
|
+
/**
|
|
64
|
+
* Submit a sync spot order
|
|
65
|
+
*/
|
|
66
|
+
submitSyncSpotOrder(params: SubmitHFOrderRequest, wsKey?: WSAPIWsKey): Promise<WSAPIResponse<SubmitHFOrderSyncResponse>>;
|
|
67
|
+
/**
|
|
68
|
+
* Cancel a sync spot order
|
|
69
|
+
*/
|
|
70
|
+
cancelSyncSpotOrder(params: WSAPICancelOrderRequest, wsKey?: WSAPIWsKey): Promise<WSAPIResponse<SyncCancelHFOrderResponse>>;
|
|
71
|
+
/**
|
|
72
|
+
* Submit a margin order
|
|
73
|
+
*/
|
|
74
|
+
submitMarginOrder(params: SubmitHFMarginOrderRequest, wsKey?: WSAPIWsKey): Promise<WSAPIResponse<MarginSubmitOrderV3Response>>;
|
|
75
|
+
/**
|
|
76
|
+
* Cancel a margin order
|
|
77
|
+
*/
|
|
78
|
+
cancelMarginOrder(params: WSAPICancelOrderRequest, wsKey?: WSAPIWsKey): Promise<WSAPIResponse<WSAPIOrderResponse>>;
|
|
79
|
+
/**
|
|
80
|
+
* Submit a futures order
|
|
81
|
+
*/
|
|
82
|
+
submitFuturesOrder(params: Order, wsKey?: WSAPIWsKey): Promise<WSAPIResponse<WSAPIOrderResponse>>;
|
|
83
|
+
/**
|
|
84
|
+
* Cancel a futures order
|
|
85
|
+
*/
|
|
86
|
+
cancelFuturesOrder(params: {
|
|
87
|
+
orderId: string;
|
|
88
|
+
} | {
|
|
89
|
+
clientOid: string;
|
|
90
|
+
symbol: string;
|
|
91
|
+
}, wsKey?: WSAPIWsKey): Promise<WSAPIResponse<{
|
|
92
|
+
cancelledOrderIds: string[];
|
|
93
|
+
} | {
|
|
94
|
+
clientOid: string;
|
|
95
|
+
}>>;
|
|
96
|
+
/**
|
|
97
|
+
* Submit multiple futures orders
|
|
98
|
+
*/
|
|
99
|
+
submitMultipleFuturesOrders(params: Order[], wsKey?: WSAPIWsKey): Promise<WSAPIResponse<SubmitMultipleOrdersFuturesResponse[]>>;
|
|
100
|
+
/**
|
|
101
|
+
* Cancel multiple futures orders
|
|
102
|
+
*/
|
|
103
|
+
cancelMultipleFuturesOrders(params: BatchCancelOrdersRequest, wsKey?: WSAPIWsKey): Promise<WSAPIResponse<BatchCancelOrderResult[]>>;
|
|
104
|
+
/**
|
|
105
|
+
*
|
|
106
|
+
*
|
|
107
|
+
*
|
|
108
|
+
*
|
|
109
|
+
*
|
|
110
|
+
*
|
|
111
|
+
*
|
|
112
|
+
* Private methods for handling some of the convenience/automation provided by the WS API Client
|
|
113
|
+
*
|
|
114
|
+
*
|
|
115
|
+
*
|
|
116
|
+
*
|
|
117
|
+
*
|
|
118
|
+
*
|
|
119
|
+
*
|
|
120
|
+
*/
|
|
121
|
+
connectWSAPI(wsKey: WSAPIWsKey): Promise<unknown>;
|
|
122
|
+
private setupDefaultEventListeners;
|
|
123
|
+
}
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WebsocketAPIClient = void 0;
|
|
4
|
+
const websocket_util_js_1 = require("./lib/websocket/websocket-util.js");
|
|
5
|
+
const WebsocketClient_js_1 = require("./WebsocketClient.js");
|
|
6
|
+
/**
|
|
7
|
+
* This is a minimal Websocket API wrapper around the WebsocketClient.
|
|
8
|
+
*
|
|
9
|
+
* Some methods support passing in a custom "wsKey". This is a reference to which WS connection should
|
|
10
|
+
* be used to transmit that message. This is only useful if you wish to use an alternative wss
|
|
11
|
+
* domain that is supported by the SDK.
|
|
12
|
+
*
|
|
13
|
+
* Note: To use testnet, don't set the wsKey - use `testnet: true` in
|
|
14
|
+
* the constructor instead.
|
|
15
|
+
*
|
|
16
|
+
* Note: You can also directly use the sendWSAPIRequest() method to make WS API calls, but some
|
|
17
|
+
* may find the below methods slightly more intuitive.
|
|
18
|
+
*
|
|
19
|
+
* Refer to the WS API promises example for a more detailed example on using sendWSAPIRequest() directly:
|
|
20
|
+
* https://github.com/tiagosiebler/binance/blob/master/examples/WebSockets/ws-api-raw-promises.ts#L108
|
|
21
|
+
*/
|
|
22
|
+
class WebsocketAPIClient {
|
|
23
|
+
wsClient;
|
|
24
|
+
options;
|
|
25
|
+
constructor(options, logger) {
|
|
26
|
+
this.wsClient = new WebsocketClient_js_1.WebsocketClient(options, logger);
|
|
27
|
+
this.options = {
|
|
28
|
+
attachEventListeners: true,
|
|
29
|
+
...options,
|
|
30
|
+
};
|
|
31
|
+
this.setupDefaultEventListeners();
|
|
32
|
+
}
|
|
33
|
+
getWSClient() {
|
|
34
|
+
return this.wsClient;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Submit a spot order
|
|
38
|
+
*/
|
|
39
|
+
submitNewSpotOrder(params, wsKey) {
|
|
40
|
+
return this.wsClient.sendWSAPIRequest(wsKey || websocket_util_js_1.WS_KEY_MAP.wsApiSpotV1, 'spot.order', params);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Modify a spot order
|
|
44
|
+
*/
|
|
45
|
+
modifySpotOrder(params, wsKey) {
|
|
46
|
+
return this.wsClient.sendWSAPIRequest(wsKey || websocket_util_js_1.WS_KEY_MAP.wsApiSpotV1, 'spot.modify', params);
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Cancel a spot order
|
|
50
|
+
*/
|
|
51
|
+
cancelSpotOrder(params, wsKey) {
|
|
52
|
+
return this.wsClient.sendWSAPIRequest(wsKey || websocket_util_js_1.WS_KEY_MAP.wsApiSpotV1, 'spot.cancel', params);
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Submit a sync spot order
|
|
56
|
+
*/
|
|
57
|
+
submitSyncSpotOrder(params, wsKey) {
|
|
58
|
+
return this.wsClient.sendWSAPIRequest(wsKey || websocket_util_js_1.WS_KEY_MAP.wsApiSpotV1, 'spot.sync_order', params);
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Cancel a sync spot order
|
|
62
|
+
*/
|
|
63
|
+
cancelSyncSpotOrder(params, wsKey) {
|
|
64
|
+
return this.wsClient.sendWSAPIRequest(wsKey || websocket_util_js_1.WS_KEY_MAP.wsApiSpotV1, 'spot.sync_cancel', params);
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Submit a margin order
|
|
68
|
+
*/
|
|
69
|
+
submitMarginOrder(params, wsKey) {
|
|
70
|
+
return this.wsClient.sendWSAPIRequest(wsKey || websocket_util_js_1.WS_KEY_MAP.wsApiSpotV1, 'margin.order', params);
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Cancel a margin order
|
|
74
|
+
*/
|
|
75
|
+
cancelMarginOrder(params, wsKey) {
|
|
76
|
+
return this.wsClient.sendWSAPIRequest(wsKey || websocket_util_js_1.WS_KEY_MAP.wsApiSpotV1, 'margin.cancel', params);
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Submit a futures order
|
|
80
|
+
*/
|
|
81
|
+
submitFuturesOrder(params, wsKey) {
|
|
82
|
+
return this.wsClient.sendWSAPIRequest(wsKey || websocket_util_js_1.WS_KEY_MAP.wsApiFuturesV1, 'futures.order', params);
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Cancel a futures order
|
|
86
|
+
*/
|
|
87
|
+
cancelFuturesOrder(params, wsKey) {
|
|
88
|
+
return this.wsClient.sendWSAPIRequest(wsKey || websocket_util_js_1.WS_KEY_MAP.wsApiFuturesV1, 'futures.cancel', params);
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Submit multiple futures orders
|
|
92
|
+
*/
|
|
93
|
+
submitMultipleFuturesOrders(params, wsKey) {
|
|
94
|
+
return this.wsClient.sendWSAPIRequest(wsKey || websocket_util_js_1.WS_KEY_MAP.wsApiFuturesV1, 'futures.multi_order', params);
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Cancel multiple futures orders
|
|
98
|
+
*/
|
|
99
|
+
cancelMultipleFuturesOrders(params, wsKey) {
|
|
100
|
+
return this.wsClient.sendWSAPIRequest(wsKey || websocket_util_js_1.WS_KEY_MAP.wsApiFuturesV1, 'futures.multi_cancel', params);
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
*
|
|
104
|
+
*
|
|
105
|
+
*
|
|
106
|
+
*
|
|
107
|
+
*
|
|
108
|
+
*
|
|
109
|
+
*
|
|
110
|
+
* Private methods for handling some of the convenience/automation provided by the WS API Client
|
|
111
|
+
*
|
|
112
|
+
*
|
|
113
|
+
*
|
|
114
|
+
*
|
|
115
|
+
*
|
|
116
|
+
*
|
|
117
|
+
*
|
|
118
|
+
*/
|
|
119
|
+
connectWSAPI(wsKey) {
|
|
120
|
+
return this.getWSClient().assertIsAuthenticated(wsKey);
|
|
121
|
+
}
|
|
122
|
+
setupDefaultEventListeners() {
|
|
123
|
+
if (this.options.attachEventListeners) {
|
|
124
|
+
/**
|
|
125
|
+
* General event handlers for monitoring the WebsocketClient
|
|
126
|
+
*/
|
|
127
|
+
this.wsClient
|
|
128
|
+
.on('open', (data) => {
|
|
129
|
+
console.log(new Date(), 'ws connected', data.wsKey);
|
|
130
|
+
})
|
|
131
|
+
.on('reconnect', ({ wsKey }) => {
|
|
132
|
+
console.log(new Date(), 'ws automatically reconnecting.... ', wsKey);
|
|
133
|
+
})
|
|
134
|
+
.on('reconnected', (data) => {
|
|
135
|
+
console.log(new Date(), 'ws has reconnected ', data?.wsKey);
|
|
136
|
+
})
|
|
137
|
+
.on('authenticated', (data) => {
|
|
138
|
+
console.info(new Date(), 'ws has authenticated ', data?.wsKey);
|
|
139
|
+
})
|
|
140
|
+
.on('exception', (data) => {
|
|
141
|
+
console.error(new Date(), 'ws exception: ', JSON.stringify(data));
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
exports.WebsocketAPIClient = WebsocketAPIClient;
|
|
147
|
+
//# sourceMappingURL=WebsocketAPIClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WebsocketAPIClient.js","sourceRoot":"","sources":["../../src/WebsocketAPIClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import { BaseWebsocketClient, EmittableEvent } from './lib/BaseWSClient.js';
|
|
2
|
-
import {
|
|
2
|
+
import { WsKey, WsTopicRequest } from './lib/websocket/websocket-util.js';
|
|
3
3
|
import { WSConnectedResult } from './lib/websocket/WsStore.types.js';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
4
|
+
import { Exact, WSAPIAuthenticationRequestFromServer, WsAPITopicRequestParamMap, WsAPITopicResponseMap, WsAPIWsKeyTopicMap, WsOperation } from './types/websockets/ws-api.js';
|
|
5
|
+
import { MessageEventLike } from './types/websockets/ws-events.js';
|
|
6
|
+
import { WsMarket } from './types/websockets/ws-general.js';
|
|
7
7
|
export declare const WS_LOGGER_CATEGORY: {
|
|
8
8
|
category: string;
|
|
9
9
|
};
|
|
10
|
+
export interface WSAPIRequestFlags {
|
|
11
|
+
/** If true, will skip auth requirement for WS API connection */
|
|
12
|
+
authIsOptional?: boolean | undefined;
|
|
13
|
+
}
|
|
10
14
|
/** Any WS keys in this list will ALWAYS skip the authentication process, even if credentials are available */
|
|
11
15
|
export declare const PUBLIC_WS_KEYS: WsKey[];
|
|
12
16
|
/**
|
|
@@ -18,6 +22,7 @@ export declare class WebsocketClient extends BaseWebsocketClient<WsKey> {
|
|
|
18
22
|
private getRESTClient;
|
|
19
23
|
private getRestClientOptions;
|
|
20
24
|
private getWSConnectionInfo;
|
|
25
|
+
private signMessage;
|
|
21
26
|
/**
|
|
22
27
|
* Request connection of all dependent (public & private) websockets, instead of waiting for automatic connection by library
|
|
23
28
|
*/
|
|
@@ -40,15 +45,15 @@ export declare class WebsocketClient extends BaseWebsocketClient<WsKey> {
|
|
|
40
45
|
* - These topics will be removed from the topic cache, so they won't be subscribed to again.
|
|
41
46
|
*/
|
|
42
47
|
unsubscribe(requests: (WsTopicRequest<WsTopic> | WsTopic) | (WsTopicRequest<WsTopic> | WsTopic)[], wsKey: WsKey): void;
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
sendWSAPIRequest<TWSKey extends keyof WsAPIWsKeyTopicMap, TWSChannel extends WsAPIWsKeyTopicMap[TWSKey] = WsAPIWsKeyTopicMap[TWSKey], TWSParams extends WsAPITopicRequestParamMap[TWSChannel] = WsAPITopicRequestParamMap[TWSChannel], TWSAPIResponse extends WsAPITopicResponseMap[TWSChannel] | object = WsAPITopicResponseMap[TWSChannel]>(wsKey: TWSKey, channel: TWSChannel, ...params: TWSParams extends undefined ? [] : [TWSParams]): Promise<TWSAPIResponse>;
|
|
48
|
+
sendWSAPIRequest<TWSKey extends keyof WsAPIWsKeyTopicMap, TWSOperation extends WsAPIWsKeyTopicMap[TWSKey], TWSParams extends Exact<WsAPITopicRequestParamMap[TWSOperation]>, TWSAPIResponse extends WsAPITopicResponseMap[TWSOperation] = WsAPITopicResponseMap[TWSOperation]>(wsKey: TWSKey, operation: TWSOperation, params: TWSParams & {
|
|
49
|
+
signRequest?: boolean;
|
|
50
|
+
}, requestFlags?: WSAPIRequestFlags): Promise<TWSAPIResponse>;
|
|
47
51
|
/**
|
|
48
52
|
*
|
|
49
53
|
* Internal methods
|
|
50
54
|
*
|
|
51
55
|
*/
|
|
56
|
+
private signWSAPIRequest;
|
|
52
57
|
/**
|
|
53
58
|
* Whatever url this method returns, it's connected to as-is!
|
|
54
59
|
*
|
|
@@ -73,6 +78,6 @@ export declare class WebsocketClient extends BaseWebsocketClient<WsKey> {
|
|
|
73
78
|
* Map one or more topics into fully prepared "subscribe request" events (already stringified and ready to send)
|
|
74
79
|
*/
|
|
75
80
|
protected getWsOperationEventsForTopics(topicRequests: WsTopicRequest<string>[], wsKey: WsKey, operation: WsOperation): Promise<string[]>;
|
|
76
|
-
protected getWsAuthRequestEvent(wsKey: WsKey): Promise<object>;
|
|
81
|
+
protected getWsAuthRequestEvent(wsKey: WsKey, eventToAuth?: WSAPIAuthenticationRequestFromServer): Promise<object | string | 'waitForEvent' | void>;
|
|
77
82
|
}
|
|
78
83
|
export {};
|