Jump to content

Empfohlene Beiträge

Hallo zusammen,

 

ich habe versucht über btcde.py von peshay auf die TAPI zuzugreifen (https://github.com/peshay/btcde). Die get-Funktionen machen auch alle das was sie sollen, nur bei den post-Funktionen klappt das eben nicht. Es kommt immer der HTTP-Fehler 422 mit Error Code 26 "Invalid order_id". Da kann man auch machen was man will.

 

Mein Code:

import sys

import btcde

 

# create a object for the connection settings

api_key = 'XXX'

api_secret = 'XXXXX'

conn = btcde.Connection(api_key, api_secret)

 

# get command line parameters

orderID = sys.argv[1]

type    = sys.argv[2]

amount  = sys.argv[3]

 

 

print ('OrderID: %s\tType: %s\tAmount: %s\n') % (orderID, type, amount)

 

 

 

 

trade = btcde.executeTrade(conn, orderID, type, amount)

 

Api-Key und -Secret sind im Original korrekt... :-)

 

Meine Ausgabe:

OrderID: F7M28S Type: buy Amount: 0.1

 

INFO:urllib3.connectionpool:Starting new HTTPS connection (1): api.bitcoin.de

send: 'POST /v1/trades/:F7M28S?amount=0.1&order_id=F7M28S&type=buy HTTP/1.1\r\nHost: api.bitcoin.de\r\nContent-Length: 35\r\nAccept-Encoding: gzip, deflate\r\nX-API-SIGNATURE: 48099275a13a6aa1b4f9ca965d83e195885f433e3a736cf82b61d8cf2de5f0dd\r\nAccept: */*\r\nUser-Agent: python-requests/2.4.3 CPython/2.7.9 Linux/4.4.11+\r\nConnection: keep-alive\r\nX-API-KEY: db4e4c9fa78be322f7753bd07301a4cf\r\nX-API-NONCE: 1479151258\r\ncontent-type: application/x-www-form-urlencoded; charset=utf-8\r\n\r\namount=0.1&order_id=F7M28S&type=buy'

reply: 'HTTP/1.1 422 Unprocessable Entity\r\n'

header: Date: Mon, 14 Nov 2016 19:20:59 GMT

header: Content-Type: application/json; charset=utf-8

header: Transfer-Encoding: chunked

header: Connection: keep-alive

header: Set-Cookie: __cfduid=d8e88e179a0d61f84c325d13aeb5360091479151258; expires=Tue, 14-Nov-17 19:20:58 GMT; path=/; domain=.bitcoin.de; HttpOnly

header: Cache-Control: no-cache

header: Expires: Thu, 01 Jan 1970 00:00:00 GMT

header: X-Frame-Options: deny

header: X-Content-Type-Options: nosniff

header: Strict-Transport-Security: max-age=15552000; includeSubDomains; preload

header: X-XSS-Protection: 1; mode=block

header: X-Frame-Options: DENY

header: Server: cloudflare-nginx

header: CF-RAY: 301cd2e41ca50f93-FRA

DEBUG:urllib3.connectionpool:"POST /v1/trades/:F7M28S?amount=0.1&order_id=F7M28S&type=buy HTTP/1.1" 422 None

Code:     26

Message:  Invalid order_id

With URL: https://api.bitcoin.de/v1/trades/:F7M28S?amount=0.1&order_id=F7M28S&type=buy

 

Nachdem das nicht hingehauen hat, hab ich selbst versucht, das ganze in Perl ohne die Library nachzucoden. Das hat aber genauso wenig geklappt. Mir fallen in dem Zusammenhang folgende Fragen ein:

- Die order_id ist schon die 6-stellige alphanumerische Nummer, oder? Die Bezeichnung ist an den verschiedenen Stellen uneinheitlich und mit der 7-stelligen numerischen "Transaktion-Id" (366xxxx) klappts auch nicht...

- Der Pfad mit dem Doppelpunkt ist schon korrekt, oder?

- Müssen außer den X-API-BLABLABLA irgendwelche bestimmten Header übergeben werden?

- Hat irgendwer Erfahrungen mit der Lib von peshay? ...oder hat sogar ein Codeschnippsel, das er posten kann?

 

Danke vielmals!

Stronzo

 

 

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

 

send: 'POST /v1/trades/:F7M28S?amount=0.1&order_id=F7M28S&type=buy HTTP/1.1\r\nHost: api.bitcoin.de\r\nContent-Length: 35\r\nAccept-Encoding: gzip, deflate\r\nX-API-SIGNATURE:

 

Muss dieser Doppelpunkt da wirklich sein ? Hast du mal in die Doku geschaut ? Ich glaube mit dem Doppelpunkt als Präfix werden öfters Parameter gekennzeichnet, welche später durch den richtigen Wert ersetzt werden.

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Hallo,

 

danke für den Hinweis auf die Github-Seite; jetzt hab ich meinen Mist schon selbstgeschrieben :D

 

Aaaaber: Ich habe genau das gleiche Problem, den undokumentierten Error Code 26 "Invalid order_id".

 

Hast du das inzwischen gefixt bekommen? Oder irgendwer anders? Habe sowohl mit als auch ohne den Doppelpunkt ausprobiert (ohne kommt ein "{'code': 422, 'message': 'Unprocessable Entity'}" bei rum).

 

Würde mich über einen Zaunpfahlwink in die richtige Richtung freuen.

 

viele Grüße

Equilibrium

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Okay, tut o.O Der gleiche Code-Schnipsel wie gestern. Offenbar ein Schluckauf in der API.

 

Besten Dank!

 

Nachtrag: OHNE Doppelpunkt natürlich

bearbeitet von Equilibrium

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.


×
×
  • Neu erstellen...

Wichtige Information

Wir speichern Cookies auf Ihrem Gerät, um diese Seite besser zu machen. Sie können Ihre Cookie-Einstellungen anpassen, ansonsten gehen wir davon aus, dass Sie damit einverstanden sind. In unseren Datenschutzerklärungen finden sie weitere Informationen.