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,574 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CBAdvancedTradeClient = void 0;
4
+ const BaseRestClient_js_1 = require("./lib/BaseRestClient.js");
5
+ const requestUtils_js_1 = require("./lib/requestUtils.js");
6
+ /**
7
+ * REST client for Coinbase's Advanced Trade API:
8
+ * https://docs.cdp.coinbase.com/advanced-trade/docs/api-overview/
9
+ */
10
+ class CBAdvancedTradeClient extends BaseRestClient_js_1.BaseRestClient {
11
+ constructor(restClientOptions = {}, requestOptions = {}) {
12
+ super(restClientOptions, requestOptions);
13
+ return this;
14
+ }
15
+ getClientType() {
16
+ return requestUtils_js_1.REST_CLIENT_TYPE_ENUM.advancedTrade;
17
+ }
18
+ /**
19
+ *
20
+ * Account Endpoints
21
+ *
22
+ */
23
+ /**
24
+ * List Accounts
25
+ *
26
+ * Get a list of authenticated accounts for the current user.
27
+ */
28
+ getAccounts(params) {
29
+ return this.getPrivate(`/api/v3/brokerage/accounts`, params);
30
+ }
31
+ /**
32
+ * Get Account
33
+ *
34
+ * Get a list of information about single account, given an account UUID.
35
+ * Tip: Use List Accounts (getAccounts funcion) to find account UUIDs.
36
+ */
37
+ getAccount(params) {
38
+ return this.getPrivate(`/api/v3/brokerage/accounts/${params.account_id}`);
39
+ }
40
+ /**
41
+ *
42
+ * Products Endpoints
43
+ *
44
+ */
45
+ /**
46
+ * Get Best Bid/Ask
47
+ *
48
+ * Get the best bid/ask for all products. A subset of all products can be returned instead by using the product_ids input.
49
+ */
50
+ getBestBidAsk(params) {
51
+ return this.getPrivate(`/api/v3/brokerage/best_bid_ask`, params);
52
+ }
53
+ /**
54
+ * Get Product Book
55
+ *
56
+ * Get a list of bids/asks for a single product. The amount of detail shown can be customized with the limit parameter.
57
+ */
58
+ getProductBook(params) {
59
+ return this.getPrivate(`/api/v3/brokerage/product_book`, params);
60
+ }
61
+ /**
62
+ * List Products
63
+ *
64
+ * Get a list of the available currency pairs for trading.
65
+ *
66
+ */
67
+ getProducts(params) {
68
+ return this.getPrivate(`/api/v3/brokerage/products`, params);
69
+ }
70
+ /**
71
+ * Get Product
72
+ *
73
+ * Get information on a single product by product ID.
74
+ */
75
+ getProduct(params) {
76
+ const { product_id, ...queryParams } = params;
77
+ return this.getPrivate(`/api/v3/brokerage/products/${product_id}`, queryParams);
78
+ }
79
+ /**
80
+ * Get Product Candles
81
+ *
82
+ * Get rates for a single product by product ID, grouped in buckets.
83
+ */
84
+ getProductCandles(params) {
85
+ const { product_id, ...queryParams } = params;
86
+ return this.getPrivate(`/api/v3/brokerage/products/${product_id}/candles`, queryParams);
87
+ }
88
+ /**
89
+ * Get Market Trades
90
+ *
91
+ * Get snapshot information by product ID about the last trades (ticks) and best bid/ask.
92
+ */
93
+ getMarketTrades(params) {
94
+ const { product_id, ...queryParams } = params;
95
+ return this.getPrivate(`/api/v3/brokerage/products/${product_id}/ticker`, queryParams);
96
+ }
97
+ /**
98
+ *
99
+ * Orders Endpoints
100
+ *
101
+ */
102
+ /**
103
+ * Create Order
104
+ *
105
+ * Create an order with a specified product_id (asset-pair), side (buy/sell), etc.
106
+ *
107
+ */
108
+ submitOrder(params) {
109
+ this.validateOrderId(params, 'client_order_id');
110
+ return this.postPrivate(`/api/v3/brokerage/orders`, {
111
+ body: params,
112
+ });
113
+ }
114
+ /**
115
+ * Cancel Orders
116
+ *
117
+ * Initiate cancel requests for one or more orders.
118
+ * The maximum number of order_ids that can be cancelled per request is 100.
119
+ * This number may be subject to change in emergency, but if a request exceeds the max,
120
+ * then an InvalidArgument error code will be returned with an error message denoting the limit.
121
+ */
122
+ cancelOrders(params) {
123
+ return this.postPrivate(`/api/v3/brokerage/orders/batch_cancel`, {
124
+ body: params,
125
+ });
126
+ }
127
+ /**
128
+ * Edit Order
129
+ *
130
+ * Edit an order with a specified new size, or new price.
131
+ *
132
+ * - Your request moves to the back of the queue if you increase the size or increase or decrease the price.
133
+ * - If you decrease the size, you keep your place in line.
134
+ * - A client can only send an Edit Order request after the previous request for the same order has been fully processed.
135
+ */
136
+ updateOrder(params) {
137
+ return this.postPrivate(`/api/v3/brokerage/orders/edit`, {
138
+ body: params,
139
+ });
140
+ }
141
+ /**
142
+ * Edit Order Preview
143
+ *
144
+ * Preview an edit order request with a specified new size, or new price.
145
+ *
146
+ */
147
+ updateOrderPreview(params) {
148
+ return this.postPrivate(`/api/v3/brokerage/orders/edit_preview`, {
149
+ body: params,
150
+ });
151
+ }
152
+ /**
153
+ * List Orders
154
+ *
155
+ * Get a list of orders filtered by optional query parameters.
156
+ *
157
+ * - The maximum number of OPEN orders returned is 1000.
158
+ * - The parameters start_date and end_date don't apply to open orders.
159
+ * - You cannot pair open orders with other order types.
160
+ * - You cannot query for OPEN orders with other order types.
161
+ */
162
+ getOrders(params) {
163
+ return this.getPrivate(`/api/v3/brokerage/orders/historical/batch`, params);
164
+ }
165
+ /**
166
+ * List Fills
167
+ *
168
+ * Get a list of fills filtered by optional query parameters (product_id, order_id, etc).
169
+ *
170
+ */
171
+ getFills(params) {
172
+ return this.getPrivate(`/api/v3/brokerage/orders/historical/fills`, params);
173
+ }
174
+ /**
175
+ * Get Order
176
+ *
177
+ * Get a single order by order ID.
178
+ */
179
+ getOrder(params) {
180
+ const { order_id, ...queryParams } = params;
181
+ return this.getPrivate(`/api/v3/brokerage/orders/historical/${order_id}`, queryParams);
182
+ }
183
+ /**
184
+ * Preview Order
185
+ *
186
+ * Preview an order.
187
+ *
188
+ */
189
+ previewOrder(params) {
190
+ return this.postPrivate(`/api/v3/brokerage/orders/preview`, {
191
+ body: params,
192
+ });
193
+ }
194
+ /**
195
+ * Close Position
196
+ *
197
+ * Places an order to close any open positions for a specified product_id.
198
+ *
199
+ */
200
+ closePosition(params) {
201
+ this.validateOrderId(params, 'client_order_id');
202
+ return this.postPrivate(`/api/v3/brokerage/orders/close_position`, {
203
+ body: params,
204
+ });
205
+ }
206
+ /**
207
+ *
208
+ * Portfolios Endpoints
209
+ *
210
+ */
211
+ /**
212
+ * List Portfolios
213
+ *
214
+ * Get all portfolios of a user.
215
+ */
216
+ getPortfolios(params) {
217
+ return this.getPrivate(`/api/v3/brokerage/portfolios`, params);
218
+ }
219
+ /**
220
+ * Create Portfolio
221
+ *
222
+ * Create a portfolio.
223
+ */
224
+ createPortfolio(params) {
225
+ return this.postPrivate(`/api/v3/brokerage/portfolios`, {
226
+ body: params,
227
+ });
228
+ }
229
+ /**
230
+ * Move Portfolio Funds
231
+ *
232
+ * Move funds between portfolios.
233
+ */
234
+ movePortfolioFunds(params) {
235
+ return this.postPrivate(`/api/v3/brokerage/portfolios/move_funds`, {
236
+ body: params,
237
+ });
238
+ }
239
+ /**
240
+ * Get Portfolio Breakdown
241
+ *
242
+ * Get the breakdown of a portfolio.
243
+ */
244
+ getPortfolioBreakdown(params) {
245
+ const { portfolio_uuid, ...queryParams } = params;
246
+ return this.getPrivate(`/api/v3/brokerage/portfolios/${portfolio_uuid}`, queryParams);
247
+ }
248
+ /**
249
+ * Delete Portfolio
250
+ *
251
+ * Delete a portfolio.
252
+ */
253
+ deletePortfolio(params) {
254
+ const { portfolio_uuid } = params;
255
+ return this.deletePrivate(`/api/v3/brokerage/portfolios/${portfolio_uuid}`);
256
+ }
257
+ /**
258
+ * Edit Portfolio
259
+ *
260
+ * Edit a portfolio.
261
+ *
262
+ */
263
+ updatePortfolio(params) {
264
+ const { portfolio_uuid, ...bodyParams } = params;
265
+ return this.putPrivate(`/api/v3/brokerage/portfolios/${portfolio_uuid}`, {
266
+ body: bodyParams,
267
+ });
268
+ }
269
+ /**
270
+ *
271
+ * Futures Endpoints
272
+ *
273
+ */
274
+ /**
275
+ * Get Futures Balance Summary
276
+ *
277
+ * Get a summary of balances for CFM trading.
278
+ *
279
+ * Futures vs Spot Accounts:
280
+ * - Futures and spot balances are held in different accounts.
281
+ * - Cash is always deposited into your Coinbase Inc. (CBI) spot account.
282
+ * - Cash is automatically transferred to your Coinbase Financial Markets (CFM) futures account to satisfy margin requirements.
283
+ * - You can transfer cash that isn't being used to margin or maintain futures positions into your CBI spot account.
284
+ * - Funds held in a CBI spot account do not receive the preferential treatment given to funds held in a regulated futures account.
285
+ *
286
+ * Intraday vs. Overnight Margin Health:
287
+ * - If you are opted in to receive increased leverage on futures trades during the intraday window (from 8am-4pm ET), this endpoint will return your intraday and overnight margin health.
288
+ */
289
+ getFuturesBalanceSummary() {
290
+ return this.getPrivate(`/api/v3/brokerage/cfm/balance_summary`);
291
+ }
292
+ /**
293
+ * Get Intraday Margin Setting
294
+ *
295
+ * Get the futures intraday margin setting.
296
+ */
297
+ getIntradayMarginSetting() {
298
+ return this.getPrivate(`/api/v3/brokerage/cfm/intraday/margin_setting`);
299
+ }
300
+ /**
301
+ * Set Intraday Margin Setting
302
+ *
303
+ * Set the futures intraday margin setting.
304
+ */
305
+ setIntradayMarginSetting(params) {
306
+ return this.postPrivate(`/api/v3/brokerage/cfm/intraday/margin_setting`, {
307
+ body: params,
308
+ });
309
+ }
310
+ /**
311
+ * Get Current Margin Window
312
+ *
313
+ * Get the futures current margin window.
314
+ */
315
+ getCurrentMarginWindow(params) {
316
+ return this.getPrivate(`/api/v3/brokerage/cfm/intraday/current_margin_window`, params);
317
+ }
318
+ /**
319
+ * List Futures Positions
320
+ *
321
+ * Get a list of positions in CFM products.
322
+ */
323
+ getFuturesPositions() {
324
+ return this.getPrivate(`/api/v3/brokerage/cfm/positions`);
325
+ }
326
+ /**
327
+ * Get Futures Position
328
+ *
329
+ * Get positions for a specific CFM product.
330
+ */
331
+ getFuturesPosition(params) {
332
+ const { product_id } = params;
333
+ return this.getPrivate(`/api/v3/brokerage/cfm/positions/${product_id}`);
334
+ }
335
+ /**
336
+ * Schedule Futures Sweep
337
+ *
338
+ * Schedules a sweep of funds from FCM wallet to USD Spot wallet.
339
+ *
340
+ * Futures Sweep Processing:
341
+ * - Sweep requests submitted before 5PM ET each day are processed the following business day.
342
+ * - Sweep requests submitted after 5PM ET each day are processed in 2 business days.
343
+ * - You can have at most one pending sweep request at a time.
344
+ *
345
+ * Market movements related to your open positions may impact the final amount that is transferred into your spot account.
346
+ * The final funds transferred, up to your specified amount, depend on the available excess in your futures account.
347
+ */
348
+ scheduleFuturesSweep(params) {
349
+ return this.postPrivate(`/api/v3/brokerage/cfm/sweeps/schedule`, {
350
+ body: params,
351
+ });
352
+ }
353
+ /**
354
+ * List Futures Sweeps
355
+ *
356
+ * Get pending and processing sweeps of funds from FCM wallet to USD Spot wallet.
357
+ *
358
+ * Pending vs. Processing Sweeps:
359
+ * - A pending sweep is a sweep that has not started processing and can be cancelled.
360
+ * - A processing sweep is a sweep that is currently being processed and cannot be cancelled.
361
+ * - Once a sweep is complete, it no longer appears in the list of sweeps.
362
+ */
363
+ getFuturesSweeps() {
364
+ return this.getPrivate(`/api/v3/brokerage/cfm/sweeps`);
365
+ }
366
+ /**
367
+ * Cancel Pending Futures Sweep
368
+ *
369
+ * Cancel the pending sweep of funds from FCM wallet to USD Spot wallet.
370
+ */
371
+ cancelPendingFuturesSweep() {
372
+ return this.deletePrivate(`/api/v3/brokerage/cfm/sweeps`);
373
+ }
374
+ /**
375
+ *
376
+ * Perpetuals Endpoints
377
+ *
378
+ */
379
+ /**
380
+ * Allocate Portfolio
381
+ *
382
+ * Allocate portfolio funds to a sub-portfolio on Intx Portfolio.
383
+ *
384
+ */
385
+ allocatePortfolio(params) {
386
+ return this.postPrivate(`/api/v3/brokerage/intx/allocate`, {
387
+ body: params,
388
+ });
389
+ }
390
+ /**
391
+ * Get Perpetuals Portfolio Summary
392
+ *
393
+ * Get a summary of your Perpetuals portfolio.
394
+ */
395
+ getPerpetualsPortfolioSummary(params) {
396
+ const { portfolio_uuid } = params;
397
+ return this.getPrivate(`/api/v3/brokerage/intx/portfolio/${portfolio_uuid}`);
398
+ }
399
+ /**
400
+ * List Perpetuals Positions
401
+ *
402
+ * Get a list of open positions in your Perpetuals portfolio.
403
+ */
404
+ getPerpetualsPositions(params) {
405
+ const { portfolio_uuid } = params;
406
+ return this.getPrivate(`/api/v3/brokerage/intx/positions/${portfolio_uuid}`);
407
+ }
408
+ /**
409
+ * Get Perpetuals Position
410
+ *
411
+ * Get a specific open position on Intx.
412
+ *
413
+ */
414
+ getPerpetualsPosition(params) {
415
+ const { portfolio_uuid, symbol } = params;
416
+ return this.getPrivate(`/api/v3/brokerage/intx/positions/${portfolio_uuid}/${symbol}`);
417
+ }
418
+ /**
419
+ * Get Portfolios Balances
420
+ *
421
+ * Get a list of asset balances on Intx for a given Portfolio.
422
+ */
423
+ getPortfoliosBalances(params) {
424
+ const { portfolio_uuid } = params;
425
+ return this.getPrivate(`/api/v3/brokerage/intx/balances/${portfolio_uuid}`);
426
+ }
427
+ /**
428
+ * Opt In or Out of Multi Asset Collateral
429
+ *
430
+ * Enable or Disable Multi Asset Collateral for a given Portfolio.
431
+ */
432
+ updateMultiAssetCollateral(params) {
433
+ return this.postPrivate(`/api/v3/brokerage/intx/multi_asset_collateral`, {
434
+ body: params,
435
+ });
436
+ }
437
+ /**
438
+ *
439
+ * Fees Endpoints
440
+ *
441
+ */
442
+ /**
443
+ * Get Transaction Summary
444
+ *
445
+ * Get a summary of transactions with fee tiers, total volume, and fees.
446
+ */
447
+ getTransactionSummary(params) {
448
+ return this.getPrivate(`/api/v3/brokerage/transaction_summary`, params);
449
+ }
450
+ /**
451
+ *
452
+ * Converts Endpoints
453
+ *
454
+ */
455
+ /**
456
+ * Create Convert Quote
457
+ *
458
+ * Create a convert quote with a specified source account, target account, and amount.
459
+ * Convert is applicable for USDC-USD and EURC-EUR conversion.
460
+ */
461
+ submitConvertQuote(params) {
462
+ return this.postPrivate(`/api/v3/brokerage/convert/quote`, {
463
+ body: params,
464
+ });
465
+ }
466
+ /**
467
+ * Get Convert Trade
468
+ *
469
+ * Gets a list of information about a convert trade with a specified trade id, source account, and target account.
470
+ */
471
+ getConvertTrade(params) {
472
+ const { trade_id, ...queryParams } = params;
473
+ return this.getPrivate(`/api/v3/brokerage/convert/trade/${trade_id}`, queryParams);
474
+ }
475
+ /**
476
+ * Commit Convert Trade
477
+ *
478
+ * Commits a convert trade with a specified trade id, source account, and target account.
479
+ */
480
+ commitConvertTrade(params) {
481
+ const { trade_id, ...bodyParams } = params;
482
+ return this.postPrivate(`/api/v3/brokerage/convert/trade/${trade_id}`, {
483
+ body: bodyParams,
484
+ });
485
+ }
486
+ /**
487
+ *
488
+ * Public Endpoints
489
+ *
490
+ */
491
+ getServerTime() {
492
+ return this.get(`/api/v3/brokerage/time`);
493
+ }
494
+ /**
495
+ * Get Public Product Book
496
+ *
497
+ * Get a list of bids/asks for a single product. The amount of detail shown can be customized with the limit parameter.
498
+ */
499
+ getPublicProductBook(params) {
500
+ return this.get(`/api/v3/brokerage/market/product_book`, params);
501
+ }
502
+ /**
503
+ * List Public Products
504
+ *
505
+ * Get a list of the available currency pairs for trading.
506
+ */
507
+ getPublicProducts(params) {
508
+ return this.get(`/api/v3/brokerage/market/products`, params);
509
+ }
510
+ /**
511
+ * Get Public Product
512
+ *
513
+ * Get information on a single product by product ID.
514
+ */
515
+ getPublicProduct(params) {
516
+ const { product_id } = params;
517
+ return this.get(`/api/v3/brokerage/market/products/${product_id}`);
518
+ }
519
+ /**
520
+ * Get Public Product Candles
521
+ *
522
+ * Get rates for a single product by product ID, grouped in buckets.
523
+ */
524
+ getPublicProductCandles(params) {
525
+ const { product_id, ...queryParams } = params;
526
+ return this.get(`/api/v3/brokerage/market/products/${product_id}/candles`, queryParams);
527
+ }
528
+ /**
529
+ * Get Public Market Trades
530
+ *
531
+ * Get snapshot information by product ID about the last trades (ticks) and best bid/ask.
532
+ */
533
+ getPublicMarketTrades(params) {
534
+ const { product_id, ...queryParams } = params;
535
+ return this.get(`/api/v3/brokerage/market/products/${product_id}/ticker`, queryParams);
536
+ }
537
+ /**
538
+ *
539
+ * Payment Methods Endpoints
540
+ *
541
+ */
542
+ /**
543
+ * List Payment Methods
544
+ *
545
+ * Get a list of payment methods for the current user.
546
+ */
547
+ getPaymentMethods() {
548
+ return this.getPrivate(`/api/v3/brokerage/payment_methods`);
549
+ }
550
+ /**
551
+ * Get Payment Method
552
+ *
553
+ * Get information about a payment method for the current user.
554
+ */
555
+ getPaymentMethod(params) {
556
+ const { payment_method_id } = params;
557
+ return this.getPrivate(`/api/v3/brokerage/payment_methods/${payment_method_id}`);
558
+ }
559
+ /**
560
+ *
561
+ * Data API Endpoints
562
+ *
563
+ */
564
+ /**
565
+ * Get API Key Permissions
566
+ *
567
+ * Get information about your CDP API key permissions.
568
+ */
569
+ getApiKeyPermissions() {
570
+ return this.getPrivate(`/api/v3/brokerage/key_permissions`);
571
+ }
572
+ }
573
+ exports.CBAdvancedTradeClient = CBAdvancedTradeClient;
574
+ //# sourceMappingURL=CBAdvancedTradeClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CBAdvancedTradeClient.js","sourceRoot":"","sources":["../../src/CBAdvancedTradeClient.ts"],"names":[],"mappings":"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"}