API

Kull ħaġa li s-sit jagħmel, fuq HTTP: jiddikjara pretensjoni u l-bar li għandu ċar, sedil panel, u poll sakemm ir-referee tkun riżolta kull kriterju.Ist panel, l-istess billing, l-istess limiti infiq — l-ebda browser.

Iċ-ċwievet tiegħek

L-imsiemer huma maħluqa mill-kont tiegħek.Login, jew toħloq wieħed — kontijiet ġodda jiksbu kreditu bidu, li huwa biżżejjed għal reali match.

Irreġistra issa Login
Awtentikazzjoni

Ibgħat il-key bħala bearer token fuq kull talba. Hija kredenzjali li tista' tonfoq il-bilanċ tiegħek, għalhekk trattaha bħal password: fuq in-naħa tas-server biss, qatt fil-browser, qatt f'repożitorju. Key li tnixxi hija rrevokata minn din il-paġna u tieqaf taħdem immedjatament.

curl https://theorem.chat/api/v1/account/ \
  -H "Authorization: Bearer thm_live_xxxxxxxx.xxxxxxxxxxxxxxxx"

Bażi URL: https://theorem.chat/api/v1/. Talbiet u tweġibiet huma JSON. Il-verżjoni hija fil-passaġġ, sabiex bidla ksur vapuri bħala v2 u kodiċi tiegħek ikompli jaħdem.

POST /api/v1/matches/

Bidu match. Biss l-għan huwa meħtieġ: leave l-panel barra u lineup default huwa bilqiegħda minn bejjiegħa differenti, minħabba mudelli mħarrġa fuq data jgħaqqad jaqsmu blind spots u panel li jaqbel magħha nnifisha mhuwiex evidenza. Il-match huwa fil-kju immedjatament u maħduma minn server, sabiex it-talba tirritorna hekk kif huwa aċċettat.

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
  }'

Oqsma

  • goal — l-argument, bil-kliem tiegħek stess. Meħtieġ.
  • rigor / rigor_preset — il-bar li r-referee jżommkom għalih, bil-kliem jew bl-isem: standard, pubblikazzjoni, formali, premju, deċiżjoni.Preset mhux magħruf jiġi rrifjutat minflok ma jiġi mibdul bil-kwiet għall-awtomatiku — li tkun iġġudikat kontra standard li ma tlabtx huwa agħar minn żball.
  • seats — minn żewġ sa sitt siġġijiet għad-dibattitu, kull wieħed id-disinn minn GET /api/v1/models/ u l-pożizzjoni fakultattiva.
  • referee — il-mudell li jirregola l-kriterji u jiċċekkja mill-ġdid l-evidenza. Ta' min jonfqu fuqu.
  • max_rounds, usd_ceiling — Meta tilħaq il-limitu massimu, il-match jitwaqqaf minflok ma jintefaq wara, u match li jkun twaqqaf jerġa’ jibda eżatt minn fejn kien waqaf.
  • public — jippubblikaw il-match lest għall-gallerija pubbliku.
GET /api/v1/matches/{token}/

Il-match kollu: l-istatus, il-kriterji ta' aċċettazzjoni u kif kull wieħed kien riżolti, il-book tal-riżultati stabbiliti, l-evidenza wara kull deċiżjoni, u l-verdict ladarba jkun hemm wieħed.A match timxi għal minuti sa sigħat, hekk poll kull ftit sekondi waqt li ħajjin - ir-rispons jgħidlek meta tieqaf.

{
  "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": "…"
}

L-istati: fil-kju, għaddej, sospiż, needs_funds, solved, eżawrit, mwaħħal, falla L-aħħar erba' huma terminali; sospiż, needs_funds, eżawrit u mwaħħal jistgħu jerġgħu jibdew.

POST /api/v1/matches/{token}/resume/

Agħti waqfet match aktar rounds jew aktar baġit. Kollox il-panel stabbilit jinżamm - riżultati huma miktuba għal reġistru darba u qatt mill-ġdid derivati, u dead ends irreġistrati twaqqaf li jimxu lura f'approċċ li diġà fallew.

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"}'
Il-bqija
  • GET /api/v1/ — dak li jeżisti, sabiex klijent jista' jsib it-triq tiegħu mingħajr din il-paġna.
  • GET /api/v1/models/ — mudelli seatable bil-livell tagħhom, tieqa kuntest u per-miljun-token rati. L-istess lista, bħala paġna.
  • GET /api/v1/matches/ — tiegħek matches, l-aktar ġdida ewwel; filtru mill-istatus, paġna bil-limitu u offset.
  • GET /api/v1/account/ — bilanċ, l-infiq tul il-ħajja u jekk inti fuq kreditu prepaid jew tiegħek stess key inferenza.
  • GET /api/v1/keys/, DELETE /api/v1/keys/{prefix}/ — L-ewwel ċavetta tista' tinħadem biss hawnhekk, f'browser, u tista' tintuża biss għal skopijiet ta' verifika.
Żbalji

Kull falliment għandu l-istess forma.Fergħa fuq kodiċi, li huwa stabbli; messaġġ huwa prosa u jistgħu jiġu reworded.

{"error": {"code": "insufficient_balance",
           "message": "Add credit or connect your own inference key…"}}

401 għal ċavetta nieqsa jew revokata, 402 meta l-bilanċ ikun vojt, 404 għal token li mhuwiex tiegħek, 409 għal match li diġà qed jaħdem, 429 meta inti qed tmur malajr wisq, 400 għal xi ħaġa li t-talba nnifisha marret ħażin.

Limiti tar-rata

Miżmuma għal kull ewlenin: 240 qari u 30 match jibda minuta. Loose fuq l-iskop - dak li fil-fatt tillimita match huwa li jqattgħu bilanċ tiegħek, u dawn huma hawn biex twaqqaf linja retry jew poller taħdem flat out. Fuq il-limitu inti tikseb 429; poll a match taħdem kull ftit sekondi minflok kontinwament.

Billing huwa identiku għas-sit: inti tħallas għal kull token fil-pubblikati għal kull mudell rata, minn kreditu prepaid jew tiegħek stess ewlenija. Kif jaħdem il-kont