diff --git a/src/client/RESTClient.ts b/src/client/RESTClient.ts index 1374f9c5..edf57569 100644 --- a/src/client/RESTClient.ts +++ b/src/client/RESTClient.ts @@ -68,7 +68,7 @@ export class RESTClient extends EventEmitter { super(); this.logger = util.debuglog('coinbase-pro-node'); - this.httpClient = axios.default.create({ + this.httpClient = axios.create({ baseURL: baseURL, timeout: 50_000, }); @@ -105,13 +105,10 @@ export class RESTClient extends EventEmitter { requestPath, }); - config.headers = { - ...config.headers, - 'CB-ACCESS-KEY': signedRequest.key, - 'CB-ACCESS-PASSPHRASE': signedRequest.passphrase, - 'CB-ACCESS-SIGN': signedRequest.signature, - 'CB-ACCESS-TIMESTAMP': `${signedRequest.timestamp}`, - }; + config.headers.set('CB-ACCESS-KEY', signedRequest.key) + config.headers.set('CB-ACCESS-PASSPHRASE', signedRequest.passphrase) + config.headers.set('CB-ACCESS-SIGN', signedRequest.signature) + config.headers.set('CB-ACCESS-TIMESTAMP', `${signedRequest.timestamp}`) return config; }); diff --git a/src/exchange-rate/ExchangeRateAPI.ts b/src/exchange-rate/ExchangeRateAPI.ts index f7cc0190..45cd2db9 100644 --- a/src/exchange-rate/ExchangeRateAPI.ts +++ b/src/exchange-rate/ExchangeRateAPI.ts @@ -22,7 +22,7 @@ export class ExchangeRateAPI { * @see https://docs.cloud.coinbase.com/sign-in-with-coinbase/docs/api-exchange-rates#get-exchange-rates */ async getExchangeRates(currency: string = 'USD'): Promise { - const response = await axios.default.get<{ + const response = await axios.get<{ data: ExchangeRate; }>(`${this.baseURL}${ExchangeRateAPI.URL.V2_EXCHANGE_RATES}`, {params: {currency}}); return response.data.data; diff --git a/src/order/OrderAPI.ts b/src/order/OrderAPI.ts index 65a13356..5e2855a0 100644 --- a/src/order/OrderAPI.ts +++ b/src/order/OrderAPI.ts @@ -156,7 +156,9 @@ export class OrderAPI { const resource = OrderAPI.URL.ORDERS; const response = await this.apiClient.get(`${resource}`, { params: query, - paramsSerializer: querystring.stringify, + paramsSerializer: (params) => { + return querystring.stringify(params); + }, }); return { data: response.data, diff --git a/src/time/TimeAPI.ts b/src/time/TimeAPI.ts index f059dc86..ae38ab15 100644 --- a/src/time/TimeAPI.ts +++ b/src/time/TimeAPI.ts @@ -21,7 +21,7 @@ export class TimeAPI { * @see https://docs.cloud.coinbase.com/sign-in-with-coinbase/docs/api-time */ async getTime(): Promise { - const response = await axios.default.get(`${this.baseURL}${TimeAPI.URL.TIME}`, { + const response = await axios.get(`${this.baseURL}${TimeAPI.URL.TIME}`, { // This trick forces axios to set JSON headers data: {}, }); diff --git a/src/transfer/TransferAPI.ts b/src/transfer/TransferAPI.ts index 05e50510..1a29d25e 100644 --- a/src/transfer/TransferAPI.ts +++ b/src/transfer/TransferAPI.ts @@ -72,7 +72,9 @@ export class TransferAPI { } const response = await this.apiClient.get(resource, { params, - paramsSerializer: querystring.stringify, + paramsSerializer: (params) => { + return querystring.stringify(params); + }, }); z.array(TransferInformationSchema).parse(response.data);