Entwickler-API
Sende deinen fom_live_…-Schlüssel als Bearer-Token: /api/v1/meta bestätigt ihn, /api/v1/screener liefert den nach Rang sortierten Screener als JSON, mit Rate-Limit-Headern in jeder Antwort.
Die Formion Data API bietet programmatischen Zugriff auf dieselben Signale wie in der App — den nach Rang sortierten Screener, kalibrierte Gewinnwahrscheinlichkeiten und mehr — über einen einfachen authentifizierten REST-Endpunkt. Sie richtet sich an Quants, Bot-Entwickler und Trading-Desks, die den Vorteil von Formion in ihre eigenen Systeme integrieren möchten.
Status: auf Anfrage verfügbar. Schlüssel werden manuell vom Formion-Team ausgestellt. Persönliche API-Tokens zur Selbstverwaltung stehen auf der Roadmap — die API-Zugriffskarte unter Profil → Lizenz zeigt Demnächst verfügbar. Kontaktiere [email protected], um einen Schlüssel anzufordern.
Authentifizierung
Abschnitt betitelt „Authentifizierung“Jede Anfrage übermittelt deinen API-Schlüssel als Bearer-Token:
curl "https://app.formion.ai/api/v1/screener?tf=1d&limit=25" \ -H "Authorization: Bearer fom_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"- Schlüssel sehen so aus:
fom_live_…. Behandle sie wie ein Passwort — jeder mit dem Schlüssel kann die API in deinem Namen aufrufen. - Der Schlüssel wird bei der Ausstellung einmal angezeigt und bei uns nur als Hash gespeichert. Wenn du ihn verlierst, widerrufen wir ihn und stellen einen neuen aus — wir können ihn nicht wiederherstellen.
- Für schnelle Tests kannst du den Schlüssel auch als
?api_key=…übergeben, bevorzugt wird jedoch derAuthorization-Header.
Wenn dein Schlüssel fehlt, falsch ist oder widerrufen wurde, erhältst du:
{ "ok": false, "error": "unauthorized", "hint": "Send a valid key as 'Authorization: Bearer fom_live_…'. Request access at [email protected]." }mit HTTP 401.
Anfragelimits
Abschnitt betitelt „Anfragelimits“Jeder Schlüssel hat ein Minutenkontingent entsprechend seiner API-Stufe (wird bei der Ausstellung des Schlüssels zugewiesen):
| Stufe | Anfragen / Minute |
|---|---|
| Free | 60 |
| Pro | 600 |
| Institutional | 6 000 |
Jede Antwort enthält Standard-Header, damit du deine Anfragerate selbst steuern kannst:
X-RateLimit-Limit: 600X-RateLimit-Remaining: 594X-RateLimit-Reset: 1789200000 # unix seconds when the window resetsBei überschrittenem Kontingent wird HTTP 429 mit { "ok": false, "error": "rate_limited", "tier": "…" } und einem Retry-After-Header (Sekunden) zurückgegeben. Warte und versuche es erneut.
Versionierung
Abschnitt betitelt „Versionierung“Alle Endpunkte liegen unter /api/v1/. Wir behandeln die v1-Antwortstruktur als stabilen Vertrag — neue Felder können hinzugefügt werden, bestehende Felder ändern jedoch ohne neue Version (/api/v2/) weder ihre Bedeutung noch werden sie entfernt. Du kannst dich bei der Entwicklung auf v1 verlassen.
Endpunkte
Abschnitt betitelt „Endpunkte“GET /api/v1/meta`
Abschnitt betitelt „GET /api/v1/meta`“Bestätigt, dass dein Schlüssel funktioniert, und listet die damit zugänglichen Endpunkte auf.
curl https://app.formion.ai/api/v1/meta -H "Authorization: Bearer fom_live_…"{ "ok": true, "api_version": "v1", "key": { "tier": "pro", "rate_per_min": 600, "label": "Acme backtest bot" }, "endpoints": [ { "path": "/api/v1/meta", "method": "GET", "desc": "This key's tier + endpoint list." }, { "path": "/api/v1/screener", "method": "GET", "desc": "Ranked multi-market screener with Formion score + P(win). Query: tf, limit, minScore." } ], "docs": "https://docs.formion.ai/api",}GET /api/v1/screener`
Abschnitt betitelt „GET /api/v1/screener`“Der nach Rang sortierte marktübergreifende Screener — dieselbe Engine wie im Screener-Tab der App.
Abfrageparameter
| Parameter | Standardwert | Beschreibung |
|---|---|---|
tf |
1d |
Zeitrahmen: 5m, 15m, 1h, 4h, 1d |
limit |
100 |
Zurückzugebende Zeilen (max. 500) |
minScore |
0 |
Nur Zeilen mit einem Score ≥ diesem Wert zurückgeben |
Beispiel
curl "https://app.formion.ai/api/v1/screener?tf=4h&limit=5&minScore=60" \ -H "Authorization: Bearer fom_live_…"{ "ok": true, "api_version": "v1", "tier": "pro", "timeframe": "4h", "scanned_at": 1789199400000, "count": 5, "data": [ { "symbol": "SOLUSDT", "asset_class": "crypto", "category": "bull-pullback", "direction": "long", "score": 74, "win_probability": 0.58, "rsi_1d": 61, "tags": ["at-bull-fvg", "bos-up-1d", "arsi-turn-up-4h"] } ]}Feldreferenz
| Feld | Bedeutung |
|---|---|
symbol |
Handelspaar an der Börse oder Ticker |
asset_class |
Anlageklasse der Zeile (zum Beispiel crypto, stock, index, commodity) |
category |
Setup-Klasse (bull, bear-rally, sweep-confirmed, …) |
direction |
long, short oder null |
score |
Zusammengesetzter Formion-Score, 0–100 |
win_probability |
Kalibrierte Modellwahrscheinlichkeit, dass die Prognose über den Horizont des Zeitrahmens zutrifft, oder null, wenn das Modell seine Genauigkeitsschwelle nicht erreicht hat |
rsi_1d |
Tages-RSI(14) |
tags |
Struktur- + Momentum-Tags (FVG, BoS/CHoCH, VWAP, Adaptive-RSI-Wendepunkte, …) |
scanned_at |
Unix-Zeit in ms des zugrunde liegenden Scans (Daten können bis zu einige Minuten alt sein) |
Diese beiden Endpunkte (/meta und /screener) bilden derzeit die gesamte v1-API. Wenn du andere Daten benötigst, sag uns welche — weitere Endpunkte sind bislang nicht zugesagt.
Verantwortungsvolle Nutzung
Abschnitt betitelt „Verantwortungsvolle Nutzung“- Caching und Abfragen sinnvoll einsetzen. Der Screener scannt alle paar Minuten erneut; häufigere Abfragen verbrauchen nur dein Abfragekontingent für identische Daten. Lies
scanned_ataus und überspringe die Abfrage, wenn sich der Wert nicht geändert hat. - Ein Schlüssel pro System. Teile einen Schlüssel nicht zwischen Clients — die Messung pro Schlüssel hilft uns (und dir), die Nutzung nachzuvollziehen.
- Schlüssel niemals im Browser oder in einem öffentlichen Repo ausliefern. Falls ein Schlüssel offengelegt wird, schreib uns eine E-Mail, damit wir ihn widerrufen und einen neuen ausstellen können.
Einen Schlüssel erhalten
Abschnitt betitelt „Einen Schlüssel erhalten“Schreib eine E-Mail an [email protected] mit deinem Anwendungsfall und dem erwarteten Volumen. Wir stellen dir einen Schlüssel aus, legen seine Stufe fest und helfen dir, den ersten Aufruf zum Laufen zu bringen.
