coinbase-api 0.3.2 → 1.0.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.
Files changed (218) hide show
  1. package/README.md +438 -14
  2. package/dist/cjs/CBAdvancedTradeClient.d.ts +559 -0
  3. package/dist/cjs/CBAdvancedTradeClient.js +574 -0
  4. package/dist/cjs/CBAdvancedTradeClient.js.map +1 -0
  5. package/dist/cjs/CBAppClient.d.ts +359 -0
  6. package/dist/cjs/CBAppClient.js +336 -0
  7. package/dist/cjs/CBAppClient.js.map +1 -0
  8. package/dist/cjs/CBCommerceClient.d.ts +110 -0
  9. package/dist/cjs/CBCommerceClient.js +105 -0
  10. package/dist/cjs/CBCommerceClient.js.map +1 -0
  11. package/dist/cjs/CBExchangeClient.d.ts +640 -0
  12. package/dist/cjs/CBExchangeClient.js +751 -0
  13. package/dist/cjs/CBExchangeClient.js.map +1 -0
  14. package/dist/cjs/CBInternationalClient.d.ts +381 -0
  15. package/dist/cjs/CBInternationalClient.js +437 -0
  16. package/dist/cjs/CBInternationalClient.js.map +1 -0
  17. package/dist/cjs/CBPrimeClient.d.ts +363 -0
  18. package/dist/cjs/CBPrimeClient.js +451 -0
  19. package/dist/cjs/CBPrimeClient.js.map +1 -0
  20. package/dist/cjs/WebsocketClient.d.ts +78 -0
  21. package/dist/cjs/WebsocketClient.js +534 -0
  22. package/dist/cjs/WebsocketClient.js.map +1 -0
  23. package/dist/cjs/index.d.ts +13 -0
  24. package/dist/cjs/index.js +30 -0
  25. package/dist/cjs/index.js.map +1 -0
  26. package/dist/cjs/lib/BaseRestClient.d.ts +66 -0
  27. package/dist/cjs/lib/BaseRestClient.js +436 -0
  28. package/dist/cjs/lib/BaseRestClient.js.map +1 -0
  29. package/dist/cjs/lib/BaseWSClient.d.ts +169 -0
  30. package/dist/cjs/lib/BaseWSClient.js +638 -0
  31. package/dist/cjs/lib/BaseWSClient.js.map +1 -0
  32. package/dist/cjs/lib/jwtNode.d.ts +13 -0
  33. package/dist/cjs/lib/jwtNode.js +52 -0
  34. package/dist/cjs/lib/jwtNode.js.map +1 -0
  35. package/dist/cjs/lib/misc-util.d.ts +1 -0
  36. package/dist/cjs/lib/misc-util.js +7 -0
  37. package/dist/cjs/lib/misc-util.js.map +1 -0
  38. package/dist/cjs/lib/requestUtils.d.ts +98 -0
  39. package/dist/cjs/lib/requestUtils.js +75 -0
  40. package/dist/cjs/lib/requestUtils.js.map +1 -0
  41. package/dist/cjs/lib/webCryptoAPI.d.ts +10 -0
  42. package/dist/cjs/lib/webCryptoAPI.js +83 -0
  43. package/dist/cjs/lib/webCryptoAPI.js.map +1 -0
  44. package/dist/cjs/lib/websocket/WsStore.d.ts +63 -0
  45. package/dist/cjs/lib/websocket/WsStore.js +254 -0
  46. package/dist/cjs/lib/websocket/WsStore.js.map +1 -0
  47. package/dist/cjs/lib/websocket/WsStore.types.d.ts +49 -0
  48. package/dist/cjs/lib/websocket/WsStore.types.js +14 -0
  49. package/dist/cjs/lib/websocket/WsStore.types.js.map +1 -0
  50. package/dist/cjs/lib/websocket/logger.d.ts +6 -0
  51. package/dist/cjs/lib/websocket/logger.js +16 -0
  52. package/dist/cjs/lib/websocket/logger.js.map +1 -0
  53. package/dist/cjs/lib/websocket/typeGuards.d.ts +27 -0
  54. package/dist/cjs/lib/websocket/typeGuards.js +86 -0
  55. package/dist/cjs/lib/websocket/typeGuards.js.map +1 -0
  56. package/dist/cjs/lib/websocket/websocket-util.d.ts +120 -0
  57. package/dist/cjs/lib/websocket/websocket-util.js +173 -0
  58. package/dist/cjs/lib/websocket/websocket-util.js.map +1 -0
  59. package/dist/cjs/package.json +3 -0
  60. package/dist/cjs/types/request/advanced-trade-client.d.ts +194 -0
  61. package/dist/cjs/types/request/advanced-trade-client.js +18 -0
  62. package/dist/cjs/types/request/advanced-trade-client.js.map +1 -0
  63. package/dist/cjs/types/request/coinbase-app-client.d.ts +80 -0
  64. package/dist/cjs/types/request/coinbase-app-client.js +28 -0
  65. package/dist/cjs/types/request/coinbase-app-client.js.map +1 -0
  66. package/dist/cjs/types/request/coinbase-exchange.d.ts +332 -0
  67. package/dist/cjs/types/request/coinbase-exchange.js +3 -0
  68. package/dist/cjs/types/request/coinbase-exchange.js.map +1 -0
  69. package/dist/cjs/types/request/coinbase-international.d.ts +160 -0
  70. package/dist/cjs/types/request/coinbase-international.js +13 -0
  71. package/dist/cjs/types/request/coinbase-international.js.map +1 -0
  72. package/dist/cjs/types/request/coinbase-prime.d.ts +298 -0
  73. package/dist/cjs/types/request/coinbase-prime.js +8 -0
  74. package/dist/cjs/types/request/coinbase-prime.js.map +1 -0
  75. package/dist/cjs/types/response/advanced-trade-client.d.ts +759 -0
  76. package/dist/cjs/types/response/advanced-trade-client.js +8 -0
  77. package/dist/cjs/types/response/advanced-trade-client.js.map +1 -0
  78. package/dist/cjs/types/response/coinbase-app-client.d.ts +168 -0
  79. package/dist/cjs/types/response/coinbase-app-client.js +18 -0
  80. package/dist/cjs/types/response/coinbase-app-client.js.map +1 -0
  81. package/dist/cjs/types/response/coinbase-exchange.d.ts +80 -0
  82. package/dist/cjs/types/response/coinbase-exchange.js +82 -0
  83. package/dist/cjs/types/response/coinbase-exchange.js.map +1 -0
  84. package/dist/cjs/types/response/coinbase-international.d.ts +40 -0
  85. package/dist/cjs/types/response/coinbase-international.js +42 -0
  86. package/dist/cjs/types/response/coinbase-international.js.map +1 -0
  87. package/dist/cjs/types/response/coinbase-prime.d.ts +70 -0
  88. package/dist/cjs/types/response/coinbase-prime.js +72 -0
  89. package/dist/cjs/types/response/coinbase-prime.js.map +1 -0
  90. package/dist/cjs/types/response/ws.d.ts +7 -0
  91. package/dist/cjs/types/response/ws.js +3 -0
  92. package/dist/cjs/types/response/ws.js.map +1 -0
  93. package/dist/cjs/types/shared.types.d.ts +60 -0
  94. package/dist/cjs/types/shared.types.js +3 -0
  95. package/dist/cjs/types/shared.types.js.map +1 -0
  96. package/dist/cjs/types/websockets/client.d.ts +73 -0
  97. package/dist/cjs/types/websockets/client.js +3 -0
  98. package/dist/cjs/types/websockets/client.js.map +1 -0
  99. package/dist/cjs/types/websockets/events.d.ts +40 -0
  100. package/dist/cjs/types/websockets/events.js +3 -0
  101. package/dist/cjs/types/websockets/events.js.map +1 -0
  102. package/dist/cjs/types/websockets/requests.d.ts +76 -0
  103. package/dist/cjs/types/websockets/requests.js +3 -0
  104. package/dist/cjs/types/websockets/requests.js.map +1 -0
  105. package/dist/cjs/types/websockets/wsAPI.d.ts +9 -0
  106. package/dist/cjs/types/websockets/wsAPI.js +3 -0
  107. package/dist/cjs/types/websockets/wsAPI.js.map +1 -0
  108. package/dist/mjs/CBAdvancedTradeClient.d.ts +559 -0
  109. package/dist/mjs/CBAdvancedTradeClient.js +570 -0
  110. package/dist/mjs/CBAdvancedTradeClient.js.map +1 -0
  111. package/dist/mjs/CBAppClient.d.ts +359 -0
  112. package/dist/mjs/CBAppClient.js +332 -0
  113. package/dist/mjs/CBAppClient.js.map +1 -0
  114. package/dist/mjs/CBCommerceClient.d.ts +110 -0
  115. package/dist/mjs/CBCommerceClient.js +101 -0
  116. package/dist/mjs/CBCommerceClient.js.map +1 -0
  117. package/dist/mjs/CBExchangeClient.d.ts +640 -0
  118. package/dist/mjs/CBExchangeClient.js +747 -0
  119. package/dist/mjs/CBExchangeClient.js.map +1 -0
  120. package/dist/mjs/CBInternationalClient.d.ts +381 -0
  121. package/dist/mjs/CBInternationalClient.js +433 -0
  122. package/dist/mjs/CBInternationalClient.js.map +1 -0
  123. package/dist/mjs/CBPrimeClient.d.ts +363 -0
  124. package/dist/mjs/CBPrimeClient.js +447 -0
  125. package/dist/mjs/CBPrimeClient.js.map +1 -0
  126. package/dist/mjs/WebsocketClient.d.ts +78 -0
  127. package/dist/mjs/WebsocketClient.js +530 -0
  128. package/dist/mjs/WebsocketClient.js.map +1 -0
  129. package/dist/mjs/index.d.ts +13 -0
  130. package/dist/mjs/index.js +14 -0
  131. package/dist/mjs/index.js.map +1 -0
  132. package/dist/mjs/lib/BaseRestClient.d.ts +66 -0
  133. package/dist/mjs/lib/BaseRestClient.js +429 -0
  134. package/dist/mjs/lib/BaseRestClient.js.map +1 -0
  135. package/dist/mjs/lib/BaseWSClient.d.ts +169 -0
  136. package/dist/mjs/lib/BaseWSClient.js +631 -0
  137. package/dist/mjs/lib/BaseWSClient.js.map +1 -0
  138. package/dist/mjs/lib/jwtNode.d.ts +13 -0
  139. package/dist/mjs/lib/jwtNode.js +45 -0
  140. package/dist/mjs/lib/jwtNode.js.map +1 -0
  141. package/dist/mjs/lib/misc-util.d.ts +1 -0
  142. package/dist/mjs/lib/misc-util.js +4 -0
  143. package/dist/mjs/lib/misc-util.js.map +1 -0
  144. package/dist/mjs/lib/requestUtils.d.ts +98 -0
  145. package/dist/mjs/lib/requestUtils.js +69 -0
  146. package/dist/mjs/lib/requestUtils.js.map +1 -0
  147. package/dist/mjs/lib/webCryptoAPI.d.ts +10 -0
  148. package/dist/mjs/lib/webCryptoAPI.js +79 -0
  149. package/dist/mjs/lib/webCryptoAPI.js.map +1 -0
  150. package/dist/mjs/lib/websocket/WsStore.d.ts +63 -0
  151. package/dist/mjs/lib/websocket/WsStore.js +249 -0
  152. package/dist/mjs/lib/websocket/WsStore.js.map +1 -0
  153. package/dist/mjs/lib/websocket/WsStore.types.d.ts +49 -0
  154. package/dist/mjs/lib/websocket/WsStore.types.js +11 -0
  155. package/dist/mjs/lib/websocket/WsStore.types.js.map +1 -0
  156. package/dist/mjs/lib/websocket/logger.d.ts +6 -0
  157. package/dist/mjs/lib/websocket/logger.js +13 -0
  158. package/dist/mjs/lib/websocket/logger.js.map +1 -0
  159. package/dist/mjs/lib/websocket/typeGuards.d.ts +27 -0
  160. package/dist/mjs/lib/websocket/typeGuards.js +78 -0
  161. package/dist/mjs/lib/websocket/typeGuards.js.map +1 -0
  162. package/dist/mjs/lib/websocket/websocket-util.d.ts +120 -0
  163. package/dist/mjs/lib/websocket/websocket-util.js +164 -0
  164. package/dist/mjs/lib/websocket/websocket-util.js.map +1 -0
  165. package/dist/mjs/package.json +3 -0
  166. package/dist/mjs/types/request/advanced-trade-client.d.ts +194 -0
  167. package/dist/mjs/types/request/advanced-trade-client.js +17 -0
  168. package/dist/mjs/types/request/advanced-trade-client.js.map +1 -0
  169. package/dist/mjs/types/request/coinbase-app-client.d.ts +80 -0
  170. package/dist/mjs/types/request/coinbase-app-client.js +27 -0
  171. package/dist/mjs/types/request/coinbase-app-client.js.map +1 -0
  172. package/dist/mjs/types/request/coinbase-exchange.d.ts +332 -0
  173. package/dist/mjs/types/request/coinbase-exchange.js +2 -0
  174. package/dist/mjs/types/request/coinbase-exchange.js.map +1 -0
  175. package/dist/mjs/types/request/coinbase-international.d.ts +160 -0
  176. package/dist/mjs/types/request/coinbase-international.js +12 -0
  177. package/dist/mjs/types/request/coinbase-international.js.map +1 -0
  178. package/dist/mjs/types/request/coinbase-prime.d.ts +298 -0
  179. package/dist/mjs/types/request/coinbase-prime.js +7 -0
  180. package/dist/mjs/types/request/coinbase-prime.js.map +1 -0
  181. package/dist/mjs/types/response/advanced-trade-client.d.ts +759 -0
  182. package/dist/mjs/types/response/advanced-trade-client.js +7 -0
  183. package/dist/mjs/types/response/advanced-trade-client.js.map +1 -0
  184. package/dist/mjs/types/response/coinbase-app-client.d.ts +168 -0
  185. package/dist/mjs/types/response/coinbase-app-client.js +17 -0
  186. package/dist/mjs/types/response/coinbase-app-client.js.map +1 -0
  187. package/dist/mjs/types/response/coinbase-exchange.d.ts +80 -0
  188. package/dist/mjs/types/response/coinbase-exchange.js +82 -0
  189. package/dist/mjs/types/response/coinbase-exchange.js.map +1 -0
  190. package/dist/mjs/types/response/coinbase-international.d.ts +40 -0
  191. package/dist/mjs/types/response/coinbase-international.js +42 -0
  192. package/dist/mjs/types/response/coinbase-international.js.map +1 -0
  193. package/dist/mjs/types/response/coinbase-prime.d.ts +70 -0
  194. package/dist/mjs/types/response/coinbase-prime.js +72 -0
  195. package/dist/mjs/types/response/coinbase-prime.js.map +1 -0
  196. package/dist/mjs/types/response/ws.d.ts +7 -0
  197. package/dist/mjs/types/response/ws.js +2 -0
  198. package/dist/mjs/types/response/ws.js.map +1 -0
  199. package/dist/mjs/types/shared.types.d.ts +60 -0
  200. package/dist/mjs/types/shared.types.js +2 -0
  201. package/dist/mjs/types/shared.types.js.map +1 -0
  202. package/dist/mjs/types/websockets/client.d.ts +73 -0
  203. package/dist/mjs/types/websockets/client.js +2 -0
  204. package/dist/mjs/types/websockets/client.js.map +1 -0
  205. package/dist/mjs/types/websockets/events.d.ts +40 -0
  206. package/dist/mjs/types/websockets/events.js +2 -0
  207. package/dist/mjs/types/websockets/events.js.map +1 -0
  208. package/dist/mjs/types/websockets/requests.d.ts +76 -0
  209. package/dist/mjs/types/websockets/requests.js +2 -0
  210. package/dist/mjs/types/websockets/requests.js.map +1 -0
  211. package/dist/mjs/types/websockets/wsAPI.d.ts +9 -0
  212. package/dist/mjs/types/websockets/wsAPI.js +2 -0
  213. package/dist/mjs/types/websockets/wsAPI.js.map +1 -0
  214. package/package.json +42 -30
  215. package/index.js +0 -1
  216. package/lib/index.d.ts +0 -1
  217. package/lib/index.js +0 -16
  218. package/lib/index.js.map +0 -1
@@ -0,0 +1,433 @@
1
+ import { BaseRestClient } from './lib/BaseRestClient.js';
2
+ import { REST_CLIENT_TYPE_ENUM, } from './lib/requestUtils.js';
3
+ /**
4
+ * REST client for Coinbase's Institutional International Exchange API:
5
+ * https://docs.cdp.coinbase.com/intx/docs/welcome
6
+ */
7
+ export class CBInternationalClient extends BaseRestClient {
8
+ constructor(restClientOptions = {}, requestOptions = {}) {
9
+ super(restClientOptions, requestOptions);
10
+ return this;
11
+ }
12
+ getClientType() {
13
+ return REST_CLIENT_TYPE_ENUM.international;
14
+ }
15
+ /**
16
+ *
17
+ * Assets Endpoints
18
+ *
19
+ */
20
+ /**
21
+ * List assets
22
+ *
23
+ * Returns a list of all supported assets.
24
+ */
25
+ getAssets() {
26
+ return this.get('/api/v1/assets');
27
+ }
28
+ /**
29
+ * Get asset details
30
+ *
31
+ * Retrieves information for a specific asset.
32
+ */
33
+ getAssetDetails(params) {
34
+ return this.get(`/api/v1/assets/${params.asset}`);
35
+ }
36
+ /**
37
+ * Get supported networks per asset
38
+ *
39
+ * Returns a list of supported networks and network information for a specific asset.
40
+ */
41
+ getSupportedNetworksPerAsset(params) {
42
+ return this.get(`/api/v1/assets/${params.asset}/networks`);
43
+ }
44
+ /**
45
+ *
46
+ * Instruments Endpoints
47
+ *
48
+ */
49
+ /**
50
+ * List instruments
51
+ *
52
+ * Returns all of the instruments available for trading.
53
+ */
54
+ getInstruments() {
55
+ return this.get('/api/v1/instruments');
56
+ }
57
+ /**
58
+ * Get instrument details
59
+ *
60
+ * Retrieves market information for a specific instrument.
61
+ */
62
+ getInstrumentDetails(params) {
63
+ return this.get(`/api/v1/instruments/${params.instrument}`);
64
+ }
65
+ /**
66
+ * Get quote per instrument
67
+ *
68
+ * Retrieves the current quote for a specific instrument.
69
+ */
70
+ getQuotePerInstrument(params) {
71
+ return this.get(`/api/v1/instruments/${params.instrument}/quote`);
72
+ }
73
+ /**
74
+ * Get daily trading volumes
75
+ *
76
+ * Retrieves the trading volumes for each instrument separated by day.
77
+ */
78
+ getDailyTradingVolumes(params) {
79
+ return this.get('/api/v1/instruments/volumes/daily', params);
80
+ }
81
+ /**
82
+ * Get aggregated candles data per instrument
83
+ *
84
+ * Retrieves a list of aggregated candles data for a given instrument, granularity, and time range.
85
+ */
86
+ getAggregatedCandlesData(params) {
87
+ const { instrument, ...query } = params;
88
+ return this.get(`/api/v1/instruments/${instrument}/candles`, query);
89
+ }
90
+ /**
91
+ * Get historical funding rates
92
+ *
93
+ * Retrieves the historical funding rates for a specific instrument.
94
+ */
95
+ getHistoricalFundingRates(params) {
96
+ const { instrument, ...query } = params;
97
+ return this.get(`/api/v1/instruments/${instrument}/funding`, query);
98
+ }
99
+ /**
100
+ *
101
+ * Position Offsets Endpoints
102
+ *
103
+ */
104
+ /**
105
+ * List position offsets
106
+ *
107
+ * Returns all active position offsets.
108
+ */
109
+ getPositionOffsets() {
110
+ return this.get('/api/v1/position-offsets');
111
+ }
112
+ /**
113
+ *
114
+ * Orders Endpoints
115
+ *
116
+ */
117
+ /**
118
+ * Create order
119
+ *
120
+ * Creates a new order.
121
+ */
122
+ submitOrder(params) {
123
+ this.validateOrderId(params, 'client_order_id');
124
+ return this.postPrivate('/api/v1/orders', { body: params });
125
+ }
126
+ /**
127
+ * List open orders
128
+ *
129
+ * Returns a list of active orders resting on the order book matching the requested criteria.
130
+ * Does not return any rejected, cancelled, or fully filled orders as they are not active.
131
+ */
132
+ getOpenOrders(params) {
133
+ return this.getPrivate('/api/v1/orders', params);
134
+ }
135
+ /**
136
+ * Cancel orders
137
+ *
138
+ * Cancels all orders matching the requested criteria.
139
+ */
140
+ cancelOrders(params) {
141
+ return this.deletePrivate('/api/v1/orders', {
142
+ query: params,
143
+ });
144
+ }
145
+ /**
146
+ * Modify open order
147
+ *
148
+ * Modifies an open order.
149
+ */
150
+ updateOpenOrder(params) {
151
+ const { id, ...body } = params;
152
+ return this.putPrivate(`/api/v1/orders/${id}`, { body: body });
153
+ }
154
+ /**
155
+ * Get order details
156
+ *
157
+ * Retrieves a single order. The order retrieved can be either active or inactive.
158
+ */
159
+ getOrderDetails(params) {
160
+ const { id, ...query } = params;
161
+ return this.getPrivate(`/api/v1/orders/${id}`, query);
162
+ }
163
+ /**
164
+ * Cancel order
165
+ *
166
+ * Cancels a single open order.
167
+ */
168
+ cancelOrder(params) {
169
+ const { id, ...query } = params;
170
+ return this.deletePrivate(`/api/v1/orders/${id}`, {
171
+ query: query,
172
+ });
173
+ }
174
+ /**
175
+ *
176
+ * Portfolios Endpoints
177
+ *
178
+ */
179
+ /**
180
+ * List all user portfolios
181
+ *
182
+ * Returns all of the user's portfolios.
183
+ */
184
+ getUserPortfolios() {
185
+ return this.getPrivate('/api/v1/portfolios');
186
+ }
187
+ /**
188
+ * Create portfolio
189
+ *
190
+ * Create a new portfolio. Request will fail if no name is provided or if user already has max number of portfolios. Max number of portfolios is 20.
191
+ */
192
+ createPortfolio(params) {
193
+ return this.postPrivate('/api/v1/portfolios', { body: params });
194
+ }
195
+ /**
196
+ * Patch portfolio
197
+ *
198
+ * Update parameters for existing portfolio.
199
+ */
200
+ updatePortfolioParameters(params) {
201
+ return this.patchPrivate('/api/v1/portfolios', { body: params });
202
+ }
203
+ /**
204
+ * Get user portfolio
205
+ *
206
+ * Returns the user's specified portfolio.
207
+ */
208
+ getUserPortfolio(params) {
209
+ return this.getPrivate(`/api/v1/portfolios/${params.portfolio}`);
210
+ }
211
+ /**
212
+ * Update portfolio
213
+ *
214
+ * Update existing user portfolio.
215
+ */
216
+ updatePortfolio(params) {
217
+ const { portfolio, ...body } = params;
218
+ return this.putPrivate(`/api/v1/portfolios/${portfolio}`, { body: body });
219
+ }
220
+ /**
221
+ * Get portfolio details
222
+ *
223
+ * Retrieves the summary, positions, and balances of a portfolio.
224
+ */
225
+ getPortfolioDetails(params) {
226
+ return this.getPrivate(`/api/v1/portfolios/${params.portfolio}/detail`);
227
+ }
228
+ /**
229
+ * Get portfolio summary
230
+ *
231
+ * Retrieves the high level overview of a portfolio.
232
+ */
233
+ getPortfolioSummary(params) {
234
+ return this.getPrivate(`/api/v1/portfolios/${params.portfolio}/summary`);
235
+ }
236
+ /**
237
+ * List portfolio balances
238
+ *
239
+ * Returns all of the balances for a given portfolio.
240
+ */
241
+ getPortfolioBalances(params) {
242
+ return this.getPrivate(`/api/v1/portfolios/${params.portfolio}/balances`);
243
+ }
244
+ /**
245
+ * Get balance for portfolio/asset
246
+ *
247
+ * Retrieves the balance for a given portfolio and asset.
248
+ */
249
+ getBalanceForPortfolioAsset(params) {
250
+ return this.getPrivate(`/api/v1/portfolios/${params.portfolio}/balances/${params.asset}`);
251
+ }
252
+ /**
253
+ * List portfolio positions
254
+ *
255
+ * Returns all of the positions for a given portfolio.
256
+ */
257
+ getPortfolioPositions(params) {
258
+ return this.getPrivate(`/api/v1/portfolios/${params.portfolio}/positions`);
259
+ }
260
+ /**
261
+ * Get position for portfolio/instrument
262
+ *
263
+ * Retrieves the position for a given portfolio and symbol.
264
+ */
265
+ getPositionForPortfolioInstrument(params) {
266
+ return this.getPrivate(`/api/v1/portfolios/${params.portfolio}/positions/${params.instrument}`);
267
+ }
268
+ /**
269
+ * List fills by portfolios
270
+ *
271
+ * Returns fills for specified portfolios or fills for all portfolios if none are provided.
272
+ */
273
+ getFillsByPortfolios(params) {
274
+ return this.getPrivate('/api/v1/portfolios/fills', params);
275
+ }
276
+ /**
277
+ * List portfolio fills
278
+ *
279
+ * Returns all of the fills for a given portfolio.
280
+ */
281
+ getPortfolioFills(params) {
282
+ const { portfolio, ...query } = params;
283
+ return this.getPrivate(`/api/v1/portfolios/${portfolio}/fills`, query);
284
+ }
285
+ /**
286
+ * Enable/Disable portfolio cross collateral
287
+ *
288
+ * Enable or disable the cross collateral feature for the portfolio, which allows the portfolio to use non-USDC assets as collateral for margin trading.
289
+ */
290
+ setCrossCollateral(params) {
291
+ const { portfolio, ...body } = params;
292
+ return this.postPrivate(`/api/v1/portfolios/${portfolio}/cross-collateral-enabled`, { body: body });
293
+ }
294
+ /**
295
+ * Enable/Disable portfolio auto margin mode
296
+ *
297
+ * Enable or disable the auto margin feature, which lets the portfolio automatically
298
+ * post margin amounts required to exceed the high leverage position restrictions.
299
+ */
300
+ setAutoMargin(params) {
301
+ const { portfolio, ...body } = params;
302
+ return this.postPrivate(`/api/v1/portfolios/${portfolio}/auto-margin-enabled`, { body: body });
303
+ }
304
+ /**
305
+ * Set portfolio margin override
306
+ *
307
+ * Specify the margin override value for a portfolio to either increase notional requirements or opt-in to higher leverage.
308
+ */
309
+ setPortfolioMarginOverride(params) {
310
+ return this.postPrivate('/api/v1/portfolios/margin', { body: params });
311
+ }
312
+ /**
313
+ * Transfer funds between portfolios
314
+ *
315
+ * Transfer assets from one portfolio to another.
316
+ */
317
+ transferFundsBetweenPortfolios(params) {
318
+ return this.postPrivate('/api/v1/portfolios/transfer', { body: params });
319
+ }
320
+ /**
321
+ * Transfer positions between portfolios
322
+ *
323
+ * Transfer an existing position from one portfolio to another. The position transfer must fulfill the same portfolio-level margin requirements as submitting a new order on the opposite side for the sender's portfolio and a new order on the same side for the recipient's portfolio.
324
+ * Additionally, organization-level requirements must be satisfied when evaluating the outcome of the position transfer.
325
+ */
326
+ transferPositionsBetweenPortfolios(params) {
327
+ return this.postPrivate('/api/v1/portfolios/transfer-position', {
328
+ body: params,
329
+ });
330
+ }
331
+ /**
332
+ * List portfolio fee rates
333
+ *
334
+ * Retrieves the Perpetual Future and Spot fee rate tiers for the user.
335
+ */
336
+ getPortfolioFeeRates() {
337
+ return this.getPrivate('/api/v1/portfolios/fee-rates');
338
+ }
339
+ /**
340
+ *
341
+ * Rankings Endpoints
342
+ *
343
+ */
344
+ /**
345
+ * Get your rankings
346
+ *
347
+ * Retrieve your volume rankings for maker, taker, and total volume.
348
+ */
349
+ getRankings(params) {
350
+ return this.getPrivate('/api/v1/rankings/statistics', params);
351
+ }
352
+ /**
353
+ *
354
+ * Transfers Endpoints
355
+ *
356
+ */
357
+ /**
358
+ * List matching transfers
359
+ *
360
+ * List matching transfers.
361
+ */
362
+ getMatchingTransfers(params) {
363
+ return this.getPrivate('/api/v1/transfers', params);
364
+ }
365
+ /**
366
+ * Get transfer
367
+ *
368
+ * Get transfer.
369
+ */
370
+ getTransfer(params) {
371
+ return this.getPrivate(`/api/v1/transfers/${params.transfer_uuid}`);
372
+ }
373
+ /**
374
+ * Withdraw to crypto address
375
+ *
376
+ * Withdraw to crypto address.
377
+ */
378
+ withdrawToCryptoAddress(params) {
379
+ return this.postPrivate('/api/v1/transfers/withdraw', { body: params });
380
+ }
381
+ /**
382
+ * Create crypto address
383
+ *
384
+ * Create crypto address.
385
+ */
386
+ createCryptoAddress(params) {
387
+ return this.postPrivate('/api/v1/transfers/address', { body: params });
388
+ }
389
+ /**
390
+ * Create counterparty Id
391
+ *
392
+ * Create counterparty Id.
393
+ */
394
+ createCounterpartyId(params) {
395
+ return this.postPrivate('/api/v1/transfers/create-counterparty-id', {
396
+ body: params,
397
+ });
398
+ }
399
+ /**
400
+ * Validate counterparty Id
401
+ *
402
+ * Validate counterparty Id.
403
+ */
404
+ validateCounterpartyId(params) {
405
+ return this.postPrivate('/api/v1/transfers/validate-counterparty-id', {
406
+ body: params,
407
+ });
408
+ }
409
+ /**
410
+ * Withdraw to counterparty Id
411
+ *
412
+ * Withdraw to counterparty Id.
413
+ */
414
+ withdrawToCounterpartyId(params) {
415
+ return this.postPrivate('/api/v1/transfers/withdraw/counterparty', {
416
+ body: params,
417
+ });
418
+ }
419
+ /**
420
+ *
421
+ * Fee Rates Endpoints
422
+ *
423
+ */
424
+ /**
425
+ * List fee rate tiers
426
+ *
427
+ * Return all the fee rate tiers.
428
+ */
429
+ getFeeRateTiers() {
430
+ return this.getPrivate('/api/v1/fee-rate-tiers');
431
+ }
432
+ }
433
+ //# sourceMappingURL=CBInternationalClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CBInternationalClient.js","sourceRoot":"","sources":["../../src/CBInternationalClient.ts"],"names":[],"mappings":"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"}