From 85857bdc7032ac03996ab83b331b106c76f4c1a9 Mon Sep 17 00:00:00 2001 From: Joao Santos Date: Wed, 10 Sep 2025 01:24:12 +0100 Subject: [PATCH] Update node-binance-api.ts As properties `timestamp` and `recvWindow` change after variable `query` is ready, generated signature wouldn't be valid because final query would be different from the one used to generate signature, resulting in the error: `(code=-1022): Signature for this request is not valid` --- src/node-binance-api.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/node-binance-api.ts b/src/node-binance-api.ts index b1851b43..6e53e7e2 100644 --- a/src/node-binance-api.ts +++ b/src/node-binance-api.ts @@ -658,7 +658,7 @@ export default class Binance { this.requireApiSecret('signedRequest'); const isListenKeyEndpoint = url.includes('v3/userDataStream'); - const query = method === 'POST' && noDataInSignature ? '' : this.makeQueryString(data); + let query = method === 'POST' && noDataInSignature ? '' : this.makeQueryString(data); let signature = undefined; if (!noDataInSignature && !isListenKeyEndpoint) { @@ -667,6 +667,7 @@ export default class Binance { if (this.timeOffset) data.timestamp += this.timeOffset; if (!data.recvWindow) data.recvWindow = this.Options.recvWindow; + query = this.makeQueryString(data); signature = this.generateSignature(query); } @@ -6223,4 +6224,4 @@ export default class Binance { } return (subscription as any).url; } -} \ No newline at end of file +}