Jump to content

Trading API execute Trade Problem


mrzortrax
 Share

Recommended Posts

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
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

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

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 by mrzortrax
Link to comment
Share on other sites

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

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

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 by mrzortrax
Link to comment
Share on other sites

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

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 by mrzortrax
Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.