API

ہر چیز جو سائٹ کرتا ہے، HTTP پر: ایک دعویٰ بیان کریں اور بار کو صاف کرنا چاہیے، ایک پینل کو بیٹھیں، اور پولیں جب تک کہ ریفرینڈ ہر معیار کو طے کر لے۔ یہی پینل، یہی بلنگ، یہی خرچ کی حدیں - کوئی براؤزر نہیں.

آپ کی چابیاں

کلیدیں آپکے اکاؤنٹ سے بنائی جاتی ہیں لاگ ان کریں، یا ایک بنائیں - نئے اکاؤنٹس کو شروع کریڈٹ ملتا ہے، جو حقیقی match کے لیے کافی ہوتا ہے.

رجسٹر لاگ ان
توثیق

کلید کو ہر درخواست پر ایک بیئر ٹوکن کے طور پر بھیجیں. یہ ایک کریڈٹ ہے جو آپ کے بلنڈ خرچ کر سکتا ہے، اس لیے اس کو پاس ورڈ کی طرح سمجھیں: صرف سرور جانب، کبھی براؤزر میں کبھی، کبھی ایک ریپوٹری میں. ایک چھپائی ہوئی کلید اس صفحے سے منسوخ کی جاتی ہے اور فوراً کام کرنے سے روک دی جاتی ہے.

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

بيس URL: https://theorem.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 — دو سے شے بحث کر نے کے سيٹ ، ہر گيٹ /api/v1/models/ سے ماڈل id اور اختياري پوزيشن
  • 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/

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/ — ان کے طبقے کے ساتھ seatable ماڈل، متن ونڈوز اور پر لاکھوں-ٹوکین شرح. ایک صفحہ کے طور پر، ایک ہی فہرست.
  • 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 شروع دقيقہ. مقصد پر لوز - جو دراصل match کو محدود کرتا هے وہ آپ کا توازن خرچ کرتا هے اور یہ ایک ريٹري لپ يا پو ل رننگ فلٹ آؤٹ کو روکنے کے ليے یہاں هے. حد سے اوپر آپ کو 429 ملتا هے; match کو مسلسل چلنے کے ليے ہر چند سيکنڈ میں پو ل کريں

بلنگ سائٹ کے مطابق ہے: آپ کو ہر ٹوکن پر نشر شدہ ہر ماڈل کی شرح پر ادا کرنا ہوگا، پیش پرداخت کریڈٹ یا آپ کی اپنی کلید سے. بلنگ کیسے کام کرتا ہے