Entwickler-API
Schluss mit Abfragen, wir sagen dir Bescheid
Registriere eine URL und wähle Ereignisse. Wir senden innerhalb von Sekunden nach jeder Änderung einen signierten POST und versuchen es bei Fehlern bis zu 24 Stunden lang erneut.
Ereignisse
rate.updatedEin Wechselkurs hat sich bei einer Bank geändertrate.best_changedDer günstigste Verkauf oder der höchste Ankauf hat sich geändertrate.threshold_crossedEin Kurs hat einen von dir gesetzten Schwellenwert überschrittencbe.rate_changedDer Kurs der Zentralbank hat sich geändertgold.updatedDie Goldpreise haben sich geändertsilver.updatedDie Silberpreise haben sich geänderttransfer.quotes_updatedDie Preise der Transferanbieter haben sich geändertcertificate.createdEine Bank hat ein neues Zertifikat eingeführtcertificate.rate_changedDie Rendite eines Zertifikats hat sich geänderttbill.auction_resultEin Ergebnis einer Schatzwechselauktionfund.price_updatedDer Anteilspreis eines Fonds wurde aktualisiertstatus.incidentEine Störung des Dienstes hat begonnen oder ist beendetWas wir senden
POST https://example.com/geneh
Geneh-Event: rate.best_changed
Geneh-Signature: t=1792118220,v1=5f2b9c1e7a
{
"id": "evt_01JB7Q2K",
"type": "rate.best_changed",
"created_at": "2026-10-16T00:37:00Z",
"data": {
"currency": "USD",
"side": "sell",
"previous": { "bank": "nbe", "rate": 53.52 },
"current": { "bank": "credit_agricole", "rate": 53.47 }
}
}Signatur prüfen
Jede Anfrage wird mit dem Geheimnis deines Endpunkts per HMAC SHA-256 signiert. Lehne alles ab, was älter als 5 Minuten ist.
import crypto from "node:crypto";
function verify(rawBody, header, secret) {
const [t, v1] = header.split(",").map(p => p.split("=")[1]);
const mac = crypto.createHmac("sha256", secret)
.update(t + "." + rawBody).digest("hex");
const fresh = Math.abs(Date.now() / 1000 - t) < 300;
return fresh && crypto.timingSafeEqual(Buffer.from(mac), Buffer.from(v1));
}Zustellung und Wiederholungen
- Zeitlimit
- Antworte innerhalb von 10 Sekunden mit 2xx
- Wiederholungen
- 8 Versuche über 24 Stunden mit jeweils größerem Abstand
- Duplikate
- Ein Ereignis kann doppelt ankommen, nutze also seine id, um Wiederholungen zu überspringen
- Reihenfolge
- Vergleiche created_at, denn die Reihenfolge ist nicht garantiert
- Pausieren
- Nach 3 Tagen mit Fehlern pausieren wir einen Endpunkt und schreiben dir eine E-Mail, und du kannst Verpasstes erneut abspielen
Deine Endpunkte
Webhooks sind unterwegsSobald Webhooks starten, kannst du hier Endpunkte hinzufügen. Sie sind ab Pro enthalten.
Demnächst