D'API
All d'Aktivitéiten, déi d'Websäit iwwer HTTP mécht: eng Demande stellen an d'Bar, déi se muss läschen, e Panel installéieren an offroen, bis de Referee all Kritèren erfëllt huet.
Är Schlëssel
Schlëssel ginn aus Ärem Kont erstallt. Melden Si sech un oder erstellen en neien - nei Konten kréien e Startkredit, deen fir eng richteg Kombinatioun genuch ass.
Anmelden
Anmeldung
Authentifizéierung
Den Schlëssel als Bearer-Token bei all Ufro schécken. Et ass eng Identitéitsinformatioun, déi Äre Saldo ka verschwenden, also behandelt et wéi e Passwuert: nëmmen op der Serversäit, ni an engem Browser, ni an engem Repository. E geläscht Schlëssel gëtt vun dëser Säit ofgeruff an funktionnéiert net méi.
curl https://theorem.chat/api/v1/account/ \
-H "Authorization: Bearer thm_live_xxxxxxxx.xxxxxxxxxxxxxxxx"
Basis-URL: https://theorem.chat/api/v1/. Ufroen a Reaktiounen sinn JSON. D'Versioun ass am Plang, sou datt eng Ännerung als v2 verschéckt gëtt an Äre Code weider funktionnéiert.
POST /api/v1/matches/
Eng Kombinatioun starten. Just d'Zil ass néideg: d'Panel erausloossen an eng Standard-Kombinatioun vun verschiddene Verkeefer ass installéiert, well Modeller déi op iwwerlappende Daten trainéiert sinn, hunn déi selwecht blind Spots an eng Kombinatioun déi mat sech selwer iwwereenstemt ass net Beweis. D'Kombinatioun gëtt soufort an d'Warteschlange gesat an vun engem Server beschafft, sou datt d'Ufro zréckkënnt soubal se akzeptéiert gëtt.
curl -X POST https://theorem.chat/api/v1/matches/ \
-H "Authorization: Bearer $THEOREM_KEY" \
-H "Content-Type: application/json" \
-d '{
"goal": "Every prime p > 3 satisfies p^2 = 1 (mod 24).",
"rigor_preset": "formal",
"seats": [
{"model": "anthropic/claude-opus-4.5"},
{"model": "openai/gpt-5", "stance": "Attack the statement."}
],
"max_rounds": 8,
"usd_ceiling": "2.00",
"public": false
}'
Felder
GET /api/v1/matches/{token}/
D'Gesetz gëtt an zwou Phasen ausgeschafft: d'Gesetz gëtt an der Chamber gestëmmt, an d'Gesetz gëtt an der Chamber an der Chamber gestëmmt, an d'Gesetz gëtt an der Chamber an der Chamber gestëmmt, an d'Gesetz gëtt an der Chamber an der Chamber gestëmmt.
{
"token": "k3m9x…",
"status": "solved",
"round": 5,
"progress": 100,
"usd_spent": "0.734120",
"usd_ceiling": "2.000000",
"criteria": [
{"text": "p^2 - 1 is divisible by 8", "status": "met", "settled_round": 2},
{"text": "p^2 - 1 is divisible by 3", "status": "met", "settled_round": 3}
],
"evidence": [
{"kind": "computation", "code": "…", "output": "…", "verified": true}
],
"verdict": "…"
}
Status: in queue, running, paused, needs_funds, solved, exhausted, stuck, failed. Déi lescht véier sinn Terminaler; paused, needs_funds, exhausted an stuck kënnen weidergefouert ginn.
POST /api/v1/matches/{token}/resume/
Enger gestoppter Partie méi Ronne oder méi Budget ginn. All d' Informatiounen, déi am Panel festgeluecht goufen, bleiwen dobäi - d' Resultater ginn eemol an e Buch geschriwen an ni méi erofgezunn, an opgezielt Sackgassen verhënneren, datt et zréck an eng Approche geet, déi scho verluer gaangen ass.
curl -X POST https://theorem.chat/api/v1/matches/$TOKEN/resume/ \
-H "Authorization: Bearer $THEOREM_KEY" \
-H "Content-Type: application/json" \
-d '{"more_rounds": 4, "more_usd": "2.00"}'
Fehler
All Feeler huet déi selwecht Form. Branch op Code, deen stabil ass; Message ass Prosa a kann ëmgeschriwwe ginn.
{"error": {"code": "insufficient_balance",
"message": "Add credit or connect your own inference key…"}}
D'Zuel vun de Memberen ass 400, an d'Zuel vun de Memberen, déi net an der Partei sinn, ass 401. d'Zuel vun de Memberen, déi an der Partei sinn, ass 402. d'Zuel vun de Memberen, déi net an der Partei sinn, ass 403.
Rate Limits
Gezu pro Schlëssel: 240 Liesungen a 30 Matchen pro Minutt. Loose on purpose — wat eng Matche wierklech limitéiert ass datt et Äre Balance verléiert, an dës sinn do fir eng Retry Loop oder e Poller ze stoppen deen ausläuft. Iwwer d'Limit kritt Dir 429; frot eng laufende Match all puer Sekonnen un an net kontinuéierlech.
D'Bezuelen ass op d'mannst an der Form vun engem Kreditt, deen op d'mannst e puer Mol bezuelt gëtt.
Wéi funktionéiert d'Billing