API

Все сайт робить, над HTTP: викласти заяву і стовпчик він повинен очистити, поставити панель і опит, поки рефері не залагодив всі критерії. Та сама панель, той же законопроект, ті ж обмеження витрат сягнув не буде навігатора.

Ваші ключі

Створіть ключі з вашого облікового запису. Підпишіться або створіть один ♫ нові рахунки, і це буде досить для реального match.

Підписування Вхід
Розпізнавання

Надіслати ключ як ключ носія за всіма запитами. Цей ключ є ідентифікатором, який може витрачати ваш баланс, отже, вважайте його паролем: лише на сервері, ніколи у переглядачі, ніколи у сховищі. Витіканий ключ буде відкликано з цієї сторінки і зупинено негайно.

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

Базова адреса URL: https: // the теорема. 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 — 2- 6 місць для обговорення, кожен з моделей ідентифікатор Get / api/ v1/ models / і необов' язкова позиція.
  • referee — модель, що керує критерійами і повторно перевіряє докази.
  • max_rounds, usd_ceiling — жорстке обмеження. ніж витрачати його на життя, а призупинена 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/

Завершувати match раундів або більше бюджетів. Всі встановлені панелі будуть зберігатися ♫ результатів написано до облікової книги один раз і ніколи не перевизначені, і записані мертві кінці зупиняють перехід назад у підход, який вже зазнав невдачі.

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}/ — list і reoke keys. Перший ключ можна вставити лише у переглядач.
Помилки

Кожна помилка має однакову форму. Гілка на коді, яка є стабільною, повідомлення проз, його можна перефразувати.

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

401 для відсутній або анульований ключ, 402, якщо баланс порожній, 404 для ключа, який не є вашим, 409 для match, що вже виконується, 429, коли ви їдете занадто швидко, 400 для чого-небудь, що було зроблено неправильно.

Обмеження швидкості

Перелічено по клавіші: 240 читає і 30 match починається за хвилину. Розслаблення з наміру } Фактично обмеження match - це те, що він витрачає ваш баланс, і ці тут для зупинки циклу повторення або виводника, що працює рівно. За межею 429; опитування виконується match разів за декілька секунд, а не безперервно.

Балінг ідентичний до сайта: ви сплачуєте за ключ за опублікованою комодельною ставкою, за попередньо оплаченим або вашим власним ключем. Як працює рахунок