Conversion History endpoint throws error, help please

Hello,

So I noticed this recent addition to the API,
https://binance-docs.github.io/apidocs/spot/en/#convert-endpoints

I’m trying to fetch all historical information about my conversions, I get an error while executing this endpoint: (keeping in mind that my Postman collection here is the one provided by Binance for testing purposes, works perfect for any other endpoint)

I added this new endpoint and while trying I get this:

  1. What would be the right url/parameters to be sent, I’m doing it accordingly to the documentation provided.

  2. Why is not required a signature on this request, this is an USERDATA endpoint, how does it tell what’s the user requesting the information so?

Thanks.

Hey, the endpoint requires signature, otherwise an -1002 error is thrown.
As for the error message, please search on this forum for other similar questions, example: APIError(code=-2014): API-key format invalid.

I can’t reproduce the error with same timestamps:
GET https://api.binance.com/sapi/v1/convert/tradeFlow?startTime=1643656053961&endTime=1643728005736&limit=1000&timestamp=1643816932822&signature=xxx

The signature might not be present on this screenshot just because documentation does not show it as well, but of course I also tested WITH signature, (as this is an user endpoint), and I got the same error.

I’ll be trying on these days to confirm API got corrected, I still have saved the same example and come back to confirm.

Hey @aisling so again I performed a test, please see my evidence on this screenshot, I still get the -2014 error, with signature and timestamp, the start time and end time should result in at least 1 value, as I know for sure I had a conversion transaction at that day.



You can see my signature and timestamp is correct, because with the same postman collection I can properly get any other signed endpoint, like ClientOrders here below:



do you see any problem on my execution?

  1. Can you print the final request query-string form from Console on Postman tab, pls?
  2. Have you tried the same endpoint but using another method besides Postman?
    You can refer to GitHub - binance/binance-signature-examples: Examples of binance hmac hashing for example to create a code section for the convert endpoint and use the same signature generation to make sure it’s endpoint and not Postman related issue.

Same problem here, I’m on python 3.9 with PySharm usign code from github binance-signature-examples as suggested. The error is “{‘code’: -1022, ‘msg’: ‘Signature for this request is not valid.’}” but when I use the simple “/api/v3/account” it runs perfectly.

The query string giving error produced from the script is:
h-ttps://api.binance.com/sapi/v1/convert/tradeFlow?startTime=1650412800000&endTime=1650499200000&limit=1000&recvWindow=30000&timestamp=1650980256359&signature=XXXxxxXXXxxx

I have no problem with similar parameters by the example script.

GET https://api.binance.com/sapi/v1/convert/tradeFlow?startTime=1650412800000&endTime=1650499200000&limit=1000&recvWindow=30000&timestamp=1651033586914&signature=xxxx
{'list': [], 'startTime': 1650412800000, 'endTime': 1650499200000, 'limit': 1000, 'moreData': False}
params = {
    "startTime": "1650412800000",
    "endTime": "1650499200000",
    "limit": "1000",
    "recvWindow": "30000"
}
response = send_signed_request("GET", "/sapi/v1/convert/tradeFlow", params)
print(response)

Thanks and sorry!
To create the query string I used my own way but after your suggested “params = {}” method (the “dictionaries data type” method that is perfectly described in the GitHub example) all works flawlessly :slight_smile: