Startseite

API

Marktdaten

Öffentliche Marktdaten von Seeryx über REST: Märkte, die Live-Runde, Rundenverlauf, Orderbücher, Trades, Volumen, Ereignismärkte und ihre Fragen.

Überblick

Jeder Marktdaten-Endpunkt ist öffentlich: keine Anmeldung, kein Schlüssel. Antworten sind JSON; Preise in Cent, Größen in Anteilen.

Du willstAufruf
Alle Krypto-Märkte mit ihrer Live-Runde und den besten Preisen, in einer AnfrageGET /api/markets/summary
Die Live-Runde eines MarktesGET /api/markets/BTC/5m/current
Eine Runde per Slug, vergangen, live oder demnächstGET /api/rounds/:slug
Das vollständige Orderbuch eines MarktesGET /api/orderbook/:slug?side=up
Trades in EchtzeitWebSocket-Abo der Runde; GET /api/trades/:slug zum Nachholen
Ereignismärkte und ihre FragenGET /api/events, GET /api/event-groups

Märkte und Runden

Die Krypto-Märkte und ihre Runden. Runden werden pro Markt (die Live-Runde, der abgerechnete Verlauf) oder per Slug gelesen.

GET/api/markets

Alle Krypto-Märkte

Öffentlich
Anfrage
curl "https://seeryx.com/api/markets"
Antwort
[{ "asset": "BTC", "tf": "5m", "symbol": "BTCUSDT", "duration": 300, "liquidityRewards": true },
 { "asset": "BTC", "tf": "1h", "symbol": "BTCUSDT", "duration": 3600, "liquidityRewards": false },
 { "asset": "BTC", "tf": "1d", "symbol": "BTCUSDT", "duration": 86400, "liquidityRewards": false }, ...]
  • duration ist die Rundendauer in Sekunden; symbol das Binance-Paar, dessen Kurs die Runden entscheidet. liquidityRewards: Orders im Orderbuch dieses Marktes sammeln Liquiditätspunkte (siehe „Market-Making-Bot“).
GET/api/markets/upcoming

Angekündigte Märkte, die noch nicht gehandelt werden

Öffentlich
Anfrage
curl "https://seeryx.com/api/markets/upcoming"
Antwort
[{ "asset": "BTC", "tf": "1d", "opensAt": 1791993600 }]
  • Ein Markt erscheint ab seiner ersten Runde in GET /api/markets; bis dahin wird er hier mit dem Beginn dieser Runde gelistet. Meist leer.
GET/api/markets/summary

Alle Märkte auf einmal: Live-Runde, beste Preise, letzte Ergebnisse

Öffentlich
Anfrage
curl "https://seeryx.com/api/markets/summary"
Antwort
{ "at": 1791915884702, "markets": [{ "asset": "BTC", "tf": "5m",
  "round": { "slug": "btc-updown-5m-1791915600", "asset": "BTC", "tf": "5m", "start": 1791915600, "end": 1791915900, "open": 83189.47, "close": null, "outcome": null, "status": "live" },
  "up": { "bid": [52, 120], "ask": [54, 80] }, "down": { "bid": [46, 80], "ask": [48, 120] },
  "last": [{ "start": 1791915300, "end": 1791915600, "outcome": "up" }, ...] }, ...] }
  • Das beste Kaufgebot und Verkaufsangebot jeder Seite als [Cent, Anteile], null, wenn diese Seite leer ist, und die letzten 5 abgerechneten Runden, die neueste zuerst. Höchstens einmal pro Sekunde aktualisiert: Frage dies ab statt eines Orderbuchs pro Markt.
GET/api/markets/:asset/:tf/current

Die Live-Runde eines Marktes

Öffentlich
FeldTypBeschreibung
assetPfaderforderlichBTC | ETH | BNBGroß-/Kleinschreibung egal
tfPfaderforderlich5m | 15m | 1h | 1dRundendauer
Anfrage
curl "https://seeryx.com/api/markets/BTC/5m/current"
Antwort
{ "slug": "btc-updown-5m-1791916200", "asset": "BTC", "tf": "5m", "start": 1791916200, "end": 1791916500,
  "open": 83082.005, "close": null, "outcome": null, "status": "live" }
  • Eine Runde nach ihrem Ende bleibt "live" mit outcome null, bis ihr Schlusskurs gespeichert ist, meist innerhalb von Sekunden: Prüfe end und geh nicht davon aus, dass sie noch gehandelt wird.
StatusWann
404Kein solcher Markt
GET/api/markets/:asset/:tf/rounds

Abgerechnete Runden eines Marktes, die neueste zuerst

Öffentlich
FeldTypBeschreibung
assetPfaderforderlichBTC | ETH | BNBGroß-/Kleinschreibung egal
tfPfaderforderlich5m | 15m | 1h | 1dRundendauer
beforeAbfrageoptionalnumberRunden, die davor beginnen, Unix-Sekunden; Standard jetzt
limitAbfrageoptionalnumber1–100, Standard 24
Anfrage
curl "https://seeryx.com/api/markets/BTC/5m/rounds?limit=2"
Antwort
[{ "slug": "btc-updown-5m-1791915600", "asset": "BTC", "tf": "5m", "start": 1791915600, "end": 1791915900, "open": 83189.465, "close": 83133.425, "outcome": "down", "status": "settled" }, ...]
  • Übergib für die nächste Seite den Beginn der letzten Runde als before. Höchstens 7 Tage zurück.
StatusWann
429Zu viele Verlaufsabfragen von deiner IP-Adresse; Retry-After sagt, wann du es erneut versuchen kannst
GET/api/rounds/:slug

Eine Runde, vergangen, live oder demnächst

Öffentlich
FeldTypBeschreibung
slugPfaderforderlichstringEin Runden-Slug wie btc-updown-5m-1791916200 oder der Slug eines Ereignismarkts (ev-...)
Anfrage
curl "https://seeryx.com/api/rounds/btc-updown-5m-1791916500"
Antwort
{ "slug": "btc-updown-5m-1791916500", "asset": "BTC", "tf": "5m", "start": 1791916500, "end": 1791916800, "open": null, "close": null, "outcome": null, "status": "upcoming" }
  • Liefert jede Runde, die gehandelt wird: die Live-Runde und die nächsten zehn eines 5m- oder 15m-Marktes (bei 1h und 1d die nächste). Ein Ereignis-Slug antwortet in der Form einer Runde (tf "event", end = closesAt).
StatusWann
400„Round too far in future“ oder „Invalid round slug“
404Eine vergangene Runde, die nicht gespeichert ist
GET/api/rounds/:slug/holders

Die größten Inhaber von Steigt und Fällt

Öffentlich
FeldTypBeschreibung
slugPfaderforderlichstringEin Runden-Slug wie btc-updown-5m-1791916200 oder der Slug eines Ereignismarkts (ev-...)
Anfrage
curl "https://seeryx.com/api/rounds/btc-updown-5m-1791916200/holders"
Antwort
{ "up": { "count": 2, "holders": [{ "name": "alice", "handle": "alice", "address": "7xKXtg...gAsU", "avatar": null, "shares": 250.5 }] }, "down": { "count": 0, "holders": [] } }
  • count ist die Zahl aller Konten, die diese Seite halten; holders die 50 größten nach Anteilen. Positionen sind öffentlich, wie in Profilen. 5 Sekunden zwischengespeichert.
GET/api/rounds/:slug/activity

Die letzten 100 Trades eines Marktes mit ihren Takern

Öffentlich
FeldTypBeschreibung
slugPfaderforderlichstringEin Runden-Slug wie btc-updown-5m-1791916200 oder der Slug eines Ereignismarkts (ev-...)
Anfrage
curl "https://seeryx.com/api/rounds/btc-updown-5m-1791916200/activity"
Antwort
[{ "id": 812, "side": "up", "action": "buy", "shares": 20, "price": 47, "time": 1791916330063, "trader": { "name": "alice", "handle": "alice", "address": "7xKXtg...gAsU", "avatar": null }, "tx": "5Kq3...", "txStatus": "confirmed" }]
  • Dieselben Trades wie /trades/:slug, die neuesten zuerst, jeder mit dem öffentlichen Profil seines Takers. tx ist die Solana-Transaktion des Trades, sobald es eine gibt, mit txStatus pending, confirmed oder failed.

Orderbuch, Trades und Gebühren

Jeder Endpunkt hier nimmt einen Runden-Slug oder den Slug eines Ereignismarkts.

GET/api/orderbook/:slug

Das Orderbuch einer Seite

Öffentlich
FeldTypBeschreibung
slugPfaderforderlichstringEin Runden-Slug wie btc-updown-5m-1791916200 oder der Slug eines Ereignismarkts (ev-...)
sideAbfrageoptionalup | downStandard up (bei einem Ereignismarkt: up ist JA, down ist NEIN)
Anfrage
curl "https://seeryx.com/api/orderbook/btc-updown-5m-1791916200?side=up"
Antwort
{ "bids": [[17, 5], [16, 5], [15, 5]], "asks": [[26, 5], [27, 5], [28, 5]] }
  • Stufen sind [Preis in Cent, Anteile], die beste zuerst, jede Stufe des Orderbuchs. Die Orderbücher spiegeln einander: Ein Steigt-Kaufgebot zu p ist ein Fällt-Verkaufsangebot zu 100 − p, daher zeigt jedes der beiden Orderbücher jede Order.
GET/api/trades/:slug

Die letzten 100 Trades, die neuesten zuerst

Öffentlich
FeldTypBeschreibung
slugPfaderforderlichstringEin Runden-Slug wie btc-updown-5m-1791916200 oder der Slug eines Ereignismarkts (ev-...)
Anfrage
curl "https://seeryx.com/api/trades/btc-updown-5m-1791916200"
Antwort
[{ "id": 13, "side": "down", "action": "buy", "shares": 10, "price": 53, "time": 1791916330063 }]
  • side, action und price (Cent) sind die der Order des Takers; time ist in Unix-Millisekunden.
GET/api/volume/:slug

Volumen und Anzahl der Trades

Öffentlich
FeldTypBeschreibung
slugPfaderforderlichstringEin Runden-Slug wie btc-updown-5m-1791916200 oder der Slug eines Ereignismarkts (ev-...)
Anfrage
curl "https://seeryx.com/api/volume/btc-updown-5m-1791916200"
Antwort
{ "volume": 55.845724, "trades": 13 }
  • volume ist in USDC.
GET/api/fees

Taker-Gebührensatz, Maker-Rückvergütung und kleinste Order

Öffentlich
Anfrage
curl "https://seeryx.com/api/fees"
Antwort
{ "rateBps": 700, "rebateBps": 2000, "minOrderShares": 5 }
  • Der Taker zahlt Anteile × rateBps/10000 × p × (1 − p), wobei p der Preis in Dollar ist; der Maker erhält rebateBps/10000 davon zurück. Siehe „Gebühren“.
GET/api/notice

Ein Hinweis an alle Trader, falls es einen gibt

Öffentlich
Anfrage
curl "https://seeryx.com/api/notice"
Antwort
{ "notice": null }
  • Andernfalls { "text": "...", "level": "info" | "warning", "at": <ms> }. Solange der Handel angehalten ist, antworten Orders, Aufteilungen und Zusammenlegungen mit 503 trading_halted; Stornierungen funktionieren weiter.
GET/api/stats

24-Stunden-Volumen, Trades und Trader, pro Markt und insgesamt

Öffentlich
Anfrage
curl "https://seeryx.com/api/stats"
Antwort
{ "volume24h": 41.493814, "trades24h": 16, "traders24h": 3,
  "markets": { "btc-5m": { "volume24h": 41.493814, "trades24h": 16, "traders24h": 3 } } }
  • 5 Sekunden zwischengespeichert.

Ereignismärkte

Ja/Nein-Fragen, entschieden über das Optimistic Oracle von UMA. Ein Ereignismarkt wird wie eine lange Runde gehandelt: Sein Slug funktioniert mit Orderbuch, Trades, Volumen, Orders und dem WebSocket. Up ist JA, Down ist NEIN.

GET/api/events

Alle Ereignismärkte

Öffentlich
Anfrage
curl "https://seeryx.com/api/events"
Antwort
[{ "slug": "ev-mlb-ws26-brewers", "groupId": "mlb-world-series-2026", "group": "MLB World Series Champion 2026", "title": "Milwaukee Brewers",
  "question": "Will the Milwaukee Brewers win the 2026 World Series?", "rules": "...", "category": "sports",
  "closesAt": 1792796400, "createdAt": 1791840170963, "status": "open", "outcome": null, "oracle": { "kind": "uma-oov3", ... } }, ...]
  • status: open, closed (Handel beendet, wartet auf UMA) oder resolved; outcome "yes" oder "no", sobald entschieden. closesAt (Unix-Sekunden) ist der Handelsschluss.
GET/api/events/:slug

Ein Ereignismarkt

Öffentlich
FeldTypBeschreibung
slugPfaderforderlichstringev-...
Anfrage
curl "https://seeryx.com/api/events/ev-mlb-ws26-brewers"
Antwort
{ "slug": "ev-mlb-ws26-brewers", "title": "Milwaukee Brewers", "closesAt": 1792796400, "status": "open", "outcome": null, ... }
StatusWann
404Kein Ereignismarkt
GET/api/event-groups

Fragen mit ihren Ausgängen und Preisen

Öffentlich
FeldTypBeschreibung
categoryAbfrageoptionalfinance | politics | sports | esports | weatherOptional
Anfrage
curl "https://seeryx.com/api/event-groups?category=politics"
Antwort
[{ "id": "us-aliens-2026", "category": "politics", "title": "Will the US confirm that aliens exist before 2027?", "status": "open",
  "outcomes": [{ "slug": "ev-us-aliens-dec31", "label": "Before 2027", "closesAt": 1798779540, "status": "open", "outcome": null,
    "yes": { "bid": 1, "ask": 5 }, "no": { "bid": 95, "ask": 99 }, "chance": 3, "change24h": null, "history": [[1791830000, 3]] }] }]
  • Eine Frage fasst einen oder mehrere Ereignismärkte (ihre Ausgänge) zusammen. history ist eine Woche an Punkten [Unix-Sekunden, Cent].
GET/api/event-groups/:id

Eine Frage mit ihren Ausgängen

Öffentlich
FeldTypBeschreibung
idPfaderforderlichstringDie ID der Frage oder der Slug eines ihrer Ausgänge
rangeAbfrageoptional1h | 1d | 1w | 1m | maxPreisverlauf, Standard 1m
Anfrage
curl "https://seeryx.com/api/event-groups/us-aliens-2026?range=1w"
Antwort
{ "id": "us-aliens-2026", "title": "Will the US confirm that aliens exist before 2027?", "outcomes": [...], "seriesGroups": [...] }
StatusWann
404Unbekannte Frage
GET/api/event-groups/:id/holders

Die größten Inhaber jedes Ausgangs

Öffentlich
FeldTypBeschreibung
idPfaderforderlichstringDie ID der Frage
Anfrage
curl "https://seeryx.com/api/event-groups/us-aliens-2026/holders"
Antwort
[{ "slug": "ev-us-aliens-dec31", "label": "Before 2027", "yes": [], "no": [] }]
  • Die zehn größten JA- und die zehn größten NEIN-Positionen jedes Ausgangs.