API
Saben-saben kang digawé situs, liwat HTTP: ndharat klaim lan bar kang kudu dicopot, nyetel panel, lan poll nganti referee wis ngrampungake saben kriteria. Panel kang padha, billing sing padha, watesan mbayar sing padha — ora ana browser.
Kuncimu
Kunci dipunciptaaken saking akun sampeyan. Log in, utawi damel siji - akun anyar nampi kredit wiwitan, ingkang cukup kanggé match nyata.
Langganan
Log in
Keterangan
Kirimi kunci minangka token bearer ing saben panjaluk. Iki minangka kredensial kang bisa nglampahi saldomu, mula ditrapaké kaya sandi: mung ing sisih server, ora tau ing pangeling, ora tau ing repositori. Kunci kang bocor bakal ditarik saka kaca iki lan ora bakal kerja langsung.
curl https://theorem.chat/api/v1/account/ \
-H "Authorization: Bearer thm_live_xxxxxxxx.xxxxxxxxxxxxxxxx"
URL dasar: https://theorem.chat/api/v1/. Panggonan lan tanggapan iku JSON. Versi iku ing path, mula owah-owahan kang rusak dikirim minangka v2 lan kodemu tetep kerja.
POST /api/v1/matches/
Ngawakaken match. Mung tujuan ingkang dipunperlukan: ninggalaken panel metu lan garis pitados dipunsetel saking vendor ingkang béda, awit model ingkang dipunlatih ing data ingkang nglapisi kongsi titik buta lan panel ingkang sarujuk kaliyan piyambakipun boten bukti. Match dipunangge lan dipunkerjakaken déning server, dados pitakonan dipunbaliaken saget dipuntampi.
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
}'
Jaringan
GET /api/v1/matches/{token}/
Sedaya match: status, kriteria pangertosan lan cara saben ditetepaké, ledhèr hasil kang ditetepaké, bukti ing mburi saben ruling, lan verdict nalika ana siji. A match runs for minutes to hours, so poll every few seconds while live - the response tells you when to stop.
{
"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: ing gulungan, ngaktifake, diwiwiti, diwiwi
POST /api/v1/matches/{token}/resume/
Nglakoni pariwara kang diwiwiti saka titik awal.
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"}'
Kesalahan
Saben kegagalan duwé wujud kang padha. Branch ing kode, kang stabil; pesen iku prosa lan bisa diwaca manèh.
{"error": {"code": "insufficient_balance",
"message": "Add credit or connect your own inference key…"}}
401 kanggo kunci kang ora ana utawa ditolak, 402 nalika saldo kosong, 404 kanggo token kang ora ana ing tanganmu, 409 kanggo match kang wis diwiwiti, 429 nalika sampeyan wis cepet banget, 400 kanggo apa wae sing ora bener ing panjaluk.
Batas laju
Diitung saben tombol: 240 maca lan 30 match wiwitan saben menit. Loose on purpose — apa sing nyata nglibatake match iku iku nglampahi saldomu, lan iki ana kanggo ngilangi loop nyoba maneh utawa poller mlaku flat out. Luwih saka watesan sampeyan bakal entuk 429; poll match running every few seconds rather than continuously.
Biaya punika dipunwastani biaya mbayar, lan dipunwastani ugi biaya mbayar, ugi dipunwastani biaya mbayar, ugi dipunwastani biaya mbayar.
Carane ngitung