Skip to content

Invalid signature using authenticating with websockets #11

@remarqUK

Description

@remarqUK

I'm writing a script to subscribe to the authenticated "user" channel using the code below (which used orderbook.py as its basis) and I'm passing the api_key/api_secret and passphrase through (I've redacted them in this code example)

The error I get back is:

{'message': 'Sorry, you could not be authenticated: Bad Request', 'reason': 'invalid signature', 'type': 'error'}

Any ideas ?

import asyncio import pprint from gdax.websocket_feed_listener import WebSocketFeedListener class User(WebSocketFeedListener): def __init__(self, product_ids='ETH-USD', api_key=None, api_secret=None, passphrase=None, use_heartbeat=False, trade_log_file_path=None): super().__init__(product_ids=product_ids, channels='user', api_key=api_key, api_secret=api_secret, passphrase=passphrase, use_heartbeat=use_heartbeat ) if not isinstance(product_ids, list): product_ids = [product_ids] async def __aenter__(self): await super().__aenter__() return self async def handle_message(self): try: message = await self._recv() except aiohttp.ServerDisconnectedError as exc: logging.error( f'Error: Exception: f{exc}. Re-initializing websocket.') await self.__aexit__(None, None, None) await self.__aenter__() return return message async def run_user(): # pragma: no cover async with User( ['ETH-USD'], api_key="XXXXXXXX", api_secret="XXXXXXXX", passphrase="XXXXXXXX" ) as user: while True: message = await user.handle_message() if message is None: continue pprint.pprint(message) if __name__ == "__main__": # pragma: no cover loop = asyncio.get_event_loop() loop.run_until_complete(run_user()) 

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions