Hi @phucnguyen!
We can see in your code that you are using the split() function path_url.split('?')[0]
to remove the query parameter. For Exchange/Pro endpoint and sandbox environment, you must include the query parameter in your requestPath. Removing the query parameter in the requestPath is a signature generation for Advanced Trade API.We request that you include query parameters and try to call the /fills endpoint to check if it still returns an invalid signature error.You may check these forum posts for reference:
We hope this helps!