coinbase-api 0.3.2 → 0.5.0

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