मुफ़्त

Timora ओपन API

विश्वविद्यालयों की समय-सारिणी अपने बॉट, वेबसाइट या ऐप से जोड़ें। छात्र का निजी डेटा — प्रोफ़ाइल, ग्रेड, डेडलाइन और प्रमाणपत्र — सिर्फ़ उसकी सहमति से, «Timora से साइन इन» के ज़रिए। सिर्फ़ पढ़ने की पहुँच।

टोकन वेबसाइट पर नहीं दिए जाते। API की पहुँच Timora टीम खुद देती है — Telegram पर @timora_support को लिखें: आप कौन हैं, प्रोजेक्ट क्या है, कौन-सा डेटा चाहिए और कोड कहाँ होगा।

क्या मिल सकता है

API कौन-सा डेटा देता है

सार्वजनिक

प्रोजेक्ट टोकन काफ़ी है। वही डेटा जो वेबसाइट पर बिना साइन इन के दिखता है।

  • institutionsविश्वविद्यालय और कॉलेज: नाम, शहर, क्या उपलब्ध है
  • groupsविश्वविद्यालय के अध्ययन ग्रुप
  • scheduleग्रुप की दिनवार कक्षाएँ — एक अनुरोध में 31 दिन तक
  • teachersशिक्षक (SibSUTIS)
  • examsपरीक्षाएँ, क्रेडिट टेस्ट और परामर्श

छात्र की सहमति से

छात्र खुद तय करता है कि किन सेक्शन की पहुँच देनी है, और इसे कभी भी वापस ले सकता है।

  • profileनाम, ग्रुप और विश्वविद्यालय
  • scheduleछात्र के ग्रुप की समय-सारिणी
  • gradesEIOS से ग्रेड
  • deadlinesEIOS कोर्स के बाकी असाइनमेंट और टेस्ट
  • certificatesप्रमाणपत्र अनुरोध और उनकी स्थिति

पहुँच कैसे पाएँ

पहले अनुरोध तक चार कदम

1
@timora_support को लिखें

प्रोजेक्ट के बारे में बताएँ: वह क्या करता है, कौन-सा डेटा चाहिए, कोड कहाँ होगा। अगर GitHub पर है — लिंक भेजें।

2
नियम स्वीकार करें

Timora का उल्लेख, GitHub पर सह-लेखन, सुरक्षा आवश्यकताएँ — इसी पेज पर नीचे।

3
प्रोजेक्ट टोकन पाएँ

tmr_… टोकन व्यक्तिगत रूप से दिया जाता है और एक बार दिखाया जाता है। Timora में सिर्फ़ उसका फ़िंगरप्रिंट रहता है — खो जाए तो नया देंगे।

4
अपने सर्वर से अनुरोध करें

API पता — https://mytimora.ru/api/v1, हेडर — Authorization: Bearer tmr_…।

Timora से साइन इन

निजी डेटा — सिर्फ़ सहमति से

छात्र साइन इन की पुष्टि वहीं करता है जहाँ वह पहले से किसी भी तरीके से Timora में साइन इन है: iOS और Android ऐप में, Telegram बॉट में या Telegram और VK मिनी ऐप में। आपका प्रोजेक्ट न पासवर्ड देखता है, न साइन इन का डेटा।

नियम

प्रोजेक्ट्स के लिए आवश्यकताएँ

टोकन लेकर आप ये शर्तें स्वीकार करते हैं। उल्लंघन होने पर टोकन बिना चेतावनी के रद्द कर दिया जाता है — आपके प्रोजेक्ट तक सभी छात्रों की पहुँच के साथ।

Timora का उल्लेख

  • प्रोजेक्ट के इंटरफ़ेस में — mytimora.ru के लिंक के साथ «Timora द्वारा संचालित»: «ऐप के बारे में» स्क्रीन पर, वेबसाइट के फ़ुटर में या बॉट के विवरण में।
  • README और विवरण में — कि प्रोजेक्ट Timora ओपन API उपयोग करता है।
  • Timora का नाम, लोगो और डिज़ाइन अपना बताकर नहीं दिखाया जा सकता। प्रोजेक्ट Timora का आधिकारिक क्लाइंट जैसा नहीं दिखना चाहिए।

GitHub

  • अगर प्रोजेक्ट का कोड GitHub पर है (सार्वजनिक या निजी रिपॉज़िटरी) — @y0rence को सहयोगी के रूप में जोड़ें: Settings → Collaborators → Add people।
  • README में योगदानकर्ताओं (Contributors) के सेक्शन में @y0rence का उल्लेख करें।

टोकन की सुरक्षा

  • प्रोजेक्ट टोकन एक रहस्य है। वह सिर्फ़ आपके सर्वर पर रहता है: एनवायरनमेंट वेरिएबल या सीक्रेट स्टोर में।
  • कोड में नहीं, git में नहीं, मोबाइल ऐप में नहीं और ब्राउज़र या मिनी ऐप के JavaScript में नहीं।
  • सिर्फ़ सर्टिफ़िकेट जाँच के साथ HTTPS। टोकन लीक हो जाए तो तुरंत @timora_support को लिखें: पुराना रद्द करेंगे, नया देंगे।

छात्रों का डेटा

  • छात्रों से EIOS पासवर्ड और Timora साइन इन कोड न माँगें — सिर्फ़ «Timora से साइन इन»।
  • सिर्फ़ ज़रूरी सेक्शन माँगें: छात्र उन्हें सहमति स्क्रीन पर देखता है।
  • छात्र टोकन एन्क्रिप्टेड रूप में रखें। छात्र साइन आउट करे — POST /me/disconnect कॉल करें और टोकन हटाएँ।
  • डेटा सिर्फ़ उसी सुविधा के लिए इस्तेमाल करें जिसके लिए पहुँच दी गई है। आगे न दें और न बेचें, विज्ञापन और मॉडल ट्रेनिंग के लिए इस्तेमाल न करें, छात्र के कहने पर हटाएँ। रूसी संघीय कानून 152-FZ का पालन करें।
  • छात्र को दिखाएँ कि उसने Timora से साइन इन किया है, और साइन आउट बटन दें।

सीमाएँ और कैश

  • सार्वजनिक डेटा कैश करें: ग्रुप की समय-सारिणी — 10–15 मिनट में एक बार से ज़्यादा नहीं।
  • 429 जवाब पर — Retry-After हेडर में बताए गए सेकंड तक प्रतीक्षा करें।

प्रतिबंधित

  • सीमाओं से बचना: कई टोकन, पते बदलना।
  • बड़ी मात्रा में डेटा निकालना।
  • API की पहुँच दोबारा बेचना।

संदर्भ

जिनके पास पहले से टोकन है

पता — https://mytimora.ru/api/v1। जवाब JSON में, जवाबों में तारीखें — dd.mm.yyyy, पैरामीटर में — yyyy-mm-dd या dd.mm.yyyy। त्रुटियाँ — {"detail": "text"}।

हेडर
हेडरकब
Authorization: Bearer tmr_…हमेशा — प्रोजेक्ट टोकन
X-Timora-User: tmu_…/me/… के लिए — «Timora से साइन इन» से मिला छात्र टोकन
सार्वजनिक डेटा
मेथडक्या देता है
GET /institutionsविश्वविद्यालय: id, name, short, city, features
GET /groups?institution=nstuविश्वविद्यालय के ग्रुप
GET /schedule?institution=nstu&group=ПМИ-31&from=2026-10-05&to=2026-10-11दिनवार कक्षाएँ, एक अनुरोध में 31 दिन तक
GET /teachers?institution=sibsutisशिक्षक (SibSUTIS)
GET /exams?institution=sibsutis&group=ИП-514परीक्षाएँ, क्रेडिट टेस्ट, परामर्श
«Timora से साइन इन»

POST /connect/start बॉडी {"scopes": ["profile", "schedule", "grades"]} के साथ → deviceCode, userCode (ABCD-EFGH जैसा), expiresIn (600 s), interval (3 s) और links: telegram, vk, app — लिंक जिनसे छात्र साइन इन की पुष्टि करेगा।

छात्र को कोड और «Telegram में पुष्टि करें», «Timora ऐप में» बटन दिखाएँ। हर interval सेकंड में {"deviceCode": "tmc_…"} के साथ POST /connect/poll कॉल करें: जवाब — pending, slow_down, denied, expired या userToken (tmu_…) के साथ approved, जो एक बार दिया जाता है।

scopes न हों तो profile और schedule माँगे जाते हैं।

छात्र का डेटा

दोनों हेडर ज़रूरी हैं। पहुँच — सिर्फ़ उन सेक्शन तक जिनकी छात्र ने अनुमति दी, वरना 403।

मेथडसेक्शनक्या देता है
GET /meprofileid (हर प्रोजेक्ट के लिए अलग), नाम, उपनाम, ग्रुप, विश्वविद्यालय, साइन इन के तरीके
GET /me/schedule?from=…&to=…scheduleछात्र के ग्रुप की समय-सारिणी
GET /me/gradesgradesग्रेड (SibSUTIS, अगर छात्र EIOS पासवर्ड Timora में रखता है)
GET /me/deadlinesdeadlinesEIOS कोर्स के बाकी असाइनमेंट और टेस्ट
GET /me/certificatescertificatesप्रमाणपत्र अनुरोध और उनकी स्थिति
POST /me/disconnect—साइन आउट: छात्र के अकाउंट तक प्रोजेक्ट की पहुँच खत्म

/me/… पर 401 — छात्र ने पहुँच वापस ले ली (Timora प्रोफ़ाइल में या बॉट में /apps कमांड से) या प्रोजेक्ट टोकन रद्द हो गया। 409 — छात्र के पास ज़रूरी डेटा नहीं: ग्रुप नहीं चुना या EIOS नहीं जुड़ा।

सीमाएँ
  • सार्वजनिक डेटा के लिए प्रति टोकन प्रति मिनट 300 अनुरोध, हर छात्र के लिए अलग से;
  • ग्रेड — 30, डेडलाइन — 40, प्रमाणपत्र — प्रति छात्र प्रति घंटे 20 अनुरोध: ये विश्वविद्यालय की वेबसाइट पर अनुरोध हैं;
  • connect/start — प्रति प्रोजेक्ट प्रति घंटे 600।
अनुरोध का उदाहरण
curl -s https://mytimora.ru/api/v1/schedule \ -H "Authorization: Bearer $TIMORA_TOKEN" \ --get --data-urlencode "institution=nstu" --data-urlencode "group=ПМИ-31" \ --data-urlencode "from=2026-10-05" --data-urlencode "to=2026-10-11"

चुनें कि वेबसाइट आपके ब्राउज़र में क्या सहेज सकती है। चुनाव कभी भी बदला जा सकता है — हर पेज के नीचे «कुकी सेटिंग्स» लिंक।

ज़रूरीइस विंडो में आपका चुनाव याद रखती हैं। इनके बिना वेबसाइट फिर से पूछेगी, इसलिए इन्हें बंद नहीं किया जा सकता।