mrzortrax Posted May 15, 2018 Share Posted May 15, 2018 Hi zusammen, leider bekomme ich über den Support von Bitcoin.de wohl keine antwort. Ich möchte über die Trading API eine execute Trade durchführen. Bekomme aber immer die Fehlermeldung invalid signature. Ein Post Parameter zum erstellen eines Kaufangebots hat jedoch funktioniert. Ich nehme an, das irgendwas mit der URI nicht stimmt. Oder das da was fehlt. Kann mir da vielleicht jemand unter die Arme greifen? Einen POST Parameter für ein Kaufangebot einstellen hat bei mir funktioniert! Execute trade jedoch nicht. Leider ist wie ich finde die Anleitung etwas unverständlichbeschrieben. Wie genau muss denn der URI RequestI Link nun lauten um zum Beispiel ein Verkaufangebot anzunehmen? In der Anleitung wird es so beschrieben... https://api.bitcoin.de/v2/trades/:order_id Variante1:https://api.bitcoin.de/v2/trades/:UN6N82 Variante2:https://api.bitcoin.de/v2/trades/UN6N82 Der Postparameter sieht so aus: type=sell&order_id=UN6N82&traiding_pair=btceur&amount=0,01984 Der MD5 Hash davon so: efb36dd06b961b8367f171cf21dad973 Ich erhalte immer den Fehler Invalid Signature. Meine Vermutung ist, das irgendwas mit der Syntax der Request URI nicht stimmt. Diese muss ja sicherlich identisch mit der URI sein, die auch im HMAC verwendet wird nehme ich an. Vielen Dank vorab für eure Hilfe! Link to comment Share on other sites More sharing options...
fox42 Posted May 15, 2018 Share Posted May 15, 2018 Hi, in den Post Parametern brauchst du die order_id ja nicht mehr. Setzt du dann die richtigen Header? X-API-KEY X-API-NONCE X-API-SIGNATURE mit der Signatur als MD5 von den Parametern durch # getrennt wie in der API doc beschrieben. Viele Grüße Link to comment Share on other sites More sharing options...
mrzortrax Posted May 15, 2018 Author Share Posted May 15, 2018 (edited) Bist du sicher das ich die Order_id nicht mehr in den Post Parameter übergeben muss? Ist das vielleicht der Fehler? Ja Die 3 Header sind richtig wie gesagt ein Kaufangebot setzen funktioniert auf die Art das hab ich bereits erfolgreich getestet. Nur kein execute und ich weiß nicht warum. Ist jedenfalls bei den Parametern mit aufgeführt... Parameter Name Type Values Default Notes order_id String ID des Angebots. trading_pair string Handelspaar (s. Tabelle Handelspaare) type String buy sell Angebots-Typ amount Float Menge der Coins Edited May 15, 2018 by mrzortrax Link to comment Share on other sites More sharing options...
fox42 Posted May 15, 2018 Share Posted May 15, 2018 Die Signatur sollte ja sein: <method>#<apikey>#<nonce>#<postParametersMD5> Das ganze mit dem APISecret durch den Hmac gejagt. Dabei ist das postParametersMD5 ein MD5 von: amount=<amount>&trading_pair=<trading_pair>&type=<type> Wichtig: Parameter alphabetisch sortiert.. Link to comment Share on other sites More sharing options...
mrzortrax Posted May 15, 2018 Author Share Posted May 15, 2018 Soweit stimme ich überein. Bis auf die Alphabetische Sortierung des post parameters. Siehe oben. Das muss ich umstellen! Das könnte der Fehler sein. Welche meiner Varianten der Uri ist richtig? 1 oder 2 Link to comment Share on other sites More sharing options...
fox42 Posted May 15, 2018 Share Posted May 15, 2018 die Doppelpunkte heißen nur, dass das Folgende ein Parameter ist.. Also ohne Link to comment Share on other sites More sharing options...
mrzortrax Posted May 15, 2018 Author Share Posted May 15, 2018 (edited) Also ich habs nun mal umgestellt aber leider immer noch der selbe fehler... Sieht nun wie folgt aus: Post Parameter: amount=0,01984&order_id=5EUF9B&trading_pair=btceur&type=sell HD5: 517277758b42c429d66e87f406dac195 HMACData: POST#https://api.bitcoin.de/v2/trades/5EUF9B#ZENSIERT#1526424418#517277758b42c429d66e87f406dac195 URI: https://api.bitcoin.de/v2/trades/5EUF9B Ich habs bei den PostParameter sowohl mit order_id als auch ohne versucht... Leider immer noch nichts... In dem entsprechenden Log der API Request steht der Postparameter so drin: { "amount":"0,01984", "order_id":"5EUF9B", "trading_pair":"btceur", "type":"sell" } Edited May 15, 2018 by mrzortrax Link to comment Share on other sites More sharing options...
fox42 Posted May 15, 2018 Share Posted May 15, 2018 Versuch nochmal für den MD5 wirklich nur: amount=0,01984&trading_pair=btceur&type=sell Dabei sichergehen, dass sell auch richtig ist. Wenn ich was kaufe, trage ich da buy ein.. Für die Signatur dann: POST#https://api.bitcoin.de/v2/trades/5EUF9B#ZENSIERT#1526424418#<MD5> und in den Body vom POST Request: amount=0,01984&trading_pair=btceur&type=sell Link to comment Share on other sites More sharing options...
mrzortrax Posted May 16, 2018 Author Share Posted May 16, 2018 (edited) Ja... So hab ichs... POSTParameter: amount=0,01984&trading_pair=btceur&type=sell PostParameter MD5: c094c9aa6e5f18d84b697418e3fe156e HMACData : POST#https://api.bitcoin.de/v2/trades/5EUF9B#ZENSIERT#1526467288#c094c9aa6e5f18d84b697418e3fe156e Die wird dann Sha256 gehashed und im Header signatur übergeben. BodyPost: amount=0,01984&trading_pair=btceur&type=sell Log Datei von diesem Post bei Bitcoin sieht so aus: API-Aktion: executeTrade Request-URI: https://api.bitcoin.de/v2/trades/5EUF9B HTTP-Methode: POST POST-Parameter: { "amount":"0,01984", "trading_pair":"btceur", "type":"sell" } Auch die 3 Header sind übergeben... Normalerweise sieht alles i.O. aus ich weiß wirklich nicht mehr woran das liegen soll. Ich hab schon überlegt ob es beim amount am Komma liegt, aber der Wert soll Float sein. Ist ja eine Kommazahl... Ich wüsste jetzt nicht mehr woran das liegen könnte. Edited May 16, 2018 by mrzortrax Link to comment Share on other sites More sharing options...
fox42 Posted May 16, 2018 Share Posted May 16, 2018 dann versuch mal ein . stat , wie im Beispiel: url_encoded_query_string = 'max_amount=5.3&price=255.5&type=buy' sonst nimmt der das als String Link to comment Share on other sites More sharing options...
mrzortrax Posted May 16, 2018 Author Share Posted May 16, 2018 :-* Auuu mann... Jepp das war es. Jetzt gehts durch mit anständigen Fehlermeldungen wie Order not posible! Danke für die Unterstützung jetzt komm ich endlich weiter! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now