API

Се што ќе направи страницата, преку HTTP: наведе тврдење и бара што мора да го исчисти, седнете на панелот и анкетата додека судијата не го реши секој критериум.

Вашите клучеви

Впиши се или направи — новите сметки добиваат заслуга за започнување, што е доволно за вистински match.

Потпиши се Најава
Автентификација

Испрати го клучот како симбол за носач на секоја молба. Тоа е уверливост која може да го потроши вашето балансирање, па затоа третирај го како лозинка: само на серверот, никогаш во прелистувач, никогаш во складиште. Клучот што протече е отстранет од оваа страница и веднаш престанува да работи.

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

База URL: https://teorem.chat/api/v1/. Барањата и одговорите се JSON. Верзијата е на патеката, па затоа бродовите за промена како v2 и вашиот код продолжува да функционира.

POST /api/v1/matches/

Започнете match. Потребен е само целта: оставите ја панелот надвор и стандардната секција се наоѓа од различни продавачи, бидејќи моделите обучени за прекривање на слепи точки за споделување на податоците и панел кој се согласува со себе не се докази. match се поставува во редица веднаш и работи од сервер, така што барањето се враќа штом ќе биде прифатено.

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

Полиња

  • goal — Тврдината, со свои зборови.
  • rigor / rigor_preset — Барот што го посочува судијата ве држи, дословно или по име: стандардно, објавување, формалност, награда, одлука. Непознатата претпоставка е одбиена наместо тивко да се замени за стандардот — да се процени според стандардот што не сте го побарале е полошо од грешката.
  • seats — Две до шест дебатни седишта, секој модел ид од GET / api/v1/models / и опцион став.
  • referee — моделот кој ги контролира критериумите и ги проверува доказите.
  • max_rounds, usd_ceiling — Достигнувањето на таванот ги паузира match наместо да помине покрај него, а паузираните match продолжуваат точно таму каде што застана.
  • public — Објавува завршено match во јавната галерија.
GET /api/v1/matches/{token}/

Целата match: статусот, критериумите за прифаќање и начинот на решавање на секоја од нив, книгата со утврдени резултати, доказите зад секоја одлука и пресудата еднаш. match работи за неколку минути до часови, па затоа анкетата на секои неколку секунди додека е во живо — одговорот ти кажува кога да престанеш.

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

Статуси: во редица, во тек, пауза, потребни_ фондови, решени, исцрпени, заглавени, неуспешни. Последните четири се терминални; паузирани, потребни_ фондови, исцрпени и заглавени можат да се продолжат.

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

Give a stopped match more rounds or more budget. Everything the panel established is kept — results are written to a ledger once and never re-derived, and recorded dead ends stop it walking back into an approach that already failed.

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"}'
Остатокот
  • GET /api/v1/ — Тоа што постои, за клиентот да го најде патот без оваа страница.
  • GET /api/v1/models/ — Модели за седиште со нивниот ред, прозорец и стапки за милион. Истиот список, како страница.
  • GET /api/v1/matches/ — Вашиот matches, прв најнов; филтер по статус, страница со ограничување и офсет.
  • GET /api/v1/account/ — Баланс, трошење на живот и дали сте на предплатени кредит или сопствени заклучоци.
  • GET /api/v1/keys/, DELETE /api/v1/keys/{prefix}/ — Листа и повлекување на клучевите. Првиот клуч може да се избриша само тука, во прелистувач.
Грешка

Секој неуспех има ист облик. Поделбата на кодот, која е стабилна; пораката е проза и може да биде преформулирана.

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

401 за недостасува или отповикано клуч, 402 кога е празна, 404 за знак кој не е твој, 409 за match што веќе работи, 429 кога одиш пребрзо, 400 за нешто што барањето само по себе погреши.

Ограничувања на стапките

Бројено по клуч: 240 чита и 30 match почнува на минута. Забавно — она што всушност го ограничува вашиот баланс е дека го троши вашиот баланс, а овие се тука за да се спречи повторната петка или да се изгасне опкружувачот.

Рачунството е идентично на страницата: плаќате по жетон по објавената стапка по модел, од предплатениот кредит или вашиот клуч. Како работи на сметката