Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot connect/subscribe to SpotUserDataStream on Testnet #414

Open
ozum opened this issue Mar 8, 2024 · 4 comments · Fixed by #422
Open

Cannot connect/subscribe to SpotUserDataStream on Testnet #414

ozum opened this issue Mar 8, 2024 · 4 comments · Fixed by #422

Comments

@ozum
Copy link
Contributor

ozum commented Mar 8, 2024

Hi,

When I try to connect/subscribe to SpotUserDataStream, I get an error message stating Invalid API key, IP, or permissions for action. (code: 2015).

const wsClient = new WebsocketClient({
  beautify: true,
  wsUrl: "wss://testnet.binance.vision",
  api_key: API_KEY,
  api_secret: API_SECRET,
});

await wsClient.subscribeSpotUserDataStream();

Workaround

I tracked the error,

In the websocket-client.js file the subscribeSpotUserDataStream() method calls the getSpotRestClient() method, which tries to connect to real network instead of testnet.

When I added the baseUrl option for the spot client to use testnet, the problem was solved. However:

  1. baseUrl is not a defined option in the WSClientConfigurableOptions
  2. This is undocumented.
const wsClient = new WebsocketClient({
  beautify: true,
  baseUrl: "https://testnet.binance.vision",
  wsUrl: "wss://testnet.binance.vision",
  api_key: API_KEY,
  api_secret: API_SECRET,
});

await wsClient.subscribeSpotUserDataStream();
@ozum
Copy link
Contributor Author

ozum commented May 24, 2024

@tiagosiebler, in #422, we pushed an undo commit for the baseUrl attribute in the Web Socket client.

Did you reimplement baseUrl, or is this issue closed automatically by accident?

@tiagosiebler tiagosiebler reopened this May 24, 2024
@tiagosiebler
Copy link
Owner

Not yet, closed automatically by accident so I've reopened it, thanks

@Kos-M
Copy link

Kos-M commented Dec 7, 2024

+1

// passing ws client options =
{
beautify: true,
api_key: '---',
api_secret: '---',
wsUrl: 'wss://stream.testnet.binance.vision:9443'
}
 
// getting this error =
[
'Failed to connect to spot user data',
{
category: 'binance-ws',
error: {
code: -2015,
message: 'Invalid API-key, IP, or permissions for action.',
body: [Object],
headers: [Object [AxiosHeaders]],
requestUrl: 'https://api.binance.com/api/v3/userDataStream',
requestBody: undefined,
requestOptions: [Object]
}
}
]

@Kos-M
Copy link

Kos-M commented Dec 8, 2024

Actually i found a way to make it work in testnet , in case anyone else is trying..

Here it is:

    //
    const websocketOptions = {
      beautify: true,
      api_key: apiKey,
      api_secret: apiSecret,
      restOptions: {
        baseUrl: 'https://testnet.binance.vision',
      },
      wsUrl:  'wss://stream.testnet.binance.vision:9443' ,
    };
    this.binanceWs = new WebsocketClient(websocketOptions);
    this.binanceWs.subscribeSpotUserDataStream();
   //

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants