@0xmonaco/core 0.0.0-develop-20260223161435 → 0.0.0-develop-20260302144923
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/dist/api/profile/api.d.ts +13 -3
- package/dist/api/profile/api.d.ts.map +1 -1
- package/dist/api/profile/api.js +25 -3
- package/dist/api/profile/api.js.map +1 -1
- package/dist/api/trading/api.d.ts +58 -1
- package/dist/api/trading/api.d.ts.map +1 -1
- package/dist/api/trading/api.js +92 -1
- package/dist/api/trading/api.js.map +1 -1
- package/package.json +3 -3
|
@@ -50,21 +50,31 @@ export declare class ProfileAPIImpl extends BaseAPI implements ProfileAPI {
|
|
|
50
50
|
* Fetches the user's transaction history from the /api/v1/accounts/movements endpoint.
|
|
51
51
|
* Requires a valid access token to be set.
|
|
52
52
|
*
|
|
53
|
-
* @param params - Optional query parameters for pagination
|
|
53
|
+
* @param params - Optional query parameters for pagination and filtering
|
|
54
54
|
* @param params.page - Page number (starts from 1, default: 1)
|
|
55
55
|
* @param params.limit - Number of items per page (default: 20, max: 100)
|
|
56
|
+
* @param params.entry_type - Filter by entry type (CREDIT, DEBIT, LOCK, UNLOCK, FEE)
|
|
57
|
+
* @param params.transaction_type - Filter by transaction type (DEPOSIT, WITHDRAWAL, TRADE, FEE, FUNDING, LIQUIDATION, INTEREST, REWARD)
|
|
58
|
+
* @param params.asset_id - Filter by asset ID (UUID)
|
|
59
|
+
* @param params.source - Data source: "hot_storage", "cold_storage", or "both" (default: "hot_storage")
|
|
56
60
|
* @returns Promise resolving to paginated movements response
|
|
57
61
|
* @throws {APIError} When the request fails or user is not authenticated
|
|
58
62
|
*
|
|
59
63
|
* @example
|
|
60
64
|
* ```typescript
|
|
61
65
|
* // Get first page with default limit (20)
|
|
62
|
-
* const movements = await profileAPI.
|
|
66
|
+
* const movements = await profileAPI.getPaginatedUserMovements();
|
|
63
67
|
* console.log(`Total movements: ${movements.total_count}`);
|
|
64
68
|
*
|
|
65
69
|
* // Get second page with custom limit
|
|
66
|
-
* const page2 = await profileAPI.
|
|
70
|
+
* const page2 = await profileAPI.getPaginatedUserMovements({ page: 2, limit: 50 });
|
|
67
71
|
* console.log(`Page ${page2.page} of ${page2.total_pages}`);
|
|
72
|
+
*
|
|
73
|
+
* // Filter by entry type and transaction type
|
|
74
|
+
* const deposits = await profileAPI.getPaginatedUserMovements({ entry_type: "CREDIT", transaction_type: "DEPOSIT" });
|
|
75
|
+
*
|
|
76
|
+
* // Filter by asset
|
|
77
|
+
* const usdcMovements = await profileAPI.getPaginatedUserMovements({ asset_id: "550e8400-e29b-41d4-a716-446655440000" });
|
|
68
78
|
* ```
|
|
69
79
|
*/
|
|
70
80
|
getPaginatedUserMovements(params?: GetUserMovementsParams): Promise<GetPaginatedUserMovementsResponse>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/api/profile/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,iCAAiC,EACjC,qBAAqB,EACrB,uBAAuB,EACvB,sBAAsB,EACtB,UAAU,EACV,WAAW,EACZ,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,qBAAa,cAAe,SAAQ,OAAQ,YAAW,UAAU;IAC/D;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACG,UAAU,IAAI,OAAO,CAAC,WAAW,CAAC;IAgBxC
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/api/profile/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,iCAAiC,EACjC,qBAAqB,EACrB,uBAAuB,EACvB,sBAAsB,EACtB,UAAU,EACV,WAAW,EACZ,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,qBAAa,cAAe,SAAQ,OAAQ,YAAW,UAAU;IAC/D;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACG,UAAU,IAAI,OAAO,CAAC,WAAW,CAAC;IAgBxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACG,yBAAyB,CAAC,MAAM,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,iCAAiC,CAAC;IA4B5G;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACG,eAAe,CAAC,MAAM,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAgBvF;;;;;;;;;;;;;;;;;;OAkBG;IACG,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;CASxE"}
|
package/dist/api/profile/api.js
CHANGED
|
@@ -63,21 +63,31 @@ export class ProfileAPIImpl extends BaseAPI {
|
|
|
63
63
|
* Fetches the user's transaction history from the /api/v1/accounts/movements endpoint.
|
|
64
64
|
* Requires a valid access token to be set.
|
|
65
65
|
*
|
|
66
|
-
* @param params - Optional query parameters for pagination
|
|
66
|
+
* @param params - Optional query parameters for pagination and filtering
|
|
67
67
|
* @param params.page - Page number (starts from 1, default: 1)
|
|
68
68
|
* @param params.limit - Number of items per page (default: 20, max: 100)
|
|
69
|
+
* @param params.entry_type - Filter by entry type (CREDIT, DEBIT, LOCK, UNLOCK, FEE)
|
|
70
|
+
* @param params.transaction_type - Filter by transaction type (DEPOSIT, WITHDRAWAL, TRADE, FEE, FUNDING, LIQUIDATION, INTEREST, REWARD)
|
|
71
|
+
* @param params.asset_id - Filter by asset ID (UUID)
|
|
72
|
+
* @param params.source - Data source: "hot_storage", "cold_storage", or "both" (default: "hot_storage")
|
|
69
73
|
* @returns Promise resolving to paginated movements response
|
|
70
74
|
* @throws {APIError} When the request fails or user is not authenticated
|
|
71
75
|
*
|
|
72
76
|
* @example
|
|
73
77
|
* ```typescript
|
|
74
78
|
* // Get first page with default limit (20)
|
|
75
|
-
* const movements = await profileAPI.
|
|
79
|
+
* const movements = await profileAPI.getPaginatedUserMovements();
|
|
76
80
|
* console.log(`Total movements: ${movements.total_count}`);
|
|
77
81
|
*
|
|
78
82
|
* // Get second page with custom limit
|
|
79
|
-
* const page2 = await profileAPI.
|
|
83
|
+
* const page2 = await profileAPI.getPaginatedUserMovements({ page: 2, limit: 50 });
|
|
80
84
|
* console.log(`Page ${page2.page} of ${page2.total_pages}`);
|
|
85
|
+
*
|
|
86
|
+
* // Filter by entry type and transaction type
|
|
87
|
+
* const deposits = await profileAPI.getPaginatedUserMovements({ entry_type: "CREDIT", transaction_type: "DEPOSIT" });
|
|
88
|
+
*
|
|
89
|
+
* // Filter by asset
|
|
90
|
+
* const usdcMovements = await profileAPI.getPaginatedUserMovements({ asset_id: "550e8400-e29b-41d4-a716-446655440000" });
|
|
81
91
|
* ```
|
|
82
92
|
*/
|
|
83
93
|
async getPaginatedUserMovements(params) {
|
|
@@ -88,6 +98,18 @@ export class ProfileAPIImpl extends BaseAPI {
|
|
|
88
98
|
if (params?.limit !== undefined) {
|
|
89
99
|
searchParams.append("limit", params.limit.toString());
|
|
90
100
|
}
|
|
101
|
+
if (params?.entry_type !== undefined) {
|
|
102
|
+
searchParams.append("entry_type", params.entry_type);
|
|
103
|
+
}
|
|
104
|
+
if (params?.transaction_type !== undefined) {
|
|
105
|
+
searchParams.append("transaction_type", params.transaction_type);
|
|
106
|
+
}
|
|
107
|
+
if (params?.asset_id !== undefined) {
|
|
108
|
+
searchParams.append("asset_id", params.asset_id);
|
|
109
|
+
}
|
|
110
|
+
if (params?.source !== undefined) {
|
|
111
|
+
searchParams.append("source", params.source);
|
|
112
|
+
}
|
|
91
113
|
const queryString = searchParams.toString();
|
|
92
114
|
const url = queryString ? `/api/v1/accounts/movements?${queryString}` : "/api/v1/accounts/movements";
|
|
93
115
|
return await this.makeAuthenticatedRequest(url);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/api/profile/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAWH,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,MAAM,OAAO,cAAe,SAAQ,OAAO;IACzC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAc,qBAAqB,CAAC,CAAC;QAErF,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;YAC7B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,IAAI,EAAE;YAC7C,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,EAAE;SACxC,CAAC;IACJ,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/api/profile/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
* const openOrders = await tradingAPI.getOpenOrders({ market: "ETH-USD" });
|
|
25
25
|
* ```
|
|
26
26
|
*/
|
|
27
|
-
import type { BatchCancelOrdersResponse, CancelOrderResponse, CreateOrderResponse, GetOrderResponse, GetPaginatedOrdersParams, GetPaginatedOrdersResponse, OrderSide, ReplaceOrderResponse, TimeInForce, TradingAPI, TradingMode } from "@0xmonaco/types";
|
|
27
|
+
import type { BatchCancelOrdersResponse, BatchCreateOrderParams, BatchCreateOrdersResponse, BatchReplaceOrderParams, BatchReplaceOrdersResponse, CancelOrderResponse, CreateOrderResponse, GetOrderResponse, GetPaginatedOrdersParams, GetPaginatedOrdersResponse, OrderSide, ReplaceOrderResponse, TimeInForce, TradingAPI, TradingMode } from "@0xmonaco/types";
|
|
28
28
|
import { BaseAPI } from "../base";
|
|
29
29
|
export declare class TradingAPIImpl extends BaseAPI implements TradingAPI {
|
|
30
30
|
/**
|
|
@@ -190,6 +190,63 @@ export declare class TradingAPIImpl extends BaseAPI implements TradingAPI {
|
|
|
190
190
|
quantity?: string;
|
|
191
191
|
useMasterBalance?: boolean;
|
|
192
192
|
}): Promise<ReplaceOrderResponse>;
|
|
193
|
+
/**
|
|
194
|
+
* Batch creates multiple orders in a single request.
|
|
195
|
+
*
|
|
196
|
+
* Each order is validated and processed through the matching engine.
|
|
197
|
+
* Failed orders do not prevent other orders from being created.
|
|
198
|
+
*
|
|
199
|
+
* @param orders - Array of order parameters to create
|
|
200
|
+
* @returns Promise resolving to BatchCreateOrdersResponse with individual results
|
|
201
|
+
* @throws {APIError} When API communication fails
|
|
202
|
+
*
|
|
203
|
+
* @example
|
|
204
|
+
* ```typescript
|
|
205
|
+
* const result = await tradingAPI.batchCreate([
|
|
206
|
+
* {
|
|
207
|
+
* tradingPairId: "123e4567-e89b-12d3-a456-426614174000",
|
|
208
|
+
* orderType: "LIMIT",
|
|
209
|
+
* side: "BUY",
|
|
210
|
+
* price: "35000.00",
|
|
211
|
+
* quantity: "0.5",
|
|
212
|
+
* },
|
|
213
|
+
* {
|
|
214
|
+
* tradingPairId: "123e4567-e89b-12d3-a456-426614174000",
|
|
215
|
+
* orderType: "LIMIT",
|
|
216
|
+
* side: "SELL",
|
|
217
|
+
* price: "36000.00",
|
|
218
|
+
* quantity: "0.3",
|
|
219
|
+
* },
|
|
220
|
+
* ]);
|
|
221
|
+
* ```
|
|
222
|
+
*/
|
|
223
|
+
batchCreate(orders: BatchCreateOrderParams[]): Promise<BatchCreateOrdersResponse>;
|
|
224
|
+
/**
|
|
225
|
+
* Batch replaces multiple orders in a single request.
|
|
226
|
+
*
|
|
227
|
+
* Each order is canceled and re-created with new parameters.
|
|
228
|
+
* Failed replacements do not prevent other orders from being replaced.
|
|
229
|
+
*
|
|
230
|
+
* @param orders - Array of order replacement parameters
|
|
231
|
+
* @returns Promise resolving to BatchReplaceOrdersResponse with individual results
|
|
232
|
+
* @throws {APIError} When API communication fails
|
|
233
|
+
*
|
|
234
|
+
* @example
|
|
235
|
+
* ```typescript
|
|
236
|
+
* const result = await tradingAPI.batchReplace([
|
|
237
|
+
* {
|
|
238
|
+
* orderId: "f47ac10b-58cc-4372-a567-0e02b2c3d479",
|
|
239
|
+
* price: "35500.00",
|
|
240
|
+
* quantity: "0.7",
|
|
241
|
+
* },
|
|
242
|
+
* {
|
|
243
|
+
* orderId: "7c9e6679-7425-40de-944b-e07fc1f90ae7",
|
|
244
|
+
* price: "36500.00",
|
|
245
|
+
* },
|
|
246
|
+
* ]);
|
|
247
|
+
* ```
|
|
248
|
+
*/
|
|
249
|
+
batchReplace(orders: BatchReplaceOrderParams[]): Promise<BatchReplaceOrdersResponse>;
|
|
193
250
|
/**
|
|
194
251
|
* Gets paginated orders based on query parameters with automatic pagination.
|
|
195
252
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/api/trading/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EACV,yBAAyB,EACzB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,wBAAwB,EACxB,0BAA0B,EAC1B,SAAS,EAET,oBAAoB,EACpB,WAAW,EACX,UAAU,EACV,WAAW,EACZ,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/api/trading/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EACV,yBAAyB,EACzB,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,EACvB,0BAA0B,EAC1B,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,wBAAwB,EACxB,0BAA0B,EAC1B,SAAS,EAET,oBAAoB,EACpB,WAAW,EACX,UAAU,EACV,WAAW,EACZ,MAAM,iBAAiB,CAAC;AAWzB,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,qBAAa,cAAe,SAAQ,OAAQ,YAAW,UAAU;IAC/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiDG;IACG,eAAe,CACnB,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,SAAS,EACf,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,WAAW,CAAC,EAAE,WAAW,CAAC;KAC3B,GACA,OAAO,CAAC,mBAAmB,CAAC;IA4B/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiDG;IACG,gBAAgB,CACpB,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,SAAS,EACf,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,WAAW,CAAC,EAAE,WAAW,CAAC;KAC3B,GACA,OAAO,CAAC,mBAAmB,CAAC;IA0B/B;;;;;;;;;;;;;;;OAeG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAchE;;;;;;;;;;;OAWG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAWzE;;;;;;;;;;;;;;;OAeG;IACG,cAAc,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAQ1E,YAAY,CAChB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE;QACR,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B,GACA,OAAO,CAAC,oBAAoB,CAAC;IA0BhC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACG,WAAW,CAAC,MAAM,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAwBvF;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACG,YAAY,CAAC,MAAM,EAAE,uBAAuB,EAAE,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAkB1F;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACG,kBAAkB,CAAC,MAAM,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAgChG;;;;;;;;;;;;;;;;;OAiBG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAK3D"}
|
package/dist/api/trading/api.js
CHANGED
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
* const openOrders = await tradingAPI.getOpenOrders({ market: "ETH-USD" });
|
|
25
25
|
* ```
|
|
26
26
|
*/
|
|
27
|
-
import { CancelOrderSchema, GetPaginatedOrdersSchema, PlaceLimitOrderSchema, PlaceMarketOrderSchema, ReplaceOrderSchema, validate } from "@0xmonaco/types";
|
|
27
|
+
import { BatchCreateOrdersSchema, BatchReplaceOrdersSchema, CancelOrderSchema, GetPaginatedOrdersSchema, PlaceLimitOrderSchema, PlaceMarketOrderSchema, ReplaceOrderSchema, validate, } from "@0xmonaco/types";
|
|
28
28
|
import { BaseAPI } from "../base";
|
|
29
29
|
export class TradingAPIImpl extends BaseAPI {
|
|
30
30
|
/**
|
|
@@ -262,6 +262,97 @@ export class TradingAPIImpl extends BaseAPI {
|
|
|
262
262
|
body: JSON.stringify(requestBody),
|
|
263
263
|
});
|
|
264
264
|
}
|
|
265
|
+
/**
|
|
266
|
+
* Batch creates multiple orders in a single request.
|
|
267
|
+
*
|
|
268
|
+
* Each order is validated and processed through the matching engine.
|
|
269
|
+
* Failed orders do not prevent other orders from being created.
|
|
270
|
+
*
|
|
271
|
+
* @param orders - Array of order parameters to create
|
|
272
|
+
* @returns Promise resolving to BatchCreateOrdersResponse with individual results
|
|
273
|
+
* @throws {APIError} When API communication fails
|
|
274
|
+
*
|
|
275
|
+
* @example
|
|
276
|
+
* ```typescript
|
|
277
|
+
* const result = await tradingAPI.batchCreate([
|
|
278
|
+
* {
|
|
279
|
+
* tradingPairId: "123e4567-e89b-12d3-a456-426614174000",
|
|
280
|
+
* orderType: "LIMIT",
|
|
281
|
+
* side: "BUY",
|
|
282
|
+
* price: "35000.00",
|
|
283
|
+
* quantity: "0.5",
|
|
284
|
+
* },
|
|
285
|
+
* {
|
|
286
|
+
* tradingPairId: "123e4567-e89b-12d3-a456-426614174000",
|
|
287
|
+
* orderType: "LIMIT",
|
|
288
|
+
* side: "SELL",
|
|
289
|
+
* price: "36000.00",
|
|
290
|
+
* quantity: "0.3",
|
|
291
|
+
* },
|
|
292
|
+
* ]);
|
|
293
|
+
* ```
|
|
294
|
+
*/
|
|
295
|
+
async batchCreate(orders) {
|
|
296
|
+
validate(BatchCreateOrdersSchema, { orders });
|
|
297
|
+
const requestBody = {
|
|
298
|
+
orders: orders.map((order) => ({
|
|
299
|
+
trading_pair_id: order.tradingPairId,
|
|
300
|
+
order_type: order.orderType,
|
|
301
|
+
side: order.side,
|
|
302
|
+
price: order.price,
|
|
303
|
+
quantity: order.quantity,
|
|
304
|
+
trading_mode: order.tradingMode || "SPOT",
|
|
305
|
+
slippage_tolerance_bps: order.slippageTolerance !== undefined ? Math.round(order.slippageTolerance * 10000) : undefined,
|
|
306
|
+
use_master_balance: order.useMasterBalance,
|
|
307
|
+
expiration_date: order.expirationDate,
|
|
308
|
+
time_in_force: order.timeInForce,
|
|
309
|
+
})),
|
|
310
|
+
};
|
|
311
|
+
return this.makeAuthenticatedRequest("/api/v1/orders/batch-create", {
|
|
312
|
+
method: "POST",
|
|
313
|
+
body: JSON.stringify(requestBody),
|
|
314
|
+
});
|
|
315
|
+
}
|
|
316
|
+
/**
|
|
317
|
+
* Batch replaces multiple orders in a single request.
|
|
318
|
+
*
|
|
319
|
+
* Each order is canceled and re-created with new parameters.
|
|
320
|
+
* Failed replacements do not prevent other orders from being replaced.
|
|
321
|
+
*
|
|
322
|
+
* @param orders - Array of order replacement parameters
|
|
323
|
+
* @returns Promise resolving to BatchReplaceOrdersResponse with individual results
|
|
324
|
+
* @throws {APIError} When API communication fails
|
|
325
|
+
*
|
|
326
|
+
* @example
|
|
327
|
+
* ```typescript
|
|
328
|
+
* const result = await tradingAPI.batchReplace([
|
|
329
|
+
* {
|
|
330
|
+
* orderId: "f47ac10b-58cc-4372-a567-0e02b2c3d479",
|
|
331
|
+
* price: "35500.00",
|
|
332
|
+
* quantity: "0.7",
|
|
333
|
+
* },
|
|
334
|
+
* {
|
|
335
|
+
* orderId: "7c9e6679-7425-40de-944b-e07fc1f90ae7",
|
|
336
|
+
* price: "36500.00",
|
|
337
|
+
* },
|
|
338
|
+
* ]);
|
|
339
|
+
* ```
|
|
340
|
+
*/
|
|
341
|
+
async batchReplace(orders) {
|
|
342
|
+
validate(BatchReplaceOrdersSchema, { orders });
|
|
343
|
+
const requestBody = {
|
|
344
|
+
orders: orders.map((order) => ({
|
|
345
|
+
order_id: order.orderId,
|
|
346
|
+
price: order.price,
|
|
347
|
+
quantity: order.quantity,
|
|
348
|
+
use_master_balance: order.useMasterBalance,
|
|
349
|
+
})),
|
|
350
|
+
};
|
|
351
|
+
return this.makeAuthenticatedRequest("/api/v1/orders/batch-replace", {
|
|
352
|
+
method: "POST",
|
|
353
|
+
body: JSON.stringify(requestBody),
|
|
354
|
+
});
|
|
355
|
+
}
|
|
265
356
|
/**
|
|
266
357
|
* Gets paginated orders based on query parameters with automatic pagination.
|
|
267
358
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/api/trading/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/api/trading/api.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@0xmonaco/core",
|
|
3
|
-
"version": "0.0.0-develop-
|
|
3
|
+
"version": "0.0.0-develop-20260302144923",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -23,8 +23,8 @@
|
|
|
23
23
|
"viem": "^2.45.2"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@0xmonaco/contracts": "0.0.0-develop-
|
|
27
|
-
"@0xmonaco/types": "0.0.0-develop-
|
|
26
|
+
"@0xmonaco/contracts": "0.0.0-develop-20260302144923",
|
|
27
|
+
"@0xmonaco/types": "0.0.0-develop-20260302144923",
|
|
28
28
|
"http-status-codes": "^2.3.0"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|