am 18.11.2019 11:14
Hallo liebe Community,
es ist soweit: wir stellen ab sofort allen unseren Kunden das comdirect REST API zur Verfügung.
Was heißt das für euch?
Als Kunden von comdirect habt ihr die Möglichkeit, mit euren eigenen Software-Anwendungen
Weitere Informationen findet ihr unter developer.comdirect.de. Die Registrierung zur Nutzung des comdirect REST API ist dort ebenfalls verlinkt.
Fragen zur Integration des APIs in eure Software könnt ihr gerne hier diskutieren.
Viel Spaß beim Ausprobieren wünscht das comdirect API Team!
am 08.06.2020 14:05
Hallo @Asconius,
herzlich willkommen in unserer Community! 🙂
Das Session-TAN-Verfahren steht dir auch heute schon zur Verfügung!
Wie das geht, kannst du den Kapiteln 2.2 Abruf Session-Status, 2.3 Anlage Validierung einer Session-TAN, 2.4 Aktivierung einer Session-TAN der aktuellen Doku entnehmen, die du nach der Registrierung für die comdirect REST API-Nutzung im Persönlichen Bereich erhältst.
Beste Grüße
Jan-Ove
am 10.06.2020 20:58
Hallo zusammen,
ich halte diese API für sehr sinnvoll! Und bin auch schon Nutzer.
Ich frage ich jetzt, was passiert mit dieser API wenn die Commerzbank die Comdirect übernimmt? Gibt es im Entwicklerteam schon konkrete Planungen?
Ich habe gesehen dass die comdirect API auf der Commerzbank API Webseite verlinkt ist.
Was hat es damit genau auf sich?
Vielen Dank 🙂
am 11.06.2020 15:07
Hallo @com_phil,
danke für dein positives Feedback. 🙂
Konkrete Pläne für große Veränderungen an der API für die Zeit nach der Verschmelzung von Commerzbank und comdirect sind bislang nicht bekannt. Wir erweitern natürlich auch weiterhin stetig den Funktionsumfang der API.
Die comdirect API ist auf der Commerzbank API Webseite verlinkt, weil beide Firmen eng zusammenarbeiten und sich beide APIs an einen ähnlichen Interessentenkreis richten.
Gruß
Erik
am 15.06.2020 23:41
Hallo Erik,
gibt es Pläne auch Überweisungen über die REST-API ausführen zu können?
Gruß
Carsten
am 16.06.2020 09:03
Hallo @CarstenMaul,
wir haben deinen Vorschlag an die Fachabteilung weitergegeben. Wenn wir hier mehr zu wissen, lassen wir von uns hören.
Viele Grüße
Jessica
am 17.06.2020 18:54
Ich habe eine technische Frage bezüglich dem Beispiel aus Kapitel 11.1 "API-Aufrufe zur Ausführung des Livetradings" der REST API Dokumentation.
Ich versuche diesem Beispiel zu folgen, leider erfolglos.
Speziell das Ergebnbis von Schritt 5 macht mich ratlos. HTTP Status Code ist 422.
Ich benutze P_TAN_PUSH.
Schritt 1 Anforderung eines Quotetickets:
=========================================
POST /v3/orders/quoteticket
....
Erfolgreich und liefert eine quoteTicketId und im Header eine ChallangeId
Schritt 2 Änderung Validierung Quote Request-Initialisierung mit TAN:
=====================================================================
Schlägt mit 404 NOT FOUND fehl.
Request Objekt sieht so aus:
----------------------------
PATCH https://api.comdirect.de/api/brokerage/v3/orders/quoteticket/A44E7CAA75EE4911B9C7897A9F84D1DA
Accept: application/json
Authorization: Bearer xxx-xxx-xxx-xxx
x-http-request-info: {"clientRequestId": {"sessionId": "vdzcamyefnxh","requestId": "jquobfmylv"}}
x-once-authentication-info: {"id":"12345678"}
Content-Type: application/json
Content-Length: 2
{}
Schritte 3 (Anlage Quote Request) und 4 (Validierung Order Anlage):
===================================================================
Erfolgreich trotz fehlgeschlagenem Schritt 2
Schritt 4 liefert die Challange-ID im Response Header, die ich dann in Schritt 5 im Header einfüge
Schritt 5 Anlegen der Order:
============================
Schlägt fehl mit HTTP Status 422
Ich sende als Daten EXAKT dasselbe Order-Objekt wie ich es in Schritt 4 gesendet habe
Request Objekt sieht so aus:
----------------------------
POST https://api.comdirect.de/api/brokerage/v3/orders
Accept: application/json
Authorization: Bearer xxx-xxx-xxx-xxx
x-http-request-info: {"clientRequestId": {"sessionId": "vdzcamyefnxh","requestId": "jquobfmylv"}}
x-once-authentication-info: {"id":"87654321"}
Content-Type: application/json
Content-Length: 402
{
"depotId": "XXXXXXXXX",
"orderType": "QUOTE",
"side": "BUY",
"instrumentId": "823212",
"quantity": {"value": 1, "unit": "XXX"},
"venueId": "CDFB445DD12A4F0194970043C9B10F35",
"quoteId": "ABC123",
"quoteTicketId": "CBA123",
"limit": {"value": "10.2250", "unit": "EUR"},
"creationDateTimeStamp": "2020-06-17T18:19:36,022000+02"
}
Ich würde mich über einen Tipp zur Fehlerbehebung freuen.
Gruß
Carsten Maul
am 17.06.2020 22:16
Den ersten Fehler von Schritt 2 habe ich gefunden:
der Pfad in der URL muss lauten:
/brokerage/v3/quoteticket/....
ich hatte aus versehen /brokerage/v3/orders/quoteticket/...
...ist natürlich doof wenn das system dann trotzdem ne antwort gibt um man die url nicht prüft...
am 18.06.2020 14:34
Nachdem Schritt 2 funktioniert, funktioniert jetzt auch Schritt 5. Ich konnte das gestern nur nicht mehr testen, weil es nach 22:00 Uhr und der Handelsplatz geschlossen war.
am 19.06.2020 15:09
Noch ein kleiner Fehlerhinweis:
Beim Abruf der depotTransactions per
GET /brokerage/v3/depots/{depotId}/transactionsbleibt die transactionId leer, während alle anderen Angaben korrekt zurückgegeben werden. Dies ist natürlich schlecht, da man so angesichts fehlendem Zeitstempel Transaktionen nicht identifizieren kann.
Viele Grüße
am 01.07.2020 13:56
Hallo,
Ich habe schon lange nicht mehr Programmiert, und stoße daher derzeit an meine grenzen.
ich habe ein Problem mit dem Request "Prevalidation".
Ich nutze PHP und CURL für die Übertragung.
$curl = curl_init();
$body = array (
'depotId' => $depotId,
'side' => 'BUY',
'instrumentId' => $isin,
'orderType' => 'MARKET',
'quantity' => 1,
'venueId' => $venueId,
'validityType' => 'GFD',
);
curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.comdirect.de/api/brokerage/v3/orders/prevalidation",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_HEADER => 1,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode($body),
CURLOPT_HTTPHEADER => array(
"Accept: application/json",
"Authorization: Bearer $accesstoken",
"x-http-request-info: {\"clientRequestId\":{\"sessionId\":\"sessionID123456\",\"requestId\":\"12345\"}}",
"Content-Type: application/json"
),
));
$response = curl_exec($curl);
Als Responst erhalte ich immer die Fehlermeldung:
{"code":"request.syntax.error","messages":[{"severity":"ERROR","key":"request.syntax.error","message":"Die Anfrage war syntaktisch inkorrekt","args":{},"origin":[]}]}
Leider schaffe ich es nicht diesen Fehler zu finden und zu beheben. Ich habe auf verschiedene Arten versucht das ganze zu senden aber ich bekomme immer diese Meldung zurück. Könnt Ihr mir bitte helfen und mir sagen wo ich hier falsch liege?
Vielen Dank!