Files
OmniRoute/docs/i18n/ta/docs/reference/API_REFERENCE.md
Diego Rodrigues de Sa e Souza b637350680 fix(docs): re-sync the 65 documentation mirror sets; section-level docs pipeline; drift gate blocking (#13940)
1,104 mirrors rewritten over five passes of run-translation on the 22-source core set: the 14 sources edited since their translation, the 322 mirrors that were still English copies, and the frontmatter the old extractor leaked into the newer locales' bodies. The pipeline now caches per-`## `-section hashes and retranslates only changed sections, never reuses a section that is still English, rebuilds English-copy / leaked mirrors even when the source is unchanged, merges the state on save (parallel runs), and the drift gate (scoped to the core set) is blocking. Final audit: 0 stale, 0 English copies, 0 leaked frontmatter across 1,430 core mirrors.

⚠️ base-red inherited: #12732
2026-09-17 02:55:31 -03:00

211 KiB
Raw Blame History

API Reference (தமிழ்)

🌐 Languages: 🇺🇸 English · 🇪🇹 am · 🇸🇦 ar · 🇦🇿 az · 🇧🇬 bg · 🇧🇩 bn · 🇨🇿 cs · 🇩🇰 da · 🇩🇪 de · 🇬🇷 el · 🇪🇸 es · 🇪🇪 et · 🇮🇷 fa · 🇫🇮 fi · 🇫🇷 fr · 🇮🇪 ga · 🇮🇳 gu · 🇳🇬 ha · 🇮🇱 he · 🇮🇳 hi · 🇭🇷 hr · 🇭🇺 hu · 🇦🇲 hy · 🇮🇩 id · 🇳🇬 ig · 🇮🇹 it · 🇯🇵 ja · 🇬🇪 ka · 🇰🇭 km · 🇮🇳 kn · 🇰🇷 ko · 🇱🇹 lt · 🇱🇻 lv · 🇮🇳 ml · 🇮🇳 mr · 🇲🇾 ms · 🇲🇹 mt · 🇲🇲 my · 🇳🇵 ne · 🇳🇱 nl · 🇳🇴 no · 🇮🇳 or · 🇮🇳 pa · 🇵🇭 phi · 🇵🇱 pl · 🇵🇹 pt · 🇧🇷 pt-BR · 🇷🇴 ro · 🇷🇺 ru · 🇱🇰 si · 🇸🇰 sk · 🇸🇮 sl · 🇷🇸 sr · 🇸🇪 sv · 🇰🇪 sw · 🇮🇳 te · 🇹🇭 th · 🇹🇷 tr · 🇺🇦 uk-UA · 🇵🇰 ur · 🇺🇿 uz · 🇻🇳 vi · 🇳🇬 yo · 🇨🇳 zh-CN · 🇹🇼 zh-TW


🌐 மொழிகள்: 🇺🇸 English | 🇪🇹 አማርኛ | 🇸🇦 العربية | 🇦🇿 Azərbaycan dili | 🇧🇬 Български | 🇧🇩 বাংলা | 🇨🇿 Čeština | 🇩🇰 Dansk | 🇩🇪 Deutsch | 🇬🇷 Ελληνικά | 🇪🇸 Español | 🇪🇪 Eesti | 🇮🇷 فارسی | 🇫🇮 Suomi | 🇫🇷 Français | 🇮🇪 Gaeilge | 🇮🇳 ગુજરાતી | 🇳🇬 Hausa | 🇮🇱 עברית | 🇮🇳 हिन्दी | 🇭🇷 Hrvatski | 🇭🇺 Magyar | 🇦🇲 Հայերեն | 🇮🇩 Bahasa Indonesia | 🇳🇬 Igbo | 🇮🇹 Italiano | 🇯🇵 日本語 | 🇬🇪 ქართული | 🇰🇭 ខ្មែរ | 🇮🇳 ಕನ್ನಡ | 🇰🇷 한국어 | 🇱🇹 Lietuvių | 🇱🇻 Latviešu | 🇮🇳 മലയാളം | 🇮🇳 मराठी | 🇲🇾 Bahasa Melayu | 🇲🇹 Malti | 🇲🇲 မြန်မာ | 🇳🇵 नेपाली | 🇳🇱 Nederlands | 🇳🇴 Norsk | 🇮🇳 ଓଡ଼ିଆ | 🇮🇳 ਪੰਜਾਬੀ | 🇵🇭 Filipino | 🇵🇱 Polski | 🇵🇹 Português (Portugal) | 🇧🇷 Português (Brasil) | 🇷🇴 Română | 🇷🇺 Русский | 🇱🇰 සිංහල | 🇸🇰 Slovenčina | 🇸🇮 Slovenščina | 🇷🇸 Српски | 🇸🇪 Svenska | 🇰🇪 Kiswahili | 🇮🇳 தமிழ் | 🇮🇳 తెలుగు | 🇹🇭 ไทย | 🇹🇷 Türkçe | 🇺🇦 Українська | 🇵🇰 اردو | 🇺🇿 Oʻzbekcha | 🇻🇳 Tiếng Việt | 🇳🇬 Yorùbá | 🇨🇳 中文 (简体) | 🇹🇼 中文 (繁體)

OmniRoute API-க்கான முதன்மைக் குறிப்பேடு. இது பொது /v1 இடைமுகத்தையும் அதிகம் பயன்படுத்தப்படும் மேலாண்மை முனைப்புள்ளிகளையும் உள்ளடக்குகிறது; இயந்திரம் வாசிக்கக்கூடிய docs/openapi.yaml மற்றும் src/app/api/-இன் கீழுள்ள வழித்தட மரம் ஆகியவையே முழுமையான ஆதாரங்கள்.


உள்ளடக்க அட்டவணை


அரட்டை நிறைவுகள்

POST /v1/chat/completions
Authorization: Bearer your-api-key
Content-Type: application/json

{
  "model": "cc/claude-opus-4-6",
  "messages": [
    {"role": "user", "content": "இதற்கான ஒரு செயல்பாட்டை எழுதவும்..."}
  ],
  "stream": true
}

தனிப்பயன் தலைப்புகள்

தலைப்பு திசை விளக்கம்
X-OmniRoute-No-Cache கோரிக்கை தற்காலிகச் சேமிப்பைத் தவிர்க்க true என அமைக்கவும்
x-omniroute-no-memory கோரிக்கை இந்தக் கோரிக்கைக்கான நினைவகம் + திறன்கள் உட்செலுத்தலைத் தவிர்க்க true என அமைக்கவும் (no-cache-ஐப் பிரதிபலிக்கிறது; ஒவ்வொரு அழைப்புக்குமான டோக்கன்/செலவு கூடுதலைத் தவிர்க்கிறது)
X-OmniRoute-Progress கோரிக்கை முன்னேற்ற நிகழ்வுகளுக்கு true என அமைக்கவும்
X-Session-Id கோரிக்கை வெளிப்புற அமர்வு இணைப்புக்கான நிலையான அமர்வு விசை
x_session_id கோரிக்கை அடிக்கோடு மாறுபாடும் ஏற்கப்படுகிறது (நேரடி HTTP)
X-OmniRoute-Session-Id கோரிக்கை அழைப்பாளர் வழங்கிய அமர்வு/உரையாடல் குறிச்சொல் (நினைவகத்திற்கும் அளிக்கப்படுகிறது). இது இருக்கும்போது, ஒவ்வொரு அமர்வுக்குமான செலவு ஒதுக்கீட்டிற்காக call_logs.session_tag-இல் அப்படியே நிலைநிறுத்தப்படும் (#8249) — இல்லாதபோது ஒருபோதும் தானாக உருவாக்கப்படாது
Idempotency-Key கோரிக்கை நகல் நீக்க விசை (5s காலச்சாளரம்)
X-Request-Id கோரிக்கை மாற்று நகல் நீக்க விசை
X-OmniRoute-Cache பதில் HIT அல்லது MISS (ஸ்ட்ரீமிங் அல்லாதது)
X-OmniRoute-Idempotent பதில் நகல் நீக்கப்பட்டிருந்தால் true
X-OmniRoute-Progress பதில் முன்னேற்றக் கண்காணிப்பு இயக்கத்தில் இருந்தால் enabled
X-OmniRoute-Session-Id பதில் OmniRoute பயன்படுத்திய நடைமுறை அமர்வு ID
X-OmniRoute-Request-Id பதில் கோரிக்கைத் தொடர்புறுத்தல் ID (தெரிந்திருக்கும்போது)
X-OmniRoute-Version பதில் OmniRoute உருவாக்கப் பதிப்பு (எப்போதும் இருக்கும்)
X-OmniRoute-Cost-Saved பதில் HIT நிகழ்வில் தற்காலிகச் சேமிப்பால் தவிர்க்கப்பட்ட USD செலவு (தற்காலிகச் சேமிப்பு வெற்றிகளுக்கு மட்டும்)
X-OmniRoute-Decision பதில் வழித்தடத் தடம்: strategy=<name>; provider=<alias>; latency_ms=<n> (<name> என்பது காம்போ உத்தி அல்லது காம்போ அல்லாத கோரிக்கைக்கு single) — நிறைவு பதில்களில் எப்போதும் இருக்கும்

Nginx குறிப்பு: அடிக்கோடு தலைப்புகளை (எடுத்துக்காட்டாக x_session_id) நீங்கள் சார்ந்திருந்தால், underscores_in_headers on; என்பதை இயக்கவும்.

செலவு டெலிமெட்ரி தலைப்புகள்: ஸ்ட்ரீமிங் அல்லாத வெற்றிகரமான பதில்களும் X-OmniRoute-* செலவு-டெலிமெட்ரி தொகுப்பைக் கொண்டிருக்கும் — X-OmniRoute-Response-Cost (USD, நிலையான 10 தசம இடங்கள்; இலவசமான/விலை நிர்ணயிக்கப்படாதவற்றுக்கு 0.0000000000), X-OmniRoute-Tokens-In / X-OmniRoute-Tokens-Out, X-OmniRoute-Model, X-OmniRoute-Provider, X-OmniRoute-Latency-Ms, X-OmniRoute-Cache-Hit, மற்றும் X-OmniRoute-Fallback-Attempts (> 0 ஆக இருக்கும்போது மட்டும்), அத்துடன் X-OmniRoute-Request-Id மற்றும் X-OmniRoute-Version. இவை அரட்டை நிறைவுகள், /v1/responses, /v1/messages, மற்றும் மீடியா முனைப்புள்ளிகள்/v1/embeddings, /v1/images/generations, /v1/audio/speech, /v1/audio/transcriptions, /v1/rerank, /v1/videos/generations, /v1/music/generations, மற்றும் /v1/moderations (செலவு எப்போதும் 0) — ஆகியவற்றால் வெளியிடப்படுகின்றன. விலைத் தகவல் கிடைக்கும்போது, மீடியா செலவு அதன் வகைக்கு ஏற்ப (ஒவ்வொரு படத்திற்கும், ஒவ்வொரு வினாடிக்கும், ஒவ்வொரு எழுத்திற்கும், ஒவ்வொரு தேடல் அலகிற்கும்) கணக்கிடப்படும்; இல்லையெனில் 0 (fail-open).

கேச்-ஹிட் செலவு சொற்பொருள்: semantic-cache HIT (X-OmniRoute-Cache-Hit: true) நிகழும்போது upstream அழைப்பு எதுவும் செய்யப்படாது; எனவே X-OmniRoute-Response-Cost என்பது 0.0000000000 (அந்த ஹிட்டை வழங்குவதற்கான கூடுதல் செலவு). அசல்/ஏற்பட்டிருக்கக்கூடிய செலவு X-OmniRoute-Cost-Saved என்பதில் தனியாகத் தெரிவிக்கப்படுகிறது. பில்லிங் நுகர்வோர் X-OmniRoute-Response-Cost மதிப்புகளைக் கூட்ட வேண்டும் (ஹிட்களுக்கு செலவு இல்லை); கேச் பகுப்பாய்வுகள் X-OmniRoute-Cost-Saved மதிப்புகளைத் திரட்டலாம்.

பிரத்யேக நிர்வகிக்கப்பட்ட அமர்வு குத்தகைகள்

பிரத்யேக நிர்வகிக்கப்பட்ட அமர்வுக் குத்தகை என்பது விருப்பத்தேர்வு அடிப்படையிலான, கிளையன்ட்டைச் சாராத ஒரு வழிப்படுத்தல் ஒப்பந்தமாகும்: செயலில் உள்ள ஓர் உரிமையாளர் தகுதியுள்ள ஒரு OmniRoute இணைப்பை வைத்திருப்பார். இது ஒரு மாதிரியைக் குத்தகைக்கு எடுப்பதில்லை, OAuth-ஐக் கோருவதில்லை, ஒரு குறிப்பிட்ட கிளையன்ட்டை அடையாளப்படுத்துவதில்லை அல்லது ஒரு குறிப்பிட்ட வழங்குநரைக் கோருவதில்லை.

அங்கீகரிக்கும் API விசைக்கு lease:exclusive வரம்பும், வெளிப்படையாகக் குறிப்பிடப்பட்ட காலியாக இல்லாத allowedConnections பட்டியலும் இருக்க வேண்டும். விசை உருவாக்கம் மற்றும் பகுதியளவுப் புதுப்பிப்புகளில் இவ்விரு புலங்களும் ஒன்றாக இருப்பதைத் தரவுத்தள மாற்ற எல்லை உறுதிசெய்கிறது.

POST /api/v1/session-leases
Authorization: Bearer <managed-api-key>
Content-Type: application/json
X-OmniRoute-Lease-Owner: vlo_<43-base64url-characters>

{"action":"acquire","model":"glm/glm-4.6"}

வெற்றிகரமான பெறுதல், புதுப்பித்தல் மற்றும் விடுவித்தல் பதில்கள் நேர முத்திரைகள், state மற்றும் துல்லியமான நேர்மறை generation ஆகியவற்றை வெளிப்படுத்தும்; ஆனால் தேர்ந்தெடுக்கப்பட்ட இணைப்பையோ நற்சான்றுகளையோ ஒருபோதும் வெளிப்படுத்தாது. புதுப்பித்தலும் விடுவித்தலும் JSON உடலில் generation-ஐ வழங்குகின்றன:

{ "action": "renew", "generation": 1 }
{ "action": "release", "generation": 1, "reason": "OWNER_EXIT" }

செயலில் உள்ள குத்தகை உரிமையாளர் தனது தற்போதைய பிணைப்புக்கான தனியுரிமையைப் பாதுகாக்கும் காட்சி மெட்டாடேட்டாவை வெளிப்படையாகக் கோரலாம்:

{ "action": "status", "generation": 1 }
{
  "state": "ACTIVE",
  "generation": 1,
  "acquiredAt": "2026-08-28T12:00:00.000Z",
  "renewedAt": "2026-08-28T12:00:30.000Z",
  "expiresAt": "2026-08-28T12:02:30.000Z",
  "connection": {
    "displayName": "Primary Codex",
    "provider": "codex"
  }
}

இந்த விருப்பத்தேர்வு நிலைச் செயல், ஒளிபுகா உரிமையாளர், அங்கீகரிக்கப்பட்ட நிர்வகிக்கப்பட்ட API விசை மற்றும் துல்லியமான செயலில் உள்ள generation ஆகியவற்றால் ஒரே தரவுத்தளப் பரிவர்த்தனையில் கட்டுப்படுத்தப்படுகிறது. displayName என்பது இடைவெளிகள் நீக்கப்பட்ட, கட்டமைக்கப்பட்ட இணைப்புப் பெயர் மட்டுமே; பாதுகாப்பான கட்டமைக்கப்பட்ட பெயர் இல்லாதபோது அது null ஆகும். OmniRoute ஒருபோதும் அதற்குப் பதிலாக மின்னஞ்சலையோ உருவாக்கப்பட்ட கணக்கு அடையாளத்தையோ பயன்படுத்தாது. வழங்குநர் மதிப்பு என்பது உணர்திறனற்ற காட்சி லேபிள் மட்டுமே; அது ஒருபோதும் உருவாக்கப்பட்ட இணக்கமான-வழங்குநர் அடையாளங்காட்டி அல்ல. நற்சான்றுகள், டோக்கன்கள், குக்கீகள், மூல இணைப்பு அல்லது API விசை id-கள், உரிமையாளர் hash-கள், கட்டுப்பாட்டு ரகசியங்கள் மற்றும் உள் வழிப்படுத்தல் தரவு ஆகியவை விலக்கப்படுகின்றன.

தவறான விசை, தவறான உரிமையாளர், காலாவதியான generation, காணாமற்போன, காலாவதியான, விடுவிக்கப்பட்ட மற்றும் செல்லாததாக்கப்பட்ட தேடல்கள் அனைத்தும் இணைப்பு மெட்டாடேட்டா இல்லாமல் அதே 409 LEASE_FENCE_STALE பிழையைத் திருப்பும். திறனுக்காகக் காத்திருக்கும் பதிலைப் பெற்ற கிளையன்ட்டுக்கு ஆய்வு செய்ய செயலில் உள்ள பிணைப்பு இல்லை. வழிப்படுத்தல் செயலில் உள்ள குத்தகையை மாற்றும்போது, அதே generation செல்லுபடியாக இருக்கும்; மேலும் நிலை, பழைய பிணைப்பை ஒருபோதும் திருப்பாமல், புதிய பிணைப்பை அணுவியல் முறையில் திருப்பும். பெறுதல், புதுப்பித்தல், விடுவித்தல் மற்றும் காத்திருப்புப் பதில்கள் அவற்றின் முந்தைய வடிவங்களைத் தக்கவைத்துக்கொள்வதால், ஏற்கனவே உள்ள கிளையன்ட்கள் மாறாமல் இருக்கும்.

இந்தச் சேவையக ஒப்பந்தம் நிலையான OpenAI Codex /status-ஐ மாற்றாது. நிலையான Codex தற்போது அதன் மாதிரி வழங்குநர் மற்றும் உள்ளமைந்த அங்கீகார/கணக்கு நிலையை அறிக்கையிடுகிறது; ஆனால் தன்னிச்சையான தனிப்பயன் வழங்குநர் கணக்கு மெட்டாடேட்டாவைக் காட்சிப்படுத்துவதில்லை. பிற்கால கிளையன்ட் ஒருங்கிணைப்பு இந்தச் செயலை அழைத்து, connection.displayName-ஐ எவ்வாறு காட்சிப்படுத்துவது என்பதைத் தீர்மானிக்க வேண்டும்.

பின்னர், நிர்வகிக்கப்படும் ஒவ்வொரு inference கோரிக்கையும் இரண்டு கட்டுப்பாட்டுத் தலைப்புகளையும் வழங்கும்:

X-OmniRoute-Lease-Owner: vlo_<43-base64url-characters>
X-OmniRoute-Lease-Generation: 1

ஒவ்வொரு ஆதரிக்கப்படும் upstream முயற்சிக்கும் உடனடியாக முன்பு, துல்லியமான உரிமையாளர், generation, செயலில் உள்ள இணைப்பு மற்றும் அங்கீகரிக்கப்பட்ட API விசை ஆகியவை கட்டுப்படுத்தப்படுகின்றன. அதே இணைப்பை அந்த விசை அனுமதித்தாலும், மற்றொரு விசையுடன் உரிமையாளர் மற்றும் generation-ஐ மீண்டும் பயன்படுத்துவது தோல்வியடையும். மூல உரிமையாளர்கள் நிலையாகச் சேமிக்கப்படுவதில்லை, பதிவுசெய்யப்படுவதில்லை, கோரிக்கை snapshot-இல் தக்கவைக்கப்படுவதில்லை அல்லது upstream-க்கு அனுப்பப்படுவதில்லை.

தற்காலிக வளப் போட்டி, Retry-After உடன் HTTP 429 மற்றும் பின்வருவதைத் திருப்பும்:

{
  "state": "WAITING_FOR_CAPACITY",
  "error": { "type": "lease_error", "code": "LEASE_CAPACITY_UNAVAILABLE" },
  "reason": "NO_FREE_ELIGIBLE_CONNECTION",
  "retryAfter": 30
}

இந்தப் பதில், வழக்கமான தகுதியுள்ள தொகுப்பு காலியாக இல்லை என்பதையும், இலவசமாக இருந்திருக்கக்கூடிய ஒவ்வொரு இணைப்பும் வேறொரு செயலில் உள்ள குத்தகையால் பிடிக்கப்பட்டிருந்தது என்பதையும் மட்டுமே குறிக்கிறது. ஆதரிக்கப்படாத மாதிரிகள்/வழங்குநர்கள், கொள்கைப் பொருத்தமின்மை, cooldown, quota, health மற்றும் பிற வழக்கமான தகுதித் தோல்விகள் அவற்றின் தற்போதைய OmniRoute பதில்களைத் தக்கவைத்துக்கொள்ளும்.

x-omniroute-compression

ஒவ்வொரு கோரிக்கைக்குமான compression திட்ட override. இதுவே மிக உயர்ந்த முன்னுரிமை கொண்டது — routing-combo override, செயலில் உள்ள profile, auto-trigger மற்றும் panel Default ஆகிய அனைத்தையும் மீறும். மதிப்புகள்:

மதிப்பு விளைவு
off இந்தக் கோரிக்கைக்கு compression இல்லை.
default panel-இலிருந்து பெறப்பட்ட Default profile (செயலில் உள்ள profile-ஐப் புறக்கணிக்கும்).
engine:<id> இயக்கப்பட்டிருக்கும்போது ஒற்றை engine, எ.கா. engine:rtk.
<combo> பெயரிடப்பட்ட combo; முதலில் பெயரால் (எழுத்தின்大小 வேறுபாடின்றி), பின்னர் id-ஆல் பொருத்தப்படும்.

குறிப்புகள்:

  • அறியப்படாத மதிப்புகள் புறக்கணிக்கப்படும் (கோரிக்கை ஒருபோதும் நிராகரிக்கப்படாது); தீர்மானம் வழக்கமான இயக்குநர் முன்னுரிமை வரிசைக்குச் செல்லும்.
  • பல combo-கள் ஒரே பெயரைப் பகிர்ந்தால், உறுதியான பொருத்தத்திற்கு combo id-ஐ வழங்கவும்.
  • off அல்லது default என்ற பெயரைக் கொண்ட combo-வைப் பெயரால் தேர்ந்தெடுக்க முடியாது (அந்த keyword-கள் முதலில் பொருள்கொள்ளப்படும்); அத்தகைய combo-வை அதன் id மூலம் குறிப்பிடவும்.
  • முதன்மை compression switch ஒரு கடுமையான gate ஆகும்: compression உலகளவில் முடக்கப்பட்டிருக்கும்போது, இந்தத் தலைப்பு அதை இயக்க முடியாது.

பயன்படுத்தப்பட்ட திட்டம் பதிலின் தலைப்பில் மீண்டும் வழங்கப்படும்:

X-OmniRoute-Compression: <mode>; source=<source>

இங்கே <source> என்பது request-header, routing-override, active-profile, auto-trigger, default அல்லது off ஆகியவற்றில் ஒன்றாகும்.


உட்பொதிவுகள்

POST /v1/embeddings
Authorization: Bearer your-api-key
Content-Type: application/json

{
  "model": "nebius/Qwen/Qwen3-Embedding-8B",
  "input": "The food was delicious"
}

கிடைக்கக்கூடிய வழங்குநர்கள்: Nebius, OpenAI, Mistral, Together AI, Fireworks, NVIDIA, OpenRouter, Jina AI.

பட்டியல் அடையாளங்கள் provider/model வடிவில் இருக்கும் (எடுத்துக்காட்டு: jina-ai/jina-embeddings-v5-omni-small). பதிவகத்தில் தோன்றும் வழங்குநர் முன்னொட்டு இல்லாத Jina மாதிரி அடையாளங்களும் (எடுத்துக்காட்டாக jina-embeddings-v5-text-small, jina-reranker-v3.5) தீர்மானிக்கப்படும். Jina embed/rerank/classify/segment முதலில் டாஷ்போர்டின் jina-ai நற்சான்றுகளைப் பயன்படுத்தும்; டாஷ்போர்டு விசை எதுவும் இல்லாதபோது மட்டுமே JINA_AI_API_KEY மாற்றுவழியாகப் பயன்படுத்தப்படும். jina-reader அட்டை Reader / r.jina.ai-க்காக மட்டுமே (POST /v1/web/fetch); அது உட்பொதிவுகளையோ மறுதரவரிசைப்படுத்தலையோ ஒருபோதும் வழங்காது.

பல்முறைமை ஆதரவை அறிவிக்கும் பதிவக மாதிரிகள், அதிகபட்சம் 32 வழங்குநர்-சார்பற்ற கட்டமைக்கப்பட்ட உருப்படிகளையும் ஏற்கின்றன. ஊடக உருப்படி வகைகள் text, image, audio, video, மற்றும் document ஆகும். அவற்றின் ஊடக source என்பது {"type":"url","url":"https://..."} அல்லது {"type":"base64","data":"...","media_type":"..."} ஆகியவற்றில் ஒன்றாகும்.

Jina v5 Omni (jina-ai/jina-embeddings-v5-omni-small, jina-ai/jina-embeddings-v5-omni-nano, மற்றும் குடும்ப மாற்றுப்பெயர் jina-ai/jina-embeddings-v5-omni → omni-small) Jina-வின் இயல்புநிலை EmbeddingsV5Request ஆவணங்களையும் ஏற்று, அவற்றை https://api.jina.ai/v1/embeddings-க்கு மாற்றமின்றி அனுப்புகிறது:

{
  "model": "jina-ai/jina-embeddings-v5-omni-small",
  "task": "retrieval.query",
  "normalized": true,
  "input": [
    { "text": "a red bicycle" },
    { "image": "https://example.com/bike.png" },
    {
      "content": [{ "text": "caption" }, { "image": "data:image/png;base64,..." }]
    }
  ]
}

இயல்புநிலை { image | audio | video | pdf } மதிப்புகள் பொது HTTPS URL, data: URI, அல்லது மூல base64 ஆக இருக்கலாம். OmniRoute அந்தப் பொருட்களைச் சரமாக மாற்றுவதோ இயல்புநிலைப் பட URL-களைப் பெறுவதோ இல்லை — பொது ஊடகத்தை Jina தானே பெறுகிறது. கூடுதல் Jina புலங்கள் (task, normalized, truncate, embedding_type) அப்படியே அனுப்பப்படுகின்றன. உரை-மட்டும் Jina SKU-கள் இன்னும் உரையல்லாத ஆவணங்களை நிராகரிக்கின்றன.

பாதுகாப்பு மற்றும் பரிமாற்ற வரம்புகள்:

  • தொலைநிலை ஊடக URL-கள் பொது HTTPS ஆக இருக்க வேண்டும். நியமப்படுத்தப்பட்ட {type,source:url} உருப்படிகள் சேவையகப் பக்கத்தில் பெறப்பட்டு (வழிமாற்ற மறுசரிபார்ப்பு, காலக்கெடு, அளவு வரம்புகள், பொது DNS, இணைப்புப் பிணைத்தல்), வழங்குநர் அழைப்புக்கு முன் உள்ளடக்கப்படுகின்றன. Jina-வின் இயல்புநிலை {image:"https://..."} உருப்படிகள் அதே பொது-HTTPS சரிபார்ப்புக்குப் பிறகு அப்படியே அனுப்பப்படுகின்றன; Jina அந்த URL-ஐப் பெறுகிறது.
  • இன்லைன் base64 ஊடகம், ஒவ்வொரு உருப்படிக்கும் குறியாக்கம் நீக்கப்பட்ட நிலையில் 8 MiB ஆகவும், கோரிக்கை முழுவதும் குறியாக்கம் நீக்கப்பட்ட நிலையில் 16 MiB ஆகவும் வரம்பிடப்பட்டுள்ளது.

வழங்குநர் மாற்றம் (நியமப்படுத்தப்பட்ட உருப்படிகள் ஒருபோதும் மாற்றமின்றி அனுப்பப்படுவதில்லை):

  • Jina பல்முறைமை மாதிரிகள்: ஒவ்வொரு மேல்நிலை உருப்படியும் இன்லைன் ஊடகத்திற்கு data URI-களைப் பயன்படுத்தி, முறைமை-விசையிடப்பட்ட ஒரு பொருளாக (text / image / audio / video / pdf) மாறும்; ஒவ்வொரு மேல்நிலை உருப்படிக்கும் ஒரு வெக்டர்.
  • Gemini Embedding 2 குடும்பம்: ஒரு மேல்நிலை வரிசை, content.parts (text அல்லது inline_data) உடன் கூடிய ஒற்றை இயல்புநிலை models/{model}:embedContent கோரிக்கையாக மாறும்.
  • வெளிப்படையான முறைமை மெட்டாடேட்டா இல்லாத அறியப்படாத/இயக்கநிலை மாதிரிகள், கட்டமைக்கப்பட்ட உள்ளீட்டை HTTP 400 உடன் நிராகரிக்கும்.
{
  "model": "jina-ai/jina-embeddings-v5-omni-small",
  "input": [
    { "type": "text", "text": "A red bicycle" },
    {
      "type": "image",
      "source": { "type": "url", "url": "https://example.com/bicycle.png" }
    }
  ],
  "dimensions": 512,
  "encoding_format": "float"
}

ஆதரிக்கப்படாத மாதிரி/முறைமை சேர்க்கைகள், உருப்படியை வலுக்கட்டாயமாக மாற்றுவதற்குப் பதிலாக HTTP 400-ஐ வழங்கும். பழைய சரம்/டோக்கன் கோரிக்கைகளில் உள்ள உள்ளீடு-அல்லாத நீட்டிப்புப் புலங்கள் தொடர்ந்து மாற்றமின்றி அனுப்பப்படும்.

# அனைத்து உட்பொதிவு மாதிரிகளையும் பட்டியலிடவும்
GET /v1/embeddings

பட உருவாக்கம்

POST /v1/images/generations
Authorization: Bearer your-api-key
Content-Type: application/json

{
  "model": "openai/gpt-image-2",
  "prompt": "மலைகளுக்கு மேலே ஒரு அழகான சூரிய அஸ்தமனம்",
  "size": "1024x1024"
}

கிடைக்கக்கூடிய வழங்குநர்கள்: OpenAI (GPT Image 2), xAI (Grok Image), Together AI (FLUX), Fireworks AI, Nebius (FLUX), Hyperbolic, NanoBanana, OpenRouter, SD WebUI (உள்ளமை), ComfyUI (உள்ளமை).

# அனைத்து பட மாதிரிகளையும் பட்டியலிடவும்
GET /v1/images/generations

ஆவண OCR

POST /v1/ocr
Authorization: Bearer your-api-key
Content-Type: application/json

{
  "model": "mistral/mistral-ocr-latest",
  "document": {
    "type": "document_url",
    "document_url": "https://example.com/invoice.pdf"
  }
}

model ஆனது provider/model முன்னொட்டைப் பயன்படுத்தி OCR வழங்குநரைத் தேர்ந்தெடுக்கிறது; வழங்குநர் இல்லாத மாதிரி id (எ.கா. mistral-ocr-latest) அதன் பதிவுசெய்யப்பட்ட வழங்குநருக்குத் தீர்மானிக்கப்படுகிறது, மேலும் model விடுபட்டால் இயல்புநிலையாக Mistral (mistral-ocr-latest) பயன்படுத்தப்படும். பதிவுசெய்யப்பட்ட வழங்குநர்கள் (open-sse/config/ocrRegistry.ts):

வழங்குநர் id மாதிரி id model மதிப்பு குறிப்புகள்
mistral mistral-ocr-latest mistral/mistral-ocr-latest (அல்லது வழங்குநர் இல்லாத mistral-ocr-latest) ஒத்திசைவானது — ஒற்றை மேல்நிலை அழைப்பிலிருந்து பதில் நேரடியாகத் திருப்பி அனுப்பப்படும்.
azure-document-intelligence prebuilt-read azure-document-intelligence/prebuilt-read ஒத்திசைவற்ற மேல்நிலை (analyze + வாக்கெடுப்பு) — கீழே காண்க.
vertex-deepseek-ocr deepseek-ocr-maas vertex-deepseek-ocr/deepseek-ocr-maas ஒத்திசைவானது, Vertex AI-இன் openapi/chat/completions கூட்டாளர் முனைப்புள்ளி வழியாக — அங்கீகாரம்/URL குறித்து கீழே காண்க.

மூன்று வழங்குநர்களும் ஒரே Mistral வடிவமைப்பிலான உட்பகுதியில் பதிலளிக்கின்றன:

{
  "pages": [{ "index": 0, "markdown": "# பிரித்தெடுக்கப்பட்ட உரை..." }],
  "model": "mistral-ocr-latest",
  "usage_info": { "pages_processed": 1 }
}

Azure Document Intelligence வாக்கெடுப்பு ஓட்டம்

Azure Document Intelligence-இன் analyze API ஒத்திசைவற்றது: தொடக்கக் கோரிக்கை உட்பகுதிக்குப் பதிலாக Operation-Location தலைப்பைத் திருப்பி அனுப்புகிறது, மேலும் முடிவுக்காக வாக்கெடுப்பு நடத்தப்பட வேண்டும். கையாளுநர் (open-sse/handlers/ocr.ts) அந்த URL-ஐ ஒவ்வொரு வினாடியும் அதிகபட்சம் 30 முயற்சிகள் வரை வாக்கெடுக்கும்; ok அல்லாத வாக்கெடுப்புப் பதில் அல்லது "failed" நிலை ஏற்பட்டால் உடனடியாகத் தோல்வியடையும் (தொடர்ந்து வாக்கெடுப்பதில்லை), மேலும் முயற்சி வரம்பு தீர்ந்த பின்னரும் செயல்பாடு இயங்கிக்கொண்டிருந்தால் 504-ஐத் திருப்பி அனுப்பும். இறுதி Azure பதில், அழைப்பாளருக்குத் திருப்பி அனுப்பப்படுவதற்கு முன், Mistral பயன்படுத்தும் அதே pages/markdown வடிவத்திற்கு இயல்பாக்கப்படுகிறது; எனவே கிளையண்ட் குறியீடு வழங்குநருக்கெனத் தனிப்பட்ட கையாளுதலைச் செய்ய வேண்டியதில்லை.

Vertex AI DeepSeek OCR அங்கீகாரம் மற்றும் முனைப்புள்ளித் தீர்மானம்

vertex-deepseek-ocr, அரட்டை/படப் போக்குவரத்திற்காக OmniRoute ஏற்கனவே ஆதரிக்கும் அதே Vertex AI அங்கீகாரத்தை மீண்டும் பயன்படுத்துகிறது (open-sse/executors/vertex.ts): இணைப்பின் API விசை, Service Account JSON நற்சான்றாகவோ (JWT-bearer ஓட்டத்தின் மூலம் குறுகிய ஆயுளுடைய OAuth அணுகல் டோக்கனாக மாற்றப்படும்) அல்லது ஏற்கனவே உருவாக்கப்பட்டு அப்படியே பயன்படுத்தப்படும் OAuth அணுகல் டோக்கனாகவோ இருக்கும். மேல்நிலை முனைப்புள்ளி URL என்பது Vertex-இன் பொதுவான openapi/chat/completions கூட்டாளர் முனைப்புள்ளியாகும்; இது இணைப்பின் திட்டம் மற்றும் பிராந்தியத்திலிருந்து உருவாக்கப்படுகிறது — வெளிப்படையான providerSpecificData.project/providerSpecificData.region எப்போதும் முன்னுரிமை பெறும்; இல்லையெனில், திட்டம் Service Account JSON-இன் project_id-இலிருந்து பெறப்படும், மேலும் பிராந்தியம் இயல்புநிலையாக us-central1 ஆகும். இரண்டு தீர்மானங்களும் open-sse/handlers/ocr.ts-இல் (resolveVertexOcrAccessToken, resolveVertexOcrBaseUrl) நடைபெற்று, handleOcr-க்கு அனுப்புவதற்கு முன் src/app/api/v1/ocr/route.ts மூலம் பயன்படுத்தப்படுகின்றன.


மாதிரிகளைப் பட்டியலிடுதல்

GET /v1/models
Authorization: Bearer your-api-key

→ OpenAI வடிவத்தில் அனைத்து அரட்டை, உட்பொதித்தல் மற்றும் பட மாதிரிகள் + சேர்க்கைகளை வழங்குகிறது

மாதிரி id முன்னொட்டுகள் (?prefix=)

பெரும்பாலான மாதிரிகள் ஒரு வழங்குநர் முன்னொட்டின் கீழ் விளம்பரப்படுத்தப்படுகின்றன. உங்களுக்கு எந்த முன்னொட்டு கிடைக்கும் என்பது MODELS_CATALOG_PREFIX_MODE அம்சக் கொடியால் கட்டுப்படுத்தப்படுகிறது; மேலும், மற்ற அனைவருக்குமான சேவையக அளவிலான அமைப்பை மாற்றாமல் தெளிவான பட்டியலை விரும்பும் கிளையன்டுக்கு பயனுள்ளதாக, வினவல் அளவுருவைக் கொண்டு ஒவ்வொரு கோரிக்கைக்கும் இதை மேலெழுதலாம்:

GET /v1/models?prefix=alias        # ஒவ்வொரு மாதிரிக்கும் ஒரு id — குறுகிய மாற்றுப்பெயர் முன்னொட்டு
GET /v1/models?prefix=dual         # இரண்டு வடிவங்களும் (சேவையக இயல்புநிலை)
GET /v1/models?prefix=canonical    # முழுமையான வழங்குநர்-id முன்னொட்டு மட்டும்
பயன்முறை வெளியிடுவது குறிப்புகள்
dual cc/claude-sonnet-4-6 மற்றும் claude/claude-sonnet-4-6 இயல்புநிலை. இரண்டு id-களும் ஒரே மாதிரிக்கு வழிச்செலுத்துகின்றன; எந்த வடிவத்தையாவது நேரடியாகக் குறியிட்ட கிளையன்ட் உள்ளமைவுகள் தொடர்ந்து செயல்படுவதற்காக இது தக்கவைக்கப்பட்டுள்ளது. பட்டியலின் அளவை ஏறக்குறைய இரட்டிப்பாக்குகிறது.
alias cc/claude-sonnet-4-6 ஒவ்வொரு மாதிரிக்கும் ஒரு பதிவு. தனித்துவமான மாற்றுப்பெயர் இல்லாத வழங்குநர்களும் தங்கள் பதிவை வெளியிடுவதால், எதுவும் இழக்கப்படாது.
canonical claude/claude-sonnet-4-6 முழுமையான வழங்குநர்-id முன்னொட்டின் கீழ் ஒவ்வொரு மாதிரிக்கும் ஒரு பதிவு. தனித்துவமான மாற்றுப்பெயர் இல்லாத வழங்குநர்களும் (எ.கா. antigravity/…, agy/…) தங்கள் ஒற்றை id-ஐ இங்கும் வெளியிடுவதால், எதுவும் இழக்கப்படாது.

dual-பயன்முறை பிரதியை வினவல் அளவுரு இல்லாமலும் அடையாளம் காணலாம்: அதில் முதன்மை id-ஐச் சுட்டிக்காட்டும் parent புலம் இருக்கும்.

மாதிரித் தேர்வியை வழங்கும் கிளையன்டுகள் ?prefix=alias-ஐக் கோர வேண்டும் — இதைத்தான் OmniCopilot VS Code நீட்டிப்பு செய்கிறது.

சிந்தனை-இல்லாத மாதிரி மாறுபாடுகள்

சிந்திக்கும் திறனுள்ள Claude மாதிரிகளுக்கு, /v1/models ஆனது claude-3-omniroute-no-thinking/ என்ற முன்னொட்டைக் கொண்ட id உடைய சிந்தனை-இல்லாத மாறுபாட்டையும் விளம்பரப்படுத்துகிறது:

claude-3-omniroute-no-thinking/<provider>/<model>

இந்த id-ஐத் தேர்ந்தெடுப்பது (எ.கா. எப்போதும் thinking தொகுதியை இணைக்கும் Claude Code உள்ளமைவில்), காரணமறிதல் ஒடுக்கப்பட்ட நிலையில் உண்மையான <provider>/<model>-க்கு மீண்டும் தீர்மானிக்கப்படுகிறது — /v1/messages பாதையில் thinking:{type:"disabled"}, அல்லது /v1/chat/completions பாதையில் reasoning/reasoning_effort புலங்கள் நீக்கப்படும். சிந்தனையை ஆதரிக்கும் மற்றும் disabled-ஐ ஏற்கும் Claude-குடும்ப மாதிரிகளுக்கு மட்டுமே இந்த மாறுபாடு பட்டியலிடப்படும் (எனவே, எ.கா. disabled-ஐ நிராகரிக்கும் தகவமைப்பு-மட்டும் மாதிரிகள் விலக்கப்படும்). இயக்குநர்கள் ModelSpec.noThinkingAlias மூலம் ஒவ்வொரு மாதிரிக்கும் இந்த மாறுபாட்டைக் கட்டாயமாக இயக்கவோ முடக்கவோ முடியும்.


வழங்குநர் செருகுநிரல் அறிக்கை

GET /api/v1/provider-plugin-manifest

Bifrost, CLIProxyAPI மற்றும் எதிர்கால sidecar router-கள் பயன்படுத்தும் JSON-பாதுகாப்பான வழங்குநர் செருகுநிரல் அறிக்கையை வழங்குகிறது. இந்தப் பதில் TypeScript வழங்குநர் பதிவகத்திலிருந்து உருவாக்கப்படுகிறது; மேலும் OAuth client secret-கள், இயக்கநேரச் சூழல் மதிப்புத் தீர்மானம், executor function-கள், கோரிக்கை header-கள் மற்றும் கணக்குத் தரவு ஆகியவற்றை வேண்டுமென்றே விலக்குகிறது.

ஒரு sidecar தனிச் செயல்முறையாக இயங்கி, open-sse/config/providerPluginManifestRegistry.ts-ஐ நேரடியாக import செய்ய முடியாதபோது இந்த endpoint-ஐப் பயன்படுத்தவும்.


இணக்கத்தன்மை Endpoint-கள்

முறை பாதை வடிவம்
POST /v1/chat/completions OpenAI
POST /v1/messages Anthropic
POST /v1/responses OpenAI Responses
POST /v1/embeddings OpenAI
POST /v1/images/generations OpenAI Images
POST /v1/images/edits OpenAI Images (திருத்தம்/inpaint)
POST /v1/videos/generations OpenAI-பாணி காணொளி உருவாக்கம்
POST /v1/music/generations OpenAI-பாணி இசை உருவாக்கம்
POST /v1/audio/transcriptions OpenAI Audio (STT)
POST /v1/audio/speech OpenAI TTS (ஒலி body-ஐ வழங்கும்)
POST /v1/rerank Cohere/Voyage-பாணி மறுதரவரிசை
POST /v1/classify Jina வகைப்படுத்தல் (api.jina.ai)
POST /v1/segment Jina segmenter (segment.jina.ai)
POST /v1/moderations OpenAI Moderations
GET /v1/models OpenAI
POST /v1/messages/count_tokens Anthropic
GET /v1beta/models Gemini
POST /v1beta/models/{...path} Gemini generateContent
POST /v1/api/chat Ollama
GET /api/v1/vscode/{token}/ OpenAI பட்டியல் மாற்றுப்பெயர்
GET /api/v1/vscode/{token}/models OpenAI model-கள் மாற்றுப்பெயர்
POST /api/v1/vscode/{token}/chat/completions OpenAI token உடைய மாற்றுப்பெயர்
POST /api/v1/vscode/{token}/responses OpenAI Responses token உடைய மாற்றுப்பெயர்
POST /api/v1/vscode/{token}/api/chat Ollama token உடைய மாற்றுப்பெயர்
GET /api/v1/vscode/{token}/api/tags Ollama tag-கள் token உடைய மாற்றுப்பெயர்

அனைத்து POST route-களும் ஒரே கட்டமைப்பைப் பின்பற்றுகின்றன: Bearer your-api-key + Zod மூலம் சரிபார்க்கப்பட்ட JSON body (v1RerankSchema, v1ModerationSchema, v1AudioSpeechSchema போன்றவை; src/shared/validation/schemas.ts-ஐப் பார்க்கவும்). Schema சரிபார்ப்பு தோல்வியடைந்தால் 4xx வழங்கப்படும்.

Authorization: Bearer ...-ஐ இணைக்க முடியாத client-களுக்காக, query-string இணக்கத்தன்மை (?token=..., ?apiKey=..., ?api_key=..., ?key=...) அல்லது கீழே ஆவணப்படுத்தப்பட்டுள்ள பிரத்யேக /api/v1/vscode/{token}/... endpoint-கள் வழியாக URL-இல் API key-களையும் OmniRoute ஏற்கிறது.

# மறுதரவரிசை
POST /v1/rerank      { "model": "jina-ai/jina-reranker-v3.5", "query": "...", "documents": ["..."] }

# Jina வகைப்படுத்தல் (Foundation API நற்சான்றுகள்)
POST /v1/classify    { "model": "jina-embeddings-v5-text-small", "input": ["..."], "labels": ["a", "b"] }

# Jina segmenter
POST /v1/segment     { "content": "...", "return_chunks": true }

# Jina தேடல் (s.jina.ai; வழங்குநர் மாற்றுப்பெயர்கள்: jina-search, jina-ai, jina)
POST /v1/search      { "query": "...", "provider": "jina-search" }

# உள்ளடக்க நெறிப்படுத்தல்கள்
POST /v1/moderations { "model": "omni-moderation-latest", "input": "..." }

# TTS — audio/mpeg (அல்லது கோரப்பட்ட வடிவம்) body-ஐ வழங்கும்
POST /v1/audio/speech { "model": "openai/tts-1", "input": "Hello", "voice": "alloy" }

# படத் திருத்தம் (multipart)
POST /v1/images/edits  -F image=@input.png -F prompt="..." -F mask=@mask.png

# காணொளி / இசை உருவாக்கம் (வழங்குநர் முன்னொட்டுள்ள model id)
POST /v1/videos/generations { "model": "runway/gen-3", "prompt": "..." }
POST /v1/music/generations  { "model": "suno/v3.5",   "prompt": "..." }

பிரத்யேக வழங்குநர் Route-கள்

POST /v1/providers/{provider}/chat/completions
POST /v1/providers/{provider}/embeddings
POST /v1/providers/{provider}/images/generations

வழங்குநர் முன்னொட்டு இல்லாவிட்டால் அது தானாகச் சேர்க்கப்படும். பொருந்தாத model-கள் 400-ஐ வழங்கும்.


கோப்புகள் API

தொகுதி உள்ளீடு/வெளியீடு மற்றும் கோப்பு-நோக்கப் பதிவேற்றங்களுக்கான OpenAI-இணக்கமான கோப்புகள் முனைப்புள்ளி.

முறை பாதை விளக்கம்
POST /v1/files ஒரு கோப்பைப் பதிவேற்றும் (multipart: file, purpose, expires_after[anchor], expires_after[seconds]) — அதிகபட்சம் 512 MiB
GET /v1/files அங்கீகரிக்கப்பட்ட API விசைக்கான கோப்புகளைப் பட்டியலிடும்
GET /v1/files/[id] ஒரு கோப்பின் மெட்டாடேட்டாவைப் பெறும்
DELETE /v1/files/[id] ஒரு கோப்பை நீக்கும்
GET /v1/files/[id]/content மூலக் கோப்பு உள்ளடக்கத்தை ஸ்ட்ரீமாகத் திருப்பி அனுப்பும்

அங்கீகாரம்: Bearer API விசை — கோப்புகள் getApiKeyRequestScope வழியாக ஒவ்வொரு API விசைக்கும் தனித்த வரம்பில் இருக்கும். ஒரு விசை தனக்குச் சொந்தமான கோப்புகளை மட்டுமே பார்க்கவும், பதிவிறக்கவும், நீக்கவும் முடியும்; விசையில்லாத டாஷ்போர்டு அமர்வு முழு நிகழ்வையும் வாசிக்க முடியும்; உரிமையாளர் இல்லாத கோப்பு (அநாமதேய அல்லது டாஷ்போர்டு-அமர்வுப் பதிவேற்றம்) ஒவ்வொரு அமர்வற்ற அழைப்பாளருக்கும் மறுக்கப்படும். GET /v1/files, REQUIRE_API_KEY=false ஆக இருந்தாலும், ஒவ்வொரு குத்தகையாளரின் கோப்புகளையும் பட்டியலிடுவதற்குப் பதிலாக, அநாமதேய அழைப்பாளரையும் — மேலும் செல்லுபடியாகத் தீர்மானிக்க முடியாத வழங்கப்பட்ட விசையையும் — 401 உடன் நிராகரிக்கும் (GHSA-m3hp-hq9g-fpmv, GHSA-2jm2-mpx8-6523).


தொகுதிகள் API

OpenAI-இணக்கமான தொகுதிச் செயலாக்கம்.

முறை பாதை விளக்கம்
POST /v1/batches தொகுதியை உருவாக்கும் — உடல் v1BatchCreateSchema மூலம் சரிபார்க்கப்படும் (input_file_id, endpoint, completion_window)
GET /v1/batches தொகுதிகளைப் பட்டியலிடும்
GET /v1/batches/[id] தொகுதி நிலை + request_counts ஆகியவற்றைப் பெறும்
DELETE /v1/batches/[id] முடிவடைந்த/தோல்வியடைந்த தொகுதியை நீக்கும்
POST /v1/batches/[id]/cancel செயலாக்கத்தில் உள்ள தொகுதியை ரத்துசெய்யும்

அங்கீகாரம்: Bearer API விசை. கோப்புகளுக்குப் பயன்படுத்தப்படும் அதே மும்முனை விதியின் கீழ், தொகுதிகள் ஒவ்வொரு API விசைக்கும் தனித்த வரம்பில் இருக்கும்: சொந்த விசைக்கு மட்டும் அணுகல், டாஷ்போர்டு அமர்வுக்கு நிகழ்வு முழுவதுமான அணுகல், உரிமையாளர் இல்லாத பதிவுகள் ஒவ்வொரு அமர்வற்ற அழைப்பாளருக்கும் மறுக்கப்படும் (பெறுதல், நீக்குதல், ரத்துசெய்தல் மற்றும் உருவாக்கும்போதான input_file_id சரிபார்ப்பு). REQUIRE_API_KEY=false ஆக இருந்தாலும், GET /v1/batches அநாமதேய அழைப்பாளரை 401 உடன் நிராகரிக்கும்.


தேடல் API

இணைய/தேடல் வழங்குநர் சுருக்க அடுக்கு (Tavily, Brave, Exa, Serper போன்றவை).

முறை பாதை விளக்கம்
GET /v1/search கட்டமைக்கப்பட்ட தேடல் வழங்குநர்கள் + திறன்களைப் பட்டியலிடுகிறது
POST /v1/search தேடல் வினவலை இயக்குகிறது — கோரிக்கை உடல் v1SearchSchema மூலம் சரிபார்க்கப்படுகிறது, தற்காலிகச் சேமிப்பு/ஒருங்கிணைப்பை ஆதரிக்கிறது
GET /v1/search/analytics ஒவ்வொரு வழங்குநருக்குமான வெற்றி/தாமதம்/தற்காலிகச் சேமிப்புப் புள்ளிவிவரங்கள்

அங்கீகாரம்: Bearer API விசை (extractApiKey + isValidApiKey). தேடல் கொள்கை enforceApiKeyPolicy மூலம் அமல்படுத்தப்படுகிறது.


இணையப் பெறுதல் API

கட்டமைக்கப்பட்ட இணையப் பெறுதல் வழங்குநர் (Firecrawl, Jina Reader, Tavily Extract, TinyFish Fetch, Nimble Extract) வழியாக URL ஒன்றிலிருந்து உள்ளடக்கத்தைப் பிரித்தெடுக்கிறது.

முறை பாதை விளக்கம்
POST /v1/web/fetch URL ஒன்றைப் பெறுகிறது/சுரண்டுகிறது — கோரிக்கை உடல் v1WebFetchSchema மூலம் சரிபார்க்கப்படுகிறது

அங்கீகாரம்: Bearer API விசை (extractApiKey + isValidApiKey). கொள்கை enforceApiKeyPolicy மூலம் அமல்படுத்தப்படுகிறது.

ஒதுக்கீட்டை அறிந்த fallback (#8297): வெளிப்படையான provider எதுவும் வழங்கப்படாதபோது, தொகுப்பு (firecrawljina-readertavily-searchtinyfishnimble-search) நிலையான முன்னுரிமை வரிசையில் (முதலில் நிரப்புதல்) கடக்கப்படுகிறது — விகித வரம்பை அடைந்திருந்தாலும் கட்டமைக்கப்பட்டுள்ள வழங்குநர், கோரிக்கையை உடனடியாக நிறுத்துவதற்குப் பதிலாகத் தவிர்க்கப்படுகிறது; மேலும் மீண்டும் முயற்சிக்கக்கூடிய/ஒதுக்கீடு தொடர்பான மேல்நிலைத் தோல்வி (HTTP 429 எப்போதும்; Firecrawl/Tavily/TinyFish ஒதுக்கீடு பாணியிலான இலவச அடுக்குகளுக்கு 402/403 — Jina Reader-க்கு அல்ல, மேலும் சாதாரண 400 தவறான கோரிக்கைக்கு ஒருபோதும் அல்ல) கோரிக்கை நேரத்தில், இதுவரை முயற்சிக்கப்படாத அடுத்த நற்சான்றுகளைக் கொண்ட வழங்குநருக்குத் தொடர்கிறது. தொகுப்பிலுள்ள ஒவ்வொரு வழங்குநரும் தீர்ந்துவிட்டால், முந்தைய பொதுவான 400-க்கு பதிலாக endpoint ஒற்றை 429-ஐ (Retry-After தலைப்புடன்) திருப்பி அனுப்புகிறது. வெளிப்படையான provider கோரப்பட்டால், அமைதியான fallback இல்லை — விகித வரம்பை அடைந்த அல்லது தோல்வியடைந்த வெளிப்படையான வழங்குநர் தனது சொந்தப் பிழையையே வெளிப்படுத்துகிறது (விகித வரம்பை அடைந்திருந்தால் 429, இல்லையெனில் மேல்நிலை நிலை).


WebSocket ஸ்ட்ரீமிங்

GET /v1/ws?handshake=1

WebSocket மேம்படுத்தல் கைகுலுக்கலைச் சரிபார்த்து, கம்பி நெறிமுறை எடுத்துக்காட்டுச் செய்திகளை (request, cancel) திருப்பி அனுப்புகிறது. உண்மையான WS சட்டகங்கள் Next.js வழித்தட அட்டவணைக்கு வெளியே உள்ள தொகுக்கப்பட்ட WS சேவையகத்தால் கையாளப்படுகின்றன.

அங்கீகாரம்: கைகுலுக்கலின்போது Bearer API விசை.

WebSocket வழியான Responses API (codex மட்டும்)

# HTTP API-இன் அதே host:port (இயல்புநிலை 20128); இணைப்பை மேம்படுத்தவும்:
wscat -c "ws://localhost:20128/v1/responses?api_key=<OMNIROUTE_API_KEY>"
# (அல்லது: -H "Authorization: Bearer <OMNIROUTE_API_KEY>")

# முதல் சட்டகம் response.create ஆகவே இருக்க வேண்டும்:
{ "type": "response.create", "model": "gpt-5.5", "input": [ { "role": "user", "content": "hi" } ] }

Responses-API-over-WebSocket proxy codex உடன் மட்டுமே பிரத்தியேகமாக இணைக்கப்பட்டுள்ளது (ChatGPT பின்புலம்). இது API/dashboard பயன்படுத்தும் அதே port-இல் /v1/responses, /responses, மற்றும் /api/v1/responses பாதைகளில் கவனித்துக் கொண்டிருக்கும். முதல் response.create சட்டகத்தில் இது உள் codex-responses-ws bridge வழியாக அங்கீகரித்து + தயார்படுத்தி, ஒரு codex OAuth இணைப்பைத் தேர்ந்தெடுத்து, wreq-js போக்குவரத்து வழியாக wss://chatgpt.com/backend-api/codex/responses க்கு tunnel செய்கிறது. codex அல்லாத models நிராகரிக்கப்படுகின்றன (codex_ws_provider_required). ஒதுக்கீட்டுப் பகிர்வு routing-க்கு model: "qtSd/<group>/codex/<model>" ஐப் பயன்படுத்தவும். இது app/server-ws.mjs + scripts/dev/responses-ws-proxy.mjs + src/app/api/internal/codex-responses-ws/route.ts ஆகியவற்றில் செயல்படுத்தப்பட்டுள்ளது.

அங்கீகாரம்: கைகுலுக்கலின்போது Bearer API விசை. தொகுக்கப்பட்ட HTTP சேவையகம் (server-ws.mjs) செயலில் உள்ள entrypoint ஆக இருக்க வேண்டும் (app/server-ws.mjs இருந்தால், இயல்புநிலையாக அதுவே இருக்கும்).

Model id: எளிய ChatGPT id-ஐப் பயன்படுத்தவும் (codex/ முன்னொட்டு வேண்டாம்)

supports_websockets = true ஆக இருக்கும்போது OpenAI Codex CLI model பெயரை client பக்கத்தில் சரிபார்த்து, codex/gpt-5.5 போன்ற வழங்குநர் முன்னொட்டுள்ள ids-ஐ நிராகரிக்கிறது (The 'codex/gpt-5.5' model is not supported when using Codex with a ChatGPT account). எளிய id-ஐ அனுப்பவும் (எ.கா. gpt-5.5). OmniRoute-இன் bridge codex-க்கு மட்டுமே உரியது; எனவே மேல்நிலைக்கு tunnel செய்வதற்கு முன், எளிய gpt-5.5 HTTP வழியாக வேறொரு வழங்குநருக்கு route ஆகக்கூடும் என்றாலும், அது எளிய id-ஐ codex model ஆக மீண்டும் தீர்மானிக்கிறது (resolveCodexWsModelInfo).

OpenAI Codex CLI-ஐக் கட்டமைத்தல்

WebSocket ஆதரவுள்ள தனிப்பயன் வழங்குநரை ~/.codex/config.toml இல் சேர்த்து Codex CLI-ஐ OmniRoute-ஐ நோக்குமாறு அமைக்கவும் (ஏற்கனவே உள்ள கட்டமைப்பை மாற்றாமல் இருக்கத் தனியான CODEX_HOME-ஐப் பயன்படுத்தவும்):

model = "gpt-5.5"                 # எளிய id — "codex/gpt-5.5" அல்ல
model_provider = "omniroute"

[model_providers.omniroute]
name = "OmniRoute (WS)"
base_url = "http://localhost:20128/v1"   # இறுதியில் slash வேண்டாம்; WS URL இதிலிருந்து பெறப்படுகிறது (production-இல் https/wss பயன்படுத்தவும்)
wire_api = "responses"                    # Feb 2026 முதல் ஆதரிக்கப்படும் ஒரே மதிப்பு
supports_websockets = true                # Responses-over-WS போக்குவரத்தைச் செயல்படுத்துகிறது
env_key = "OMNIROUTE_API_KEY"             # OmniRoute API விசையை வைத்திருக்கும் (Bearer)
export OMNIROUTE_API_KEY=sk-...           # ஒரு OmniRoute API விசை (REQUIRE_API_KEY=false எனில் எந்த விசையும்)
codex exec "Responda apenas: PONG"

CLI ஆனது base_url + /responses ஐ WebSocket ஆக மேம்படுத்துகிறது; OmniRoute அதைத் தேர்ந்தெடுக்கப்பட்ட codex OAuth இணைப்புக்குத் tunnel செய்கிறது. உள்ளூர் சேவையகத்தில் தொடக்கம் முதல் முடிவு வரை சரிபார்க்கப்பட்டது: ChatGPT codex.rate_limits + response.created ஐத் திருப்பி அனுப்பி, நிறைவை stream செய்கிறது.


ஒதுக்கீடுகள் & சிக்கல்கள் அறிக்கையிடல்

முறை பாதை விளக்கம்
GET /v1/quotas/check பதிவுசெய்யப்பட்ட விசையை வழங்குவதற்கு முன் provider + accountId-க்கான ஒதுக்கீட்டை முன்கூட்டியே சரிபார்க்கிறது
POST /v1/issues/report ஒதுக்கீடு/விசை வழங்கல் தோல்வியை GitHub-இல் அறிக்கையிடுகிறது (GITHUB_ISSUES_REPO + token தேவை)

அங்கீகாரம்: Bearer API விசை (isAuthenticated).


சுய-சேவைப் பயன்பாடு (/api/usage/om-usage)

எந்த API விசையும் தனது சொந்தப் பயன்பாட்டையும் ஒதுக்கீடுகளையும் படிக்க முடியும் — நிர்வாக அங்கீகாரம் தேவையில்லை. ஒரு விசை வைத்திருப்பவரின் செலவைக் காட்டுவதற்கு client (CLI, OmniCopilot panel) பயன்படுத்தும் endpoint இதுவாகும்.

# உரை வடிவம் (வரலாற்று ஒப்பந்தம் — terminal-க்கான எளிய உரை)
curl -H "Authorization: Bearer <your-api-key>" \
  http://localhost:20128/api/usage/om-usage

# கட்டமைக்கப்பட்ட வடிவம் — UI பயன்படுத்துவது
curl -H "Authorization: Bearer <your-api-key>" \
  "http://localhost:20128/api/usage/om-usage?format=json"

விசையில் allowUsageCommand இயக்கப்பட்டிருக்க வேண்டும் (இயல்பாக முடக்கப்பட்டிருக்கும் — dashboard-இன் API-key manager ஒவ்வொரு விசைக்கும் இதை மாற்றுகிறது). இது இல்லாமல் endpoint 403 எனப் பதிலளிக்கும்.

?format=json, அழைப்பவர் மறுப்புப் பதிலிலிருந்து ஒரு தரவுப் புலத்தை ஒருபோதும் படிக்காதவாறு வேறுபடுத்தப்பட்ட வடிவமைப்பை வழங்குகிறது. வெற்றியின்போது:

{
  "allowed": true,
  // ஒவ்வொரு விசைக்கும் தனிப்பட்ட பயன்பாட்டு வரம்புகளை (தினசரி/வாராந்திர USD) விசை தேர்வுசெய்திருந்தால் மட்டுமே இருக்கும்:
  "personal": {
    "dailySpentUsd": 1.25,
    "dailyLimitUsd": 5,
    "dailyResetAtIso": "…",
    "weeklySpentUsd": 8,
    "weeklyLimitUsd": 20,
    "weeklyResetAtIso": "…" /*  */,
  },
  // தேர்ந்தெடுக்கப்பட்ட provider ஒதுக்கீட்டின் snapshot, அல்லது இதுவரை எதுவும் cache செய்யப்படவில்லை எனில் null:
  "provider": {
    "connectionId": "…",
    "provider": "claude",
    "plan": "…",
    "quotas": {/*  */},
  },
  // ஒவ்வொரு connection-இன் snapshot, இதனால் UI பல provider-களை அருகருகே காண்பிக்க முடியும்:
  "providers": [
    { "connectionId": "…", "provider": "claude" /*  */ },
    { "provider": "codex" /*  */ },
  ],
}

மறுக்கப்படும்போது (401 தவறான விசை / 403 அனுமதிக்கப்படவில்லை), அதே route { "allowed": false, "error": { "message": "…" } } என்பதைத் திருப்பித் தருகிறது — உள்ளிருந்தும் காலியாக இருக்கும் personal/provider (விசை அனுமதிக்கப்பட்டுள்ளது, இன்னும் எதுவும் அறியப்படவில்லை) என்பது மறுப்பிலிருந்து வேறுபட்ட நிலையாகும்; JSON வடிவம் மட்டுமே அவற்றை வேறுபடுத்துகிறது.

அங்கீகாரம்: அழைப்பவரின் சொந்த Bearer API விசை, isValidApiKey மூலம் சரிபார்க்கப்படுகிறது — இது requireManagementAuth-க்குப் பின்னால் இருக்கும் நிர்வாகப் பகுதி (/api/keys/…) அல்ல.


பொருள்சார் Cache

# Cache புள்ளிவிவரங்களைப் பெறவும்
GET /api/cache/stats

# அனைத்து cache-களையும் அழிக்கவும்
DELETE /api/cache/stats

பதில் எடுத்துக்காட்டு:

{
  "semanticCache": {
    "memorySize": 42,
    "memoryMaxSize": 500,
    "dbSize": 128,
    "hitRate": 0.65
  },
  "idempotency": {
    "activeKeys": 3,
    "windowMs": 5000
  }
}

தாமதத்தின் மீதான தாக்கம்

ஒரு பொருள்சார் cache HIT, upstream அழைப்பு இல்லாமல் cache-இலிருந்து பதிலை வழங்கும்; எனவே அறிக்கையிடப்படும் X-OmniRoute-Response-Latency ஏறத்தாழ பூஜ்ஜியமாக இருக்கும் (அசல் upstream தாமதத்தைப் பொருட்படுத்தாமல்). தாமதத்தைப் பொறுத்து செயல்படும் client-கள் (தரநிலைச் சோதனை, p50/p99 கண்காணிப்பு) X-OmniRoute-Cache-Latency response header-ஐச் சரிபார்க்க வேண்டும்:

மதிப்பு பொருள்
synthetic பதில் cache-இலிருந்து வழங்கப்பட்டது; தாமதம் உண்மையான upstream நேரமல்ல
(இல்லை) உண்மையான upstream அழைப்பிலிருந்து வந்த பதில்

ஒவ்வொரு விசைக்குமான cache தவிர்ப்பு

API விசைகள் cacheDefaultMode வழியாக பொருள்சார் cache வாசிப்புகளைத் தவிர்க்கலாம்:

மதிப்பு செயல்பாடு
legacy இயல்பான cache செயல்பாடு (இயல்புநிலை)
bypass Cache தேடலை முழுமையாகத் தவிர்த்து, எப்போதும் upstream-ஐ அணுகும்

விசை உருவாக்கத்தின்போது (POST /api/keys) அமைக்கவும் அல்லது புதுப்பிக்கவும் (PATCH /api/keys/[id]):

{ "cacheDefaultMode": "bypass" }

ஒவ்வொரு கோரிக்கைக்குமான தவிர்ப்பு

விசை அமைப்புகளைப் பொருட்படுத்தாமல் எந்தக் கோரிக்கையும் cache-ஐத் தவிர்க்கலாம்:

X-OmniRoute-No-Cache: true

டாஷ்போர்டு & மேலாண்மை

பொது auth/login தவிர, மேலாண்மை வழித்தடங்கள் (/api/*) சாதாரண inference API விசைகளால் அங்கீகரிக்கப்படுவதில்லை. நற்சான்று வகைகள், வரம்புகள் மற்றும் curl எடுத்துக்காட்டுகள்: மேலாண்மை அங்கீகாரம்.

அங்கீகாரம்

முனைப்புள்ளி முறை விளக்கம்
/api/auth/login POST உள்நுழைவு
/api/auth/logout POST வெளியேறுதல்
/api/settings/require-login GET/PUT உள்நுழைவு தேவை என்பதை மாற்றுதல்

வழங்குநர் மேலாண்மை

முனைப்புள்ளி முறை விளக்கம்
/api/providers GET/POST வழங்குநர்களைப் பட்டியலிடுதல் / உருவாக்குதல்
/api/providers/[id] GET/PUT/DELETE வழங்குநரை நிர்வகித்தல்
/api/providers/[id]/test POST வழங்குநர் இணைப்பைச் சோதித்தல்
/api/providers/[id]/models GET வழங்குநர் மாதிரிகளைப் பட்டியலிடுதல்
/api/providers/validate POST வழங்குநர் உள்ளமைவைச் சரிபார்த்தல்
/api/providers/bulk POST ஒரே வழங்குநருக்கான API விசைகளை மொத்தமாகச் சேர்த்தல்
/api/providers/import POST பாகுபடுத்தப்பட்ட CSV/JSON கோப்பிலிருந்து பல்வகை வழங்குநர் பட்டியலை இறக்குமதி செய்தல் (#6836); ஒவ்வொரு வரிக்குமான பகுதியளவு தோல்வி முடிவுகள்
/api/provider-nodes* பல்வேறு வழங்குநர் முனை மேலாண்மை
/api/provider-models GET/POST/PATCH/DELETE தனிப்பயன் மாதிரிகள் (சேர்த்தல், புதுப்பித்தல், மறைத்தல்/காட்டுதல், நீக்குதல்)

OAuth செயல்முறைகள்

முனைப்புள்ளி முறை விளக்கம்
/api/oauth/[provider]/[action] பல்வேறு வழங்குநருக்கான குறிப்பிட்ட OAuth

வழிச்செலுத்தல் & உள்ளமைவு

முனைப்புள்ளி முறை விளக்கம்
/api/models/alias GET/POST மாதிரி மாற்றுப்பெயர்கள்
/api/models/catalog GET வழங்குநர் + வகைப்படி அனைத்து மாதிரிகளும்
/api/combos* பல்வேறு சேர்க்கை மேலாண்மை
/api/keys* பல்வேறு API விசை மேலாண்மை
/api/pricing GET மாதிரி விலை நிர்ணயம்

பயன்பாடு & பகுப்பாய்வு

முனைப்புள்ளி முறை விளக்கம்
/api/usage/history GET பயன்பாட்டு வரலாறு
/api/usage/logs GET பயன்பாட்டுப் பதிவுகள்
/api/usage/request-logs GET கோரிக்கை-நிலைப் பதிவுகள்
/api/usage/[connectionId] GET ஒவ்வொரு இணைப்பிற்குமான பயன்பாடு
/api/usage/token-limits GET/POST/DELETE ஒவ்வொரு API விசைக்குமான டோக்கன்-வரம்பு ஒதுக்கீடுகள்
/api/usage/model-latency-stats GET ஒவ்வொரு வழங்குநர்/மாதிரிக்குமான நகரும் தாமதத் தொகுப்பு (avg/p50/p95/p99, வெற்றி விகிதம்); வடிகட்டிகள்: windowHours/minSamples/maxRows/provider/model (#6873)
/api/usage/cache-health GET call_logs மீதான ப்ராம்ப்ட்-கேச் நிலைச் சுருக்கம் — எழுதுதல்/வாசித்தல் விகிதம், p50/p90/p99 எழுதுதல்-அளவு பரவல், அதிக-எழுதுதல் செறிவு, ஒவ்வொரு மாதிரிக்குமான பிரிப்பு மற்றும் healthy/degraded/thrash/no-data தீர்ப்பு; வினவல் அளவுருக்கள் range (1h|24h|7d|30d, இயல்புநிலை 24h) மற்றும் விருப்பத்திற்குரிய model (#8827)

அமைப்புகள்

முனைப்புள்ளி முறை விளக்கம்
/api/settings GET/PUT/PATCH பொது அமைப்புகள்
/api/settings/proxy GET/PUT பிணைய ப்ராக்ஸி உள்ளமைவு
/api/settings/proxy/test POST ப்ராக்ஸி இணைப்பைச் சோதித்தல்
/api/settings/ip-filter GET/PUT IP அனுமதிப்புப் பட்டியல்/தடுப்புப் பட்டியல்
/api/settings/thinking-budget GET/PUT சிந்தனை/காரணவியல் கோரிக்கை மறுஎழுதும் முறை (அப்படியே அனுப்புதல் / தானாக அகற்றுதல் / தனிப்பயன் / தகவமைப்பு). சுருக்கத்திலிருந்து சுயாதீனமானது. THINKING_BUDGET.md-ஐப் பார்க்கவும்.
/api/settings/system-prompt GET/PUT உலகளாவிய சிஸ்டம் ப்ராம்ப்ட்
/api/settings/compression GET/PUT உலகளாவிய சுருக்க உள்ளமைவு
/api/settings/purge-request-history POST கோரிக்கைப் பதிவின் வரிசைகள் மற்றும் உள்ளக அழைப்புப் பதிவு ஆவணங்களை அழித்தல்

சூழல் & சுருக்கம்

முனைப்புள்ளி முறை விளக்கம்
/api/compression/preview POST off/lite/standard/aggressive/ultra/RTK/stacked சுருக்கத்தின் முன்னோட்டம்
/api/compression/language-packs GET கிடைக்கக்கூடிய Caveman மொழித் தொகுப்புகளைப் பட்டியலிடுதல்
/api/compression/rules GET Caveman விதி மெட்டாடேட்டாவைப் பட்டியலிடுதல்
/api/context/caveman/config GET/PUT Caveman-க்கான குறிப்பிட்ட அமைப்புகளின் மாற்றுப்பெயர்
/api/context/rtk/config GET/PUT தனிப்பயன் வடிகட்டிகள் மற்றும் மூல வெளியீட்டுத் தக்கவைப்பு உள்ளிட்ட RTK-க்கான குறிப்பிட்ட அமைப்புகள்
/api/context/rtk/filters GET RTK வடிகட்டி பட்டியல் மற்றும் தனிப்பயன் வடிகட்டி கண்டறிதல்கள்
/api/context/rtk/test POST உரைத் தரவுத்தொகுப்பில் RTK முன்னோட்டம்/சோதனையை இயக்குதல்
/api/context/rtk/raw-output/[id] GET சுட்டி id மூலம் தக்கவைக்கப்பட்ட திருத்தப்பட்ட மூல வெளியீட்டைப் படித்தல்
/api/context/combos GET/POST சுருக்கச் சேர்க்கைகளைப் பட்டியலிடுதல்/உருவாக்குதல்
/api/context/combos/[id] GET/PUT/DELETE சுருக்கச் சேர்க்கையின் விவரம்/புதுப்பித்தல்/நீக்குதல்
/api/context/combos/[id]/assignments GET/PUT வழிப்படுத்தல் சேர்க்கைகளுக்குச் சுருக்கச் சேர்க்கைகளை ஒதுக்குதல்
/api/context/analytics GET சுருக்கப் பகுப்பாய்வின் மாற்றுப்பெயர்

கண்காணிப்பு

முனைப்புள்ளி முறை விளக்கம்
/api/sessions GET செயலில் உள்ள அமர்வுகளைக் கண்காணித்தல்
/api/rate-limits GET கணக்குவாரியான விகித வரம்புகள்
/api/monitoring/health GET நிலைச் சரிபார்ப்பு + வழங்குநர் சுருக்கம் (catalogCount, configuredCount, activeCount, monitoredCount). மேலாண்மைக் காட்சியில் credentialHealth அடங்கும்: ஆய்வு-தற்காலிகச் சேமிப்பக அளவெண்கள், failed>0 ஆக இருக்கும்போது failedConnections, மற்றும் staleDbNonOkCount (SQLite-இன் நிலைத்திருக்கும் test_status, அளவுகோல் அல்ல). MONITORING_GUIDE.md-ஐப் பார்க்கவும்.
/api/cache/stats GET/DELETE தற்காலிகச் சேமிப்பகப் புள்ளிவிவரங்கள் / அழித்தல்
/api/modality-bridge/stats GET நினைவகத்திலுள்ள attempts, வெற்றிகள்/bridged, தோல்விகள், தற்காலிகச் சேமிப்பகப் பொருத்தங்கள், totalLatencyMs, latencySamples, மாதிரிகளை அடிப்படையாகக் கொண்ட averageLatencyMs, மற்றும் கடைசிப் பயன்பாட்டு நேரம் (மறுதொடக்கத்தில் மீட்டமைக்கப்படும்; மேலாண்மை அங்கீகாரம்)
/api/modality-bridge/video/runtime GET மேலாண்மை அங்கீகாரம்/ஆய்வுக்கு முன் கடுமையான நம்பகமான loopback சரிபார்ப்பு; தூய்மைப்படுத்தப்பட்ட FFmpeg/ffprobe கிடைப்புநிலை மற்றும் பதிப்புகள் (no-store)
/api/modality-bridge/video/extract POST உட்புற அங்கீகரிக்கப்பட்ட நம்பகமான loopback பைட் தரகர்; 50 MiB உள்ளீடு, வரம்புக்குட்பட்ட வரிசை/32 MiB வெளியீடு, 503 கொள்ளளவு, 499 துண்டிப்பு, 504 காலக்கெடு; இது பொது பதிவேற்ற API அல்ல

காப்புப்பிரதி & ஏற்றுமதி/இறக்குமதி

முனைப்புள்ளி முறை விளக்கம்
/api/db-backups GET கிடைக்கக்கூடிய காப்புப்பிரதிகளைப் பட்டியலிடுதல்
/api/db-backups PUT கைமுறை காப்புப்பிரதியை உருவாக்குதல்
/api/db-backups POST குறிப்பிட்ட காப்புப்பிரதியிலிருந்து மீட்டமைத்தல்
/api/db-backups/export GET தரவுத்தளத்தை .sqlite கோப்பாகப் பதிவிறக்குதல்
/api/db-backups/import POST தரவுத்தளத்தை மாற்றுவதற்கு .sqlite கோப்பைப் பதிவேற்றுதல்
/api/db-backups/exportAll GET முழுக் காப்புப்பிரதியை .tar.gz காப்பகமாகப் பதிவிறக்குதல்

மேக ஒத்திசைவு

முனைப்புள்ளி முறை விளக்கம்
/api/sync/cloud பல்வேறு மேக ஒத்திசைவுச் செயல்பாடுகள்
/api/sync/initialize POST ஒத்திசைவைத் தொடங்குதல்
/api/cloud/* பல்வேறு மேக மேலாண்மை

சுரங்கங்கள்

முனைப்புள்ளி முறை விளக்கம்
/api/tunnels/cloudflared GET கட்டுப்பாட்டுப் பலகைக்கான Cloudflare Quick Tunnel நிறுவல்/இயக்கநிலைத் தகவலைப் பெறுதல்
/api/tunnels/cloudflared POST Cloudflare Quick Tunnel-ஐ இயக்குதல் அல்லது முடக்குதல் (action=enable/disable)
/api/tunnels/ngrok GET கட்டுப்பாட்டுப் பலகைக்கான ngrok Tunnel இயக்கநிலைத் தகவலைப் பெறுதல்
/api/tunnels/ngrok POST ngrok Tunnel-ஐ இயக்குதல் அல்லது முடக்குதல் (action=enable/disable)

CLI கருவிகள்

முனைப்புள்ளி முறை விளக்கம்
/api/cli-tools/claude-settings GET Claude CLI நிலை
/api/cli-tools/codex-settings GET Codex CLI நிலை
/api/cli-tools/droid-settings GET Droid CLI நிலை
/api/cli-tools/openclaw-settings GET OpenClaw CLI நிலை
/api/cli-tools/runtime/[toolId] GET பொதுவான CLI இயக்கச்சூழல்

CLI பதில்களில் இவை அடங்கும்: installed, runnable, command, commandPath, runtimeMode, reason.

ACP முகவர்கள்

முனைப்புள்ளி முறை விளக்கம்
/api/acp/agents GET கண்டறியப்பட்ட அனைத்து முகவர்களையும் (உள்ளமைந்தவை + தனிப்பயன்) நிலையுடன் பட்டியலிடுதல்
/api/acp/agents POST தனிப்பயன் முகவரைச் சேர்த்தல் அல்லது கண்டறிதல் தற்காலிகச் சேமிப்பைப் புதுப்பித்தல்
/api/acp/agents DELETE id வினவல் அளவுருவின்படி ஒரு தனிப்பயன் முகவரை அகற்றுதல்

GET பதிலில் agents[] (id, name, binary, version, installed, protocol, isCustom) மற்றும் summary (total, installed, notFound, builtIn, custom) ஆகியவை அடங்கும்.

மீட்சித்திறன் & வீத வரம்புகள்

முனைப்புள்ளி முறை விளக்கம்
/api/resilience GET/PATCH கோரிக்கை வரிசை, இணைப்பு காத்திருப்புக் காலம், வழங்குநர் சுற்று முறிப்பான் மற்றும் காத்திருப்பு அமைப்புகளைப் பெறுதல்/புதுப்பித்தல்
/api/resilience/reset POST வழங்குநர் சுற்று முறிப்பான்களை மீட்டமைத்தல்
/api/resilience/model-cooldowns GET மீதமுள்ள நேரத்தின்படி வரிசைப்படுத்தப்பட்ட, செயலில் உள்ள ஒவ்வொரு (வழங்குநர், இணைப்பு, மாதிரி) முடக்கத்தையும் பட்டியலிடுதல்
/api/resilience/model-cooldowns DELETE மாதிரி முடக்கத்தை நீக்குதல் — குறிப்பிட்டதை நீக்க உடல் {provider, model} அல்லது அனைத்தையும் அழிக்க {all: true}
/api/rate-limits GET ஒவ்வொரு கணக்கிற்குமான வீத வரம்பு நிலை
/api/rate-limit GET உலகளாவிய வீத வரம்பு உள்ளமைவு

/api/resilience/* வழிகள் நான்கிற்கும் மேலாண்மை அங்கீகாரம் (requireManagementAuth) தேவை. வழங்குநர் சுற்று முறிப்பான், இணைப்புக் காத்திருப்புக் காலம் மற்றும் மாதிரி முடக்கம் ஆகியவற்றின் முழுமையான விவரங்களுக்கு மீட்சித்திறன் (விரிவாக்கப்பட்டது) என்பதைப் பார்க்கவும்.

மதிப்பீடுகள்

முனைப்புள்ளி முறை விளக்கம்
/api/evals GET/POST மதிப்பீட்டுத் தொகுப்புகளைப் பட்டியலிடுதல் / மதிப்பீட்டை இயக்குதல்

கொள்கைகள்

முனைப்புள்ளி முறை விளக்கம்
/api/policies GET/POST/DELETE வழிப்படுத்தல் கொள்கைகளை நிர்வகித்தல்

இணக்கம்

முனைப்புள்ளி முறை விளக்கம்
/api/compliance/audit-log GET இணக்கத் தணிக்கைப் பதிவு (கடைசி N)

v1beta (Gemini-இணக்கமானது)

முனைப்புள்ளி முறை விளக்கம்
/v1beta/models GET Gemini வடிவத்தில் மாதிரிகளைப் பட்டியலிடுதல்
/v1beta/models/{...path} POST Gemini generateContent முனைப்புள்ளி

சொந்த Gemini SDK இணக்கத்தன்மையை எதிர்பார்க்கும் கிளையண்டுகளுக்காக இந்த முனைப்புள்ளிகள் Gemini-இன் API வடிவமைப்பைப் பிரதிபலிக்கின்றன.

உள் / அமைப்பு API-கள்

இறுதிப்புள்ளி முறை விளக்கம்
/api/init GET பயன்பாட்டுத் தொடக்கச் சரிபார்ப்பு (முதல் இயக்கத்தில் பயன்படுத்தப்படும்)
/api/tags GET Ollama-இணக்கமான மாதிரி குறிச்சொற்கள் (Ollama கிளையண்டுகளுக்காக)
/api/restart POST சேவையகத்தைச் சீராக மறுதொடக்கம் செய்யத் தூண்டும்
/api/shutdown POST சேவையகத்தைச் சீராக நிறுத்தத் தூண்டும்
/api/system/env/repair POST OAuth வழங்குநரின் சூழல் மாறிகளைப் பழுதுபார்க்கும்

குறிப்பு: இந்த இறுதிப்புள்ளிகள் கணினியால் அகத்தே அல்லது Ollama கிளையண்ட் இணக்கத்தன்மைக்காகப் பயன்படுத்தப்படுகின்றன. பொதுவாக இறுதிப் பயனர்கள் இவற்றை அழைப்பதில்லை.

OAuth சூழல் பழுதுபார்ப்பு (v3.6.1+)

POST /api/system/env/repair
Content-Type: application/json

{
  "provider": "claude-code"
}

குறிப்பிட்ட வழங்குநருக்கான விடுபட்ட அல்லது சிதைந்த OAuth சூழல் மாறிகளைப் பழுதுபார்க்கிறது. பின்வருவனவற்றைத் திருப்பி வழங்குகிறது:

{
  "success": true,
  "repaired": ["CLAUDE_CODE_OAUTH_CLIENT_ID", "CLAUDE_CODE_OAUTH_CLIENT_SECRET"],
  "backupPath": "/home/user/.omniroute/backups/env-repair-2026-04-11.bak"
}

ஒலி எழுத்துப்பதிவு

POST /v1/audio/transcriptions
Authorization: Bearer your-api-key
Content-Type: multipart/form-data

உள்ளமைக்கப்பட்ட எந்தவொரு STT வழங்குநரையும் பயன்படுத்தி ஒலிக் கோப்புகளை எழுத்துப்பதிவு செய்யலாம். பாதையின் முதல் பகுதி மூல வழங்குநரைத் தேர்ந்தெடுக்கிறது (openai/…, deepgram/…). வேறொரு வழங்குநரின் மாதிரியை மறுஏற்றுமதி செய்யும் நுழைவாயில்கள் தகுதிப்படுத்தப்பட்ட id-ஐப் பயன்படுத்துகின்றன (openrouter/deepgram/nova-3).

கோரிக்கை:

curl -X POST http://localhost:20128/v1/audio/transcriptions \
  -H "Authorization: Bearer your-api-key" \
  -F "file=@recording.mp3" \
  -F "model=openai/whisper-1"

பதில்:

{
  "text": "Hello, this is the transcribed audio content.",
  "task": "transcribe",
  "language": "en",
  "duration": 12.5
}

எடுத்துக்காட்டு மாதிரி id-கள்: openai/whisper-1 (OpenAI விசை தேவை), openrouter/deepgram/nova-3 (OpenRouter விசை தேவை), deepgram/nova-3 (மூல Deepgram விசை தேவை). வெறும் deepgram/nova-3 கோரிக்கை OpenRouter-ஐப் பயன்படுத்தாது.

ஆதரிக்கப்படும் வடிவங்கள்: mp3, wav, m4a, flac, ogg, webm.


Ollama இணக்கத்தன்மை

Ollama-வின் API வடிவத்தைப் பயன்படுத்தும் கிளையன்ட்களுக்கு:

# அரட்டை முனைப்புள்ளி (Ollama வடிவம்)
POST /v1/api/chat

# மாதிரிப் பட்டியல் (Ollama வடிவம்)
GET /api/tags

கோரிக்கைகள் Ollama மற்றும் உள் வடிவங்களுக்கு இடையே தானாக மொழிபெயர்க்கப்படுகின்றன.

டோக்கன் சேர்க்கப்பட்ட VS Code / தலைப்பில்லா மாற்றுப்பெயர்கள்

ஒரு ஒருங்கிணைப்பால் Authorization தலைப்பைச் சேர்க்க முடியாதபோதும், API விசையை அடிப்படை URL-இல் உட்பொதிக்க வேண்டியபோதும் இந்த மாற்றுப்பெயர்களைப் பயன்படுத்தவும்.

# OpenAI பாணி பட்டியல் மாற்றுப்பெயர்
GET /api/v1/vscode/{token}/
GET /api/v1/vscode/{token}/models

# OpenAI பாணி அரட்டை மாற்றுப்பெயர்கள்
POST /api/v1/vscode/{token}/chat/completions
POST /api/v1/vscode/{token}/responses

# Ollama பாணி மாற்றுப்பெயர்கள்
POST /api/v1/vscode/{token}/api/chat
GET /api/v1/vscode/{token}/api/tags

எடுத்துக்காட்டு:

curl https://your-host.example/api/v1/vscode/YOUR_API_KEY/models
curl -X POST https://your-host.example/api/v1/vscode/YOUR_API_KEY/chat/completions \
  -H "Content-Type: application/json" \
  -d '{"model":"auto","messages":[{"role":"user","content":"hello"}]}'

குறிப்புகள்:

  • டோக்கன் சேர்க்கப்பட்ட மாற்றுப்பெயர்கள் /v1/* மற்றும் /api/tags பயன்படுத்தும் அதே கையாளிகளை மீண்டும் பயன்படுத்துகின்றன; பதில் வடிவங்கள் மாற்றமின்றி இருக்கும்.
  • கிளையன்ட் தனிப்பயன் தலைப்புகளை ஆதரிக்கும்போதெல்லாம் Authorization: Bearer ... பயன்படுத்துவதற்கு முன்னுரிமை அளிக்கவும்.
  • URL அடிப்படையிலான டோக்கன்கள், OmniRoute-க்கு வெளியேயுள்ள reverse-proxy பதிவுகள், உலாவி வரலாறு மற்றும் தொலைஅளவீட்டுத் தரவுகளில் தோன்றக்கூடும். அவற்றை இயல்புநிலை அங்கீகார முறையாக அல்லாமல், இணக்கத்தன்மைக்கான ஒரு விருப்பமாகக் கருதவும்.

தொலைஅளவீடு

# தாமதத் தொலைஅளவீட்டுச் சுருக்கத்தைப் பெறுதல் (ஒவ்வொரு வழங்குநருக்கும் p50/p95/p99)
GET /api/telemetry/summary

பதில்:

{
  "providers": {
    "claudeCode": { "p50": 245, "p95": 890, "p99": 1200, "count": 150 },
    "github": { "p50": 180, "p95": 620, "p99": 950, "count": 320 }
  }
}

வரவுசெலவுத் திட்டம்

# அனைத்து API விசைகளுக்குமான வரவுசெலவுத் திட்ட நிலையைப் பெறுதல்
GET /api/usage/budget

# வரவுசெலவுத் திட்டத்தை அமைத்தல் அல்லது புதுப்பித்தல்
POST /api/usage/budget
Content-Type: application/json

{
  "apiKeyId": "key-123",
  "dailyLimitUsd": 5.00,
  "weeklyLimitUsd": 30.00,
  "monthlyLimitUsd": 100.00,
  "warningThreshold": 0.8,
  "resetInterval": "monthly"
}

திட்டவடிவக் குறிப்புகள் (setBudgetSchema): apiKeyId கட்டாயமானது; dailyLimitUsd, weeklyLimitUsd, அல்லது monthlyLimitUsd ஆகியவற்றில் குறைந்தது ஒன்று பூஜ்ஜியத்தைவிட அதிகமாக இருக்க வேண்டும். விருப்பப் புலங்கள்: warningThreshold (01), resetInterval (daily | weekly | monthly), resetTime (HH:MM). பழைய {keyId, limit, period} வடிவம் 400 Bad Request என்பதைத் திருப்பியளிக்கும்.

டோக்கன் வரம்புகள்

ஒவ்வொரு API விசைக்குமான டோக்கன் ஒதுக்கீடுகள் (மேலே உள்ள USD அடிப்படையிலான ஒதுக்கீட்டிலிருந்து வேறுபட்டவை). கோரிக்கை பாதையிலேயே அமல்படுத்தப்படுகின்றன: ஒரு விசையின் தற்போதைய சாளரப் பயன்பாடு அதன் வரம்பை எட்டும்போது, கோரிக்கைகள் 429 Too Many Requests உடன் நிராகரிக்கப்படும். வரம்புகளை ஒரு குறிப்பிட்ட model, ஒரு provider ஆகியவற்றுக்கு வரையறுக்கலாம் அல்லது விசை முழுவதும் global ஆகப் பயன்படுத்தலாம்; ஒரு கோரிக்கைக்குப் பல வரம்புகள் பொருந்தும்போது, மிகவும் கட்டுப்பாடான வரம்பே செயல்படுத்தப்படும்.

# ஒரு விசையின் டோக்கன் வரம்புகளைப் பட்டியலிடுதல் (நேரடி சாளரப் பயன்பாட்டையும் உள்ளடக்கும்)
GET /api/usage/token-limits?apiKeyId=key-123

# ஒரு டோக்கன் வரம்பை உருவாக்குதல் அல்லது புதுப்பித்தல்
POST /api/usage/token-limits
Content-Type: application/json

{
  "apiKeyId": "key-123",
  "scopeType": "model",
  "scopeValue": "openai/gpt-4o",
  "tokenLimit": 1000000,
  "resetInterval": "monthly",
  "enabled": true
}

# id மூலம் ஒரு டோக்கன் வரம்பை நீக்குதல்
DELETE /api/usage/token-limits?id=tl-abc

ஸ்கீமா குறிப்புகள் (setTokenLimitSchema): apiKeyId மற்றும் scopeType (model | provider | global) கட்டாயமானவை. scopeType என்பது global ஆக இல்லாவிட்டால் scopeValue கட்டாயமாகும் (எ.கா., model வரம்பிற்கான ஒரு மாதிரி id, provider வரம்பிற்கான ஒரு வழங்குநர் id). tokenLimit ஒரு நேர்ம முழு எண்ணாக இருக்க வேண்டும் (சரத்திலிருந்து மாற்றப்படும்). விருப்பத்திற்குரியவை: id (உருவாக்கத் தவிர்க்கவும், புதுப்பிக்க வழங்கவும்), resetInterval (daily | weekly | monthly, இயல்புநிலை monthly), resetTime (HH:MM), enabled (இயல்புநிலை true). GET பதில்கள் ஒவ்வொரு வரம்பையும் tokensUsed, remaining, windowStart, periodStartAt, மற்றும் nextResetAt ஆகியவற்றுடன் செறிவூட்டுகின்றன. இது ஒரு மேலாண்மை-வகுப்பு முனைப்புள்ளி (அங்கீகாரம் authz செயலாக்கத் தொடரால் மையமாக அமல்படுத்தப்படுகிறது).

கோரிக்கை செயலாக்கம்

  1. கிளையண்ட் /v1/* க்கு கோரிக்கையை அனுப்புகிறது
  2. வழித்தடக் கையாளி handleChat, handleEmbedding, handleAudioTranscription, அல்லது handleImageGeneration ஐ அழைக்கிறது
  3. மாதிரி தீர்மானிக்கப்படுகிறது (நேரடி வழங்குநர்/மாதிரி அல்லது மாற்றுப்பெயர்/காம்போ)
  4. கணக்குக் கிடைப்புத்தன்மை வடிகட்டலுடன் உள்ளூர் DB-யிலிருந்து சான்றுகள் தேர்ந்தெடுக்கப்படுகின்றன
  5. அரட்டைக்கு: handleChatCore அர்த்தவியல்/கையொப்பத் தற்காலிகச் சேமிப்பைச் சரிபார்த்து, காம்போ சுருக்க அமைப்புகளைத் தீர்மானிக்கிறது
  6. இயக்கப்பட்டிருக்கும்போது வழங்குநர் மொழிபெயர்ப்புக்கு முன் முன்செயல் சுருக்கம் இயங்குகிறது (lite, Caveman, RTK, அல்லது அடுக்கப்பட்டவை)
  7. வழங்குநர் செயல்படுத்தி மேல்நிலை கோரிக்கையை அனுப்புகிறது
  8. பதில் மீண்டும் கிளையண்ட் வடிவத்திற்கு மொழிபெயர்க்கப்படுகிறது (அரட்டை) அல்லது உள்ளபடியே திருப்பி அனுப்பப்படுகிறது (உட்பொதிவுகள்/படங்கள்/ஒலி)
  9. பயன்பாடு, சுருக்கப் பகுப்பாய்வு மற்றும் கோரிக்கைப் பதிவுகள் பதியப்படுகின்றன
  10. காம்போ விதிகளின்படி பிழைகளின்போது மாற்று நடைமுறை பயன்படுத்தப்படுகிறது

முழுமையான கட்டமைப்புக் குறிப்பு: ARCHITECTURE.md


காம்போ மேலாண்மை

உயர்நிலை வழித்தடக் காம்போக்களை (/api/combos* என்பதன் கீழ் ஏற்கனவே சுருக்கப்பட்டுள்ளவை) ஒரு மாதிரி id வடிவத்திலிருந்து 1:1 ஆகவும் பொருத்தலாம்; இது OpenAI-பாணி மாதிரி id ஒன்றை வெளிப்படையாகத் தெரியாமல் ஒரு காம்போவிற்குத் திருப்பிவிட அனுமதிக்கிறது.

முறை பாதை விளக்கம்
GET /api/model-combo-mappings அனைத்து மாதிரி→காம்போ பொருத்தங்களையும் பட்டியலிடுதல்
POST /api/model-combo-mappings பொருத்தத்தை உருவாக்குதல் — உடல்: {pattern, comboId, priority?, enabled?, description?}
GET /api/model-combo-mappings/[id] ஒற்றைப் பொருத்தத்தைப் பெறுதல்
PUT /api/model-combo-mappings/[id] ஏற்கனவே உள்ள பொருத்தத்தின் புலங்களைப் புதுப்பித்தல்
DELETE /api/model-combo-mappings/[id] ஒரு பொருத்தத்தை அகற்றுதல்

அங்கீகாரம்: மேலாண்மை அமர்வு/API விசை (requireManagementAuth).


Webhooks

OmniRoute நிகழ்வுகளுக்கான வெளிச்செல்லும் webhook சந்தாக்கள் (கோரிக்கை நிறைவடைதல், ஒதுக்கீடு தீர்ந்துபோதல், விசைச் சுழற்சி போன்றவை).

முறை பாதை விளக்கம்
GET /api/webhooks Webhook-களைப் பட்டியலிடும் (ரகசியங்கள் <prefix>... என மறைக்கப்படும்)
POST /api/webhooks Webhook-ஐ உருவாக்கும் — உடல்: {url, events?: ["*"], secret?, description?}
GET /api/webhooks/[id] ஒரு webhook-ஐப் பெறும்
PUT /api/webhooks/[id] url/events/secret/description-ஐப் புதுப்பிக்கும்
DELETE /api/webhooks/[id] ஒரு webhook-ஐ அகற்றும்
POST /api/webhooks/[id]/test Webhook URL-க்கு ஒரு சோதனை payload-ஐ அனுப்பி, விநியோக நிலையைத் திருப்பியளிக்கும்

அங்கீகாரம்: மேலாண்மை அமர்வு/API விசை (requireManagementAuth).


பதிவுசெய்யப்பட்ட விசைகள் (தானியங்கு மேலாண்மை)

தினசரி/மணிநேர ஒதுக்கீடுகளுடன், ஆதரவுப் provider/account-க்கு எதிராக API விசைகளை வழங்கவும் சுழற்சி செய்யவும் தானியங்கு விசை மேலாண்மைத் துணைஅமைப்பால் பயன்படுத்தப்படுகிறது.

முறை பாதை விளக்கம்
GET /api/v1/registered-keys பதிவுசெய்யப்பட்ட விசைகளைப் பட்டியலிடும் (மறைக்கப்பட்ட முன்னொட்டு மட்டும்)
POST /api/v1/registered-keys ஒரு புதிய பதிவுசெய்யப்பட்ட விசையை வழங்கும் — உடல்: {name, provider?, accountId?, idempotencyKey?, expiresAt?, dailyBudget?, hourlyBudget?}. மூல விசையை ஒரே முறை திருப்பியளிக்கும். ஒதுக்கீடு மறுக்கப்பட்டால் 429-ஐத் திருப்பியளிக்கும்.
GET /api/v1/registered-keys/[id] பதிவுசெய்யப்பட்ட விசையின் metadata-ஐப் பெறும் (மூல விசைத் தரவு இல்லை)
DELETE /api/v1/registered-keys/[id] பதிவுசெய்யப்பட்ட விசையைத் திரும்பப்பெறும்
POST /api/v1/registered-keys/[id]/revoke வெளிப்படையான திரும்பப்பெறல் endpoint (DELETE போன்ற அதே விளைவு)

அங்கீகாரம்: Bearer API விசை (isAuthenticated). /v1/quotas/check மற்றும் /v1/issues/report ஆகியவற்றையும் பார்க்கவும்.


முகவர்கள் நெறிமுறை

OmniRoute பயனர்களின் சார்பாகத் தொலைநிலையில் செயல்படுத்தப்படும் கிளவுட் முகவர் பணிகள் (Claude Code, Codex Cloud, OpenHands போன்றவை).

முறை பாதை விளக்கம்
GET /api/v1/agents/tasks பணிகளைப் பட்டியலிடும் — விருப்பத்தேர்வாக ?provider=, ?status=, ?limit= (1500, இயல்புநிலை 50)
POST /api/v1/agents/tasks பணியை உருவாக்கும் — கோரிக்கை உடல் CreateCloudAgentTaskSchema மூலம் சரிபார்க்கப்படும் (providerId, prompt, source, options?). பணி உறையுடன் 201-ஐ வழங்கும்
DELETE /api/v1/agents/tasks?id=... ஒரு பணியை நீக்கும்
GET /api/v1/agents/tasks/[id] பணியைப் படிக்கும் — external_id அமைக்கப்பட்டிருக்கும்போது, மேல்நிலை கிளவுட் முகவரிடமிருந்து நிலையை ஒத்தியக்க முறையில் புதுப்பிக்கும்
POST /api/v1/agents/tasks/[id] வேறுபடுத்தப்பட்ட செயல்: {action: "approve"}, {action: "message", message}, அல்லது {action: "cancel"}
DELETE /api/v1/agents/tasks/[id] id மூலம் ஒரு குறிப்பிட்ட பணியை நீக்கும்

அங்கீகாரம்: ஒவ்வொரு முறைக்கும் மேலாண்மை அங்கீகாரம் தேவை (requireCloudAgentManagementAuth). v3.8.0-க்கு முன்பு இவை அங்கீகரிக்கப்படாமல் இருந்தன — முறிவு மாற்றத்திற்கு 588a0333 commit-ஐப் பார்க்கவும்.

# Claude Code கிளவுட் பணியை உருவாக்கவும்
curl -X POST http://localhost:20128/api/v1/agents/tasks \
  -H "Authorization: Bearer your-management-key" \
  -H "Content-Type: application/json" \
  -d '{"providerId":"claude-code-cloud","prompt":"Fix the failing test","source":{"repo":"...","branch":"..."}}'

மேலாண்மை ப்ராக்ஸிகள்

வழங்குநர்கள், கணக்குகள் அல்லது உலகளாவிய அளவில் ஒதுக்கக்கூடிய வெளிச்செல்லும் HTTP(S)/SOCKS ப்ராக்ஸிகள்.

முறை பாதை விளக்கம்
GET /api/v1/management/proxies ப்ராக்ஸிகளைப் பட்டியலிடும் (?id= உடன் ஒன்றை வழங்கும்; ?id=&where_used=1 உடன் ஒதுக்கீட்டு வரைபடத்தை வழங்கும்)
POST /api/v1/management/proxies ப்ராக்ஸியை உருவாக்கும் — கோரிக்கை உடல் createProxyRegistrySchema மூலம் சரிபார்க்கப்படும்
PATCH /api/v1/management/proxies ப்ராக்ஸியைப் புதுப்பிக்கும் — கோரிக்கை உடல் updateProxyRegistrySchema மூலம் சரிபார்க்கப்படும் (id தேவை)
DELETE /api/v1/management/proxies?id=...&force=1 ப்ராக்ஸியை நீக்கும் (ஒதுக்கீடுகளைப் பிரிக்க force=1-ஐப் பயன்படுத்தவும்)
GET /api/v1/management/proxies/assignments ஒதுக்கீடுகளைப் பட்டியலிடும் — proxy_id, scope, scope_id மூலம் வடிகட்டலாம்; ஒரு இணைப்பிற்கான செயலில் உள்ள ப்ராக்ஸியைத் தீர்மானிக்க resolve_connection_id=<id>-ஐ அனுப்பவும்
PUT /api/v1/management/proxies/assignments ஒதுக்கும் — கோரிக்கை உடல் proxyAssignmentSchema மூலம் சரிபார்க்கப்படும் ({scope, scopeId?, proxyId?}). டிஸ்பாட்சர் தற்காலிகச் சேமிப்பை அழிக்கும்
PUT /api/v1/management/proxies/bulk-assign மொத்தமாக ஒதுக்கும் — கோரிக்கை உடல் bulkProxyAssignmentSchema மூலம் சரிபார்க்கப்படும் ({scope, scopeIds[], proxyId?})
GET /api/v1/management/proxies/health?hours=24 ஒரு காலச் சாளரத்தில் ஒருங்கிணைக்கப்பட்ட ப்ராக்ஸி ஆரோக்கியம் (வெற்றி/தோல்வி எண்ணிக்கைகள், தாமதம்)

அங்கீகாரம்: ஒவ்வொரு வழித்தடத்திலும் மேலாண்மை அமர்வு/API விசை தேவை (requireManagementAuth).

பணி விளக்கத்திலுள்ள POST /api/v1/management/proxies/[id]/assignments மற்றும் POST /api/v1/management/proxies/[id]/health ஆகியவை மேலே காட்டப்பட்டுள்ள தட்டையான /assignments மற்றும் /health வழித்தடங்களால் வழங்கப்படுகின்றன — கோடுதளத்தில் ஒவ்வொரு id-க்கும் தனித்துணை வழித்தடங்கள் இல்லை.


மீள்திறன் (விரிவாக்கப்பட்டது)

OmniRoute மூன்று தனித்தனியான தற்காலிகத் தோல்வி வழிமுறைகளை வழங்குகிறது; கீழே உள்ள மேலாண்மை முனைப்புள்ளிகள் அவற்றை வாசிக்கவும் மேலெழுதவும் இயக்குநர்களை அனுமதிக்கின்றன:

வரம்பு நிலைச் சேமிப்பகம் வாசித்தல் மீட்டமைத்தல் / அழித்தல்
வழங்குநர் பிரேக்கர் domain_circuit_breakers + நினைவகத்தில் /api/monitoring/health POST /api/resilience/reset
இணைப்பு காத்திருப்பு வழங்குநர் இணைப்புகளில் rateLimitedUntil /api/rate-limits, /api/providers/[id] (தேவைக்கேற்ப மீண்டும் இயக்கப்படும்; வழங்குநர் PUT வழியாக அழிக்கவும்)
மாதிரி பூட்டல் நினைவகத்திலுள்ள மாதிரி-கிடைப்புத்தன்மைப் பதிவகம் GET /api/resilience/model-cooldowns DELETE /api/resilience/model-cooldowns

PATCH /api/resilience ஆனது providerBreaker.oauth மற்றும் providerBreaker.apikey என்பவற்றின் கீழ் வழங்குநர் பிரேக்கர் மேலெழுதல்களை ஏற்கிறது. ஒவ்வொரு சுயவிவரமும் degradationThreshold, failureThreshold, மற்றும் resetTimeoutMs ஆகியவற்றை ஆதரிக்கிறது; இதே புலங்கள் கட்டுப்பாட்டுப் பலகம் → அமைப்புகள் → மீள்திறன் என்பதிலும் வழங்கப்படுகின்றன.

# ஒற்றை மாதிரிப் பூட்டலை அழிக்கவும்
curl -X DELETE http://localhost:20128/api/resilience/model-cooldowns \
  -H "Cookie: auth_token=..." \
  -H "Content-Type: application/json" \
  -d '{"provider":"openai","model":"gpt-4o-mini"}'

# அனைத்து பூட்டல்களையும் அழிக்கவும்
curl -X DELETE http://localhost:20128/api/resilience/model-cooldowns \
  -H "Cookie: auth_token=..." \
  -d '{"all":true}'

முழுமையான கருத்தியல் குறிப்புக்கும் பிரேக்கரின் இயல்புநிலைகளுக்கும்: CLAUDE.md → "மீள்திறன் இயக்கநேர நிலை" என்பதைப் பார்க்கவும்.


திறன்கள்

தனிப்பயன் இயக்கக்கூடிய கையாளுநர்களுடன் OmniRoute-ஐ விரிவாக்குவதற்கான திறன் கட்டமைப்பு மற்றும் சந்தைத்தள ஒருங்கிணைப்புகள்.

முறை பாதை விளக்கம்
GET /api/skills நிறுவப்பட்ட திறன்களைப் பட்டியலிடும் — ?q=, ?mode=on|off|auto, ?source=skillsmp|skillssh|local ஆகியவற்றால் வடிகட்டலாம், பக்கமிடப்பட்டது
GET /api/skills/[id] ஒரு திறனைப் பெறும்
PUT /api/skills/[id] திறனைப் புதுப்பிக்கும் (பெயர், விளக்கம், பயன்முறை, திட்டவடிவம், கையாளுநர், குறிச்சொற்கள்)
DELETE /api/skills/[id] ஒரு திறனை நிறுவல் நீக்கும்
POST /api/skills/install மூல manifest-இலிருந்து ஒரு திறனை நிறுவும் — கோரிக்கை உடல்: {name, version, description, schema:{input, output}, handlerCode, apiKeyId?}
GET /api/skills/executions சமீபத்திய திறன் செயலாக்கங்களைப் பட்டியலிடும் (உள்ளீடுகள்/வெளியீடுகள்/காலஅளவைக் கொண்ட தணிக்கைத் தடம்)
GET /api/skills/marketplace?q=... SkillsMP சந்தைத்தளத்திலிருந்து தேடல்/பிரபலமானவற்றின் பட்டியல் (skillsmpApiKey அமைப்பு தேவை)
POST /api/skills/marketplace/install SkillsMP-இலிருந்து id மூலம் ஒரு திறனை நிறுவும்
GET /api/skills/skillssh?q=&limit= skills.sh பதிவகத்தைத் தேடும்
POST /api/skills/skillssh/install skills.sh-இலிருந்து id மூலம் ஒரு திறனை நிறுவும்

அங்கீகாரம்: மேலாண்மை அமர்வு/API விசை. சந்தைத்தளத் தேடல் வழித்தடங்கள் மேலாண்மை அங்கீகாரம் அல்லது Bearer API விசை (isAuthenticated) ஆகியவற்றில் ஏதேனும் ஒன்றை ஏற்கின்றன.


நினைவகம்

ஒவ்வொரு API விசை / அமர்வுக்கும் வரையறுக்கப்பட்ட, நிலையான உரையாடல்/உண்மைத் தகவல் நினைவகச் சேமிப்பகம்.

முறை பாதை விளக்கம்
GET /api/memory நினைவகங்களைப் பட்டியலிடும் — ?apiKeyId=, ?type=, ?sessionId=, ?q=, மேலும் offset/limit அல்லது page/limit பக்கமாக்கல்
POST /api/memory நினைவகத்தை உருவாக்கும் — Zod மூலம் சரிபார்க்கப்படும் body: {content, key, type?, sessionId?, apiKeyId?, metadata?, expiresAt?}
GET /api/memory/[id] ஒரு நினைவகத்தைப் பெறும்
DELETE /api/memory/[id] ஒரு நினைவகத்தை நீக்கும்
GET /api/memory/health நினைவகத் துணைஅமைப்பின் ஆரோக்கியம் (DB இணைப்பு, embeddings பின்தளம், vector index நிலை)

அங்கீகாரம்: மேலாண்மை அமர்வு/API விசை (requireManagementAuth). type enum: FACTUAL, EPISODIC, SEMANTIC, PROCEDURAL (src/lib/memory/types.ts-இல் உள்ள MemoryType-ஐப் பார்க்கவும்).


MCP சேவையகம்

OmniRoute ஆனது 3 பரிமாற்ற முறைகள் (stdio, SSE, streamable-http) மற்றும் வரையறுக்கப்பட்ட கருவிகளைக் கொண்ட உட்பொதிக்கப்பட்ட Model Context Protocol சேவையகத்துடன் வழங்கப்படுகிறது. கீழேயுள்ள dashboard முனைப்புள்ளிகள் நிலை/தணிக்கைத் தரவைப் படித்து, HTTP பரிமாற்ற முறைகளை proxy செய்கின்றன.

முறை பாதை விளக்கம்
GET /api/mcp/status இதயத்துடிப்பு, பரிமாற்ற முறை, இணையநிலை, கடைசி அழைப்பு, முன்னணி கருவிகள், 24 மணிநேர வெற்றி விகிதம்
GET /api/mcp/tools name, description, scopes, phase, auditLevel, sourceEndpoints ஆகியவற்றுடன் MCP கருவிகளின் பட்டியல்
GET /api/mcp/sse SSE பரிமாற்ற முறைக்கான SSE ஸ்ட்ரீமைத் திறக்கும் (MCP முடக்கப்பட்டிருந்தாலோ பரிமாற்ற முறை பொருந்தாவிட்டாலோ 503-ஐத் திருப்பியளிக்கும்)
POST /api/mcp/sse SSE பரிமாற்ற முறையில் JSON-RPC frame-ஐ அனுப்பும்
GET /api/mcp/stream Streamable HTTP பரிமாற்ற முறையின் SSE பக்கத்தைத் திறக்கும் (சேவையகத்தால் தொடங்கப்படும் செய்திகள்)
POST /api/mcp/stream Streamable HTTP பரிமாற்ற முறையில் JSON-RPC frame-ஐ அனுப்பும்
DELETE /api/mcp/stream Streamable HTTP அமர்வை முடிக்கும்
GET /api/mcp/audit தணிக்கைப் பதிவை வினவும் — ?limit=, ?offset=, ?tool=, `?success=true false, ?apiKeyId=`
GET /api/mcp/audit/stats ஒருங்கிணைக்கப்பட்ட தணிக்கைப் புள்ளிவிவரங்கள் (மொத்தங்கள், வெற்றி விகிதம், சராசரி காலஅளவு, முன்னணி கருவிகள்)

அங்கீகாரம்: sse/stream பரிமாற்ற முறைகள் MCP-க்கான குறிப்பிட்ட அங்கீகார இடைமுகத்தை மதிக்கின்றன (mcp scope கொண்ட Bearer API விசை); status/tools/audit* வழித்தடங்களை dashboard-இலிருந்து படிக்கலாம் (dashboard host-ஐ அணுகுவதற்கு அப்பால் கூடுதல் அங்கீகாரம் தேவையில்லை).

இரண்டு HTTP பரிமாற்ற முறைகளும் settings.mcpEnabled மற்றும் settings.mcpTransport ஆகியவற்றால் கட்டுப்படுத்தப்படுகின்றன — பரிமாற்ற முறை பொருந்தாமை 400-ஐத் திருப்பியளிக்கும்; MCP முடக்கப்பட்ட நிலை 503-ஐத் திருப்பியளிக்கும்.


A2A சேவையகம்

OmniRoute ஆனது A2A (Agent-to-Agent) JSON-RPC 2.0 முனைப்புள்ளியையும், ஆய்வு/முகப்புப்பலகைப் பயன்பாட்டிற்கான REST உறையையும் வழங்குகிறது.

JSON-RPC

POST /a2a
Authorization: Bearer your-api-key   # OMNIROUTE_API_KEY அமைக்கப்பட்டிருந்தால் தவிர இது விருப்பத்திற்குரியது
Content-Type: application/json

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "message/send",
  "params": {
    "skill": "smart-routing",
    "messages": [{"role": "user", "content": "Route this coding task"}]
  }
}

ஆதரிக்கப்படும் முறைகள் (அனைத்தும் settings.a2aEnabled மூலம் கட்டுப்படுத்தப்படுகின்றன):

முறை விளக்கம்
message/send ஒத்திசைவான திறன் செயலாக்கம்; {task, artifacts, metadata} என்பதைத் திருப்பியளிக்கும்
message/stream அதே திறன் தொகுப்பின் ஸ்ட்ரீமிங் SSE செயலாக்கம்
tasks/get taskId மூலம் ஒரு பணியைப் பெறும்
tasks/cancel taskId மூலம் ஒரு பணியை ரத்துசெய்யும்

உள்ளமைந்த திறன்கள்: smart-routing, quota-management, provider-discovery, cost-analysis, health-report.

முகவர் அட்டை

GET /.well-known/agent.json

பொது A2A முகவர் அட்டையை (பெயர், விளக்கம், திறன்கள், திறன் பட்டியல், அங்கீகாரத் திட்டம்) திருப்பியளிக்கிறது — 1 மணிநேரத்திற்குப் பொதுவாகத் தற்காலிகச் சேமிப்பில் வைக்கப்படும். அங்கீகாரம் தேவையில்லை.

REST உதவிச் செயல்பாடுகள்

முறை பாதை விளக்கம்
GET /api/a2a/status A2A இயக்கப்பட்ட நிலை + பணிப் புள்ளிவிவரங்கள் + தற்காலிகச் சேமிப்பிலுள்ள முகவர் அட்டைச் சுருக்கம்
GET /api/a2a/tasks பணிகளைப் பட்டியலிடும் — ?state=submitted|working|completed|failed|cancelled, ?skill=, ?limit= (≤200), ?offset=
POST /api/a2a/tasks (REST உதவிச் செயல்பாடாக அமல்படுத்தப்படவில்லை — JSON-RPC message/send வழியாக உருவாக்கவும்)
GET /api/a2a/tasks/[id] ஒரு பணியைப் பெறும்
POST /api/a2a/tasks/[id]/cancel ஒரு பணியை ரத்துசெய்யும்

அங்கீகாரம்: REST உதவிச் செயல்பாடுகள் மேலாண்மை அங்கீகாரம் இல்லாமல் இயங்குகின்றன (முகப்புப்பலகையிலிருந்து படிக்கக்கூடியவை); JSON-RPC /a2a பாதை, கட்டமைக்கப்பட்டிருந்தால் Bearer OMNIROUTE_API_KEY-ஐப் பயன்படுத்துகிறது.


கிளவுட், மதிப்பீட்டு இயக்கங்கள் & மதிப்பாய்வு

முறை பாதை விளக்கம்
POST /api/cloud/auth Bearer விசையைச் சரிபார்த்து, கிளவுட் ஒத்திசைவு கிளையன்ட்களுக்கான மறைக்கப்பட்ட வழங்குநர் இணைப்புகள் + மாதிரி மாற்றுப்பெயர்களைத் திருப்பியளிக்கும்
POST /api/cloud/credentials/update கிளவுட்-ஒத்திசைக்கப்பட்ட வழங்குநருக்கான குறியாக்கப்பட்ட நற்சான்றுகளைப் புதுப்பிக்கும்
POST /api/cloud/model/resolve உள்ளூர் வழிப்படுத்தல் அட்டவணையைப் பயன்படுத்தி, தருக்கரீதியான மாதிரி id-ஐ உறுதியான வழங்குநர்/மாதிரியாகத் தீர்மானிக்கும்
GET /api/cloud/models/alias கிளவுட் ஒத்திசைவுக்கு வெளிப்படுத்தப்பட்டுள்ள மாதிரி மாற்றுப்பெயர்களைப் பட்டியலிடும்
GET /api/assess சமீபத்திய மதிப்பாய்வு வகைப்பாடுகளைப் படிக்கும் (ஒவ்வொரு வழங்குநர்/மாதிரிக்கும்)
POST /api/assess ஒரு மதிப்பாய்வை இயக்கும் — உடல்: `{scope: {type:"all"} {type:"provider", providerId} {type:"model", modelId}, trigger?}`
GET /api/evals உள்ளமைந்த மதிப்பீட்டுத் தொகுப்புகள் + மிகச் சமீபத்திய இயக்கங்களைப் பட்டியலிடும்
POST /api/evals ஒரு மதிப்பீட்டு இயக்கத்தைத் தொடங்கும்
POST /api/evals/suites தனிப்பயன் மதிப்பீட்டுத் தொகுப்பை உருவாக்கும் — உடல் evalSuiteSaveSchema மூலம் சரிபார்க்கப்படுகிறது
GET /api/evals/suites/[id] தனிப்பயன் மதிப்பீட்டுத் தொகுப்பைப் பெறும்

அங்கீகாரம்: /api/cloud/auth ஒரு Bearer விசையை நேரடியாகச் சரிபார்க்கிறது; மற்ற /api/cloud/*, /api/evals/*, மற்றும் /api/assess பாதைகளுக்கு மேலாண்மை அமர்வு/API விசை தேவை. /api/assess POST ஆனது வேறுபடுத்தப்பட்ட-ஒன்றிய வரம்புத் திட்டத்துடன் validateBody-ஐப் பயன்படுத்துகிறது.


ACP (Agent Client Protocol) மேலாண்மை

துணைச் செயல்முறைகளாக. இந்த முனைப்புள்ளிகள் ACP முகவர் கண்டறிதலையும் தனிப்பயன் முகவர் பதிவையும் நிர்வகிக்கின்றன.

முறை பாதை விளக்கம்
GET /api/acp/agents நிறுவல் நிலை, பதிப்பு மற்றும் பைனரி விவரங்களுடன் அறியப்பட்ட அனைத்து CLI முகவர்களையும் (உள்ளமைக்கப்பட்டவை + தனிப்பயனாக்கப்பட்டவை) பட்டியலிடுகிறது
POST /api/acp/agents தனிப்பயன் ACP முகவரைப் பதிவுசெய்கிறது அல்லது தற்காலிகச் சேமிப்பைப் புதுப்பிக்கிறது — கோரிக்கை உடல்: {id, name, binary, versionCommand, providerAlias, spawnArgs, protocol} அல்லது {action: "refresh"}
DELETE /api/acp/agents தனிப்பயன் ACP முகவரை அகற்றுகிறது — வினவல் அளவுரு: ?id=<agentId>

பதில் எடுத்துக்காட்டு (GET /api/acp/agents):

{
  "agents": [
    {
      "id": "claude",
      "name": "Claude Code CLI",
      "binary": "claude",
      "version": "1.0.45",
      "installed": true,
      "protocol": "stdio",
      "providerAlias": "claude",
      "isCustom": false
    },
    {
      "id": "my-custom-cli",
      "name": "My Custom CLI",
      "installed": false,
      "protocol": "stdio",
      "providerAlias": "my-provider",
      "isCustom": true
    }
  ],
  "cacheTtlMs": 60000,
  "cacheAge": 1234
}

அங்கீகாரம்: மேலாண்மை அமர்வு (முகப்புப்பலகை auth_token குக்கீ) அல்லது மேலாண்மை வரம்புடைய API விசை தேவை.

முழுமையான விவரங்களுக்கு ACP கட்டமைப்பு என்பதைப் பார்க்கவும்.


பகுப்பாய்வு & கண்காணிப்புத்தன்மை

வழித்தடத் தேர்வு, சுருக்கம் மற்றும் வழங்குநர் பன்முகத்தன்மையைக் கண்காணிப்பதற்கான நிகழ்நேரப் பகுப்பாய்வு முனைப்புள்ளிகள். இவை /dashboard/analytics/* பக்கங்களை இயக்குகின்றன.

தானியங்கு வழித்தடத் தேர்வுப் பகுப்பாய்வு

முறை பாதை விளக்கம்
GET /api/analytics/auto-routing ஒருங்கிணைந்த தானியங்கு வழித்தடத் தேர்வுப் புள்ளிவிவரங்கள்: மொத்த அழைப்புகள், உத்திப் பகிர்வு, அடுக்குப் பகிர்வு, முன்னணி வழங்குநர்கள்
GET /api/analytics/auto-routing?days=7 காலச் சாளரத்திற்குட்பட்ட புள்ளிவிவரங்கள் (இயல்புநிலை 24h)

பதில் எடுத்துக்காட்டு:

{
  "window": "24h",
  "totalCalls": 1234,
  "strategyBreakdown": {
    "rules": 800,
    "cost": 200,
    "latency": 150,
    "sla-aware": 50,
    "lkgp": 34
  },
  "tierBreakdown": {
    "ultra": 100,
    "pro": 500,
    "standard": 400,
    "free": 234
  },
  "topProviders": [
    { "provider": "openai", "calls": 500, "avgLatencyMs": 850 },
    { "provider": "anthropic", "calls": 300, "avgLatencyMs": 1200 }
  ]
}

சுருக்கப் பகுப்பாய்வு

முறை பாதை விளக்கம்
GET /api/analytics/compression ஒருங்கிணைந்த சுருக்கப் புள்ளிவிவரங்கள்: சேமிக்கப்பட்ட டோக்கன்கள், சேமிப்பு %, பயன்முறைப் பகிர்வு, எஞ்சின் பயன்பாடு

பதில் எடுத்துக்காட்டு:

{
  "window": "24h",
  "totalOriginalTokens": 5000000,
  "totalCompressedTokens": 3500000,
  "totalSavings": 1500000,
  "savingsPct": 30.0,
  "modeBreakdown": {
    "lite": 400,
    "standard": 600,
    "aggressive": 100,
    "ultra": 50,
    "rtk": 84
  },
  "engineBreakdown": {
    "caveman": 800,
    "rtk": 434
  }
}

வழங்குநர் பன்முகத்தன்மைக் கண்காணிப்பு

முறை பாதை விளக்கம்
GET /api/analytics/diversity Shannon entropy அடிப்படையிலான பன்முகத்தன்மைக் கண்காணிப்பு: வழங்குநர் பரவலை அளவிடுவதன் மூலம் ஒற்றைத் தோல்விப் புள்ளிகளைத் தடுக்கிறது

பதில் எடுத்துக்காட்டு:

{
  "window": "24h",
  "shannonEntropy": 2.45,
  "maxEntropy": 3.17,
  "diversityRatio": 0.77,
  "providerUsage": {
    "openai": 0.4,
    "anthropic": 0.25,
    "google": 0.2,
    "kiro": 0.15
  },
  "warnings": ["OpenAI accounts for 40% of traffic — consider diversifying"]
}

அங்கீகாரம்: மேலாண்மை அமர்வு அல்லது மேலாண்மை வரம்புடைய API விசை தேவை.


நிர்வாகச் செயல்பாடுகள்

செயல்பாட்டு மேலாண்மைக்கான நிர்வாகிகளுக்கு மட்டுமான முனைப்புள்ளிகள்.

முறை பாதை விளக்கம்
GET /api/admin/concurrency தற்போதைய ஒரேநேரச் செயல்பாட்டு வரம்புகளைப் படிக்கவும் (ஒட்டுமொத்தம் + வழங்குநர் வாரியாக)
POST /api/admin/concurrency ஒரேநேரச் செயல்பாட்டு வரம்புகளைப் புதுப்பிக்கவும் — கோரிக்கை உடல்: {global?: number, perProvider?: Record<string, number>}

அங்கீகாரம்: நிர்வாகி வரம்புடனான மேலாண்மை அமர்வு தேவை.


CLI கருவிகள் மேலாண்மை

OmniRoute உடன் ஒருங்கிணையும் CLI கருவிகளை (antigravity, chipotle, commandCode, devin-cli போன்றவை) நிர்வகிக்கவும். முழுப் பட்டியலுக்கு வழங்குநர் மேற்கோள் என்பதைப் பார்க்கவும்.

முறை பாதை விளக்கம்
GET /api/cli-tools/all-statuses அனைத்து CLI கருவிகளின் நிலை (நிறுவப்பட்டதா, பதிப்பு, கடைசியாகக் காணப்பட்டது)
GET /api/cli-tools/status ஒரு CLI கருவியின் விரிவான நிலை (?tool= வினவல்)
POST /api/cli-tools/apply கருவியால் உருவாக்கப்பட்ட உள்ளமைவை எழுதவும் (dryRun முன்னோட்டமிடும்; கொள்கலனாக்கப்பட்டிருந்தால் 422 + containerEphemeralTarget; பழைய Codex YAML-ஐ migration குறிப்பிடும்)
GET /api/cli-tools/backups CLI கருவி உள்ளமைவுக் காப்புப்பிரதிகளைப் பட்டியலிடவும்
POST /api/cli-tools/backups அனைத்து CLI கருவி உள்ளமைவுகளுக்கும் காப்புப்பிரதியை உருவாக்கவும்
POST /api/cli-tools/backups மீட்டமைத்தல்: கோரிக்கை உடலில் {tool, backupId} உடன் இதே முனைப்புள்ளியைப் பயன்படுத்துவது அந்தக் காப்புப்பிரதியை மீட்டமைக்கும்
GET /api/cli-tools/antigravity-mitm Antigravity MITM பதிலாள் நிலை ("antigravity-mitm" CLI கருவி)
POST /api/cli-tools/antigravity-mitm/alias antigravity-mitm மாற்றுப்பெயர்களை உள்ளமைக்கவும்

அங்கீகாரம்: மேலாண்மை அமர்வு தேவை.


முகவர் திறன்கள்

AI முகவர் திறன்களை நிர்வகிக்கவும் (OpenAI-இன் தனிப்பயன் GPT-களைப் போன்றவை, ஆனால் முகவர்களுக்கானவை).

முறை பாதை விளக்கம்
GET /api/agent-skills அனைத்து முகவர் திறன்களையும் பட்டியலிடவும் (உள்ளமைந்தவை + தனிப்பயனாக்கப்பட்டவை)
GET /api/agent-skills/[id] குறிப்பிட்ட முகவர் திறனைப் பெறவும்
POST /api/agent-skills தனிப்பயன் முகவர் திறனை உருவாக்கவும் — கோரிக்கை உடல்: {name, description, prompt, model?, temperature?}
PUT /api/agent-skills/[id] தனிப்பயன் முகவர் திறனைப் புதுப்பிக்கவும்
DELETE /api/agent-skills/[id] தனிப்பயன் முகவர் திறனை நீக்கவும்
GET /api/agent-skills/[id]/raw மூல prompt + metadata-வைப் பெறவும் (செயல்படுத்தாமல்)
POST /api/agent-skills/generate இயல்பான மொழி விளக்கத்திலிருந்து AI மூலம் புதிய திறனை உருவாக்கவும்

அங்கீகாரம்: மேலாண்மை அமர்வு அல்லது மேலாண்மை வரம்புடைய API key தேவை.


தற்காலிக சேமிப்பக மேலாண்மை

சொற்பொருள் தற்காலிக சேமிப்பகத்தையும் பகுத்தறிதல் தற்காலிக சேமிப்பகத்தையும் நிர்வகிக்கவும்.

முறை பாதை விளக்கம்
GET /api/cache தற்காலிக சேமிப்பக மேலோட்டம்: மொத்தப் பதிவுகள், வெற்றி விகிதம், வட்டில் உள்ள அளவு
GET /api/cache/entries தற்காலிகச் சேமிப்பகப் பதிவுகளைப் பட்டியலிடுதல் (பக்கப் பிரிப்புடன்)
DELETE /api/cache/entries தற்காலிகச் சேமிப்பகப் பதிவுகளை நீக்குதல் (வினவல் அளவுருக்களின்படி வடிகட்டுதல்)
GET /api/cache/stats விரிவான தற்காலிகச் சேமிப்பகப் புள்ளிவிவரங்கள் (ஒவ்வொரு வழங்குநருக்கும், ஒவ்வொரு மாதிரிக்கும்)
GET /api/cache/reasoning பகுத்தறிதல் தற்காலிக சேமிப்பகத்தின் நிலை (பகுத்தறிதல் மறுஇயக்கத்திற்காக)
DELETE /api/cache/reasoning பகுத்தறிதல் தற்காலிக சேமிப்பகத்தை அழித்தல் — வினவல் அளவுருக்கள்: ?toolCallId=<id> (ஒன்று), ?provider=<p> அல்லது அளவுருக்கள் ஏதுமில்லை (அனைத்தும்)

அங்கீகாரம்: மேலாண்மை அமர்வு தேவை.


நினைவக அமைப்பு

நிலையான நினைவகத்தை (FTS5 + திசையன் உட்பொதிவுகள்) நிர்வகிக்கவும்.

முறை பாதை விளக்கம்
GET /api/memory நினைவகப் பதிவுகளைப் பட்டியலிடுதல் (செயற்பரப்பு, வகை, தேடல் வினவல் ஆகியவற்றின்படி வடிகட்டுதல்)
POST /api/memory புதிய நினைவகப் பதிவை உருவாக்குதல் — உடற்பகுதி: {scope, type, content, metadata?}
GET /api/memory/[id] குறிப்பிட்ட நினைவகப் பதிவைப் பெறுதல்
PUT /api/memory/[id] நினைவகப் பதிவைப் புதுப்பித்தல்
DELETE /api/memory/[id] நினைவகப் பதிவை நீக்குதல்
GET /api/memory?q= நினைவகத்தில் தேடுதல் (FTS5 + திசையன்) — அதே பதிலில் புள்ளிவிவரங்களும் சேர்க்கப்பட்டிருக்கும்

அங்கீகாரம்: மேலாண்மை அமர்வு அல்லது மேலாண்மைச் செயற்பரப்புடைய API விசை தேவை.


Webhook-கள்

நிகழ்வுகளுக்கான webhook சந்தாக்களை நிர்வகிக்கவும்.

முறை பாதை விளக்கம்
GET /api/webhooks அனைத்து webhook சந்தாக்களையும் பட்டியலிடுதல்
POST /api/webhooks webhook சந்தாவை உருவாக்குதல் — உடற்பகுதி: {url, events[], secret?, active?}
GET /api/webhooks/[id] குறிப்பிட்ட webhook சந்தாவைப் பெறுதல்
PUT /api/webhooks/[id] webhook சந்தாவைப் புதுப்பித்தல்
DELETE /api/webhooks/[id] webhook சந்தாவை நீக்குதல்
GET /api/webhooks/[id]/deliveries webhook-இன் வழங்கல் வரலாற்றைப் பட்டியலிடுதல் (வெற்றி/தோல்விப் பதிவு)
POST /api/webhooks/[id]/test webhook-க்கு சோதனை நிகழ்வை அனுப்புதல்

அங்கீகாரம்: மேலாண்மை அமர்வு தேவை.

முழுமையான நிகழ்வு வகைகளுக்கு Webhooks கட்டமைப்பு என்பதைப் பார்க்கவும்.


திறன்கள் கட்டமைப்பு

திறன்களை (முகவர் சார்ந்த நீட்டிப்புகள் கட்டமைப்பு) நிர்வகிக்கவும்.

முறை பாதை விளக்கம்
GET /api/skills நிறுவப்பட்டுள்ள அனைத்து திறன்களையும் பட்டியலிடும் (உள்ளமைந்தவை + தனிப்பயன்)
POST /api/skills/install உள்ளகப் பாதை அல்லது URL இலிருந்து ஒரு திறனை நிறுவும்
DELETE /api/skills/[id] ஒரு திறனை நிறுவல் நீக்கும்
PUT /api/skills/[id] ஒரு திறனை இயக்கும் அல்லது முடக்கும் — உடல்: {enabled?: boolean, mode?: "on" | "off" | "auto"}
POST /api/skills/executions ஒரு திறனைச் செயல்படுத்தும் — உடல்: {skillName, apiKeyId, input?, sessionId?}
GET /api/skills/executions அனைத்து திறன்களின் செயல்படுத்தல் வரலாற்றையும் பட்டியலிடும் (?apiKeyId= மூலம் வடிகட்டலாம்)

அங்கீகாரம்: மேலாண்மை அமர்வு அல்லது மேலாண்மை வரம்புடைய API விசை தேவை.

முழு விவரங்களுக்கு திறன்கள் கட்டமைப்பு என்பதைப் பார்க்கவும்.


செருகுநிரல்கள்

OmniRoute செருகுநிரல்களை (மூன்றாம் தரப்பு நீட்டிப்புகள்) நிர்வகிக்கவும்.

முறை பாதை விளக்கம்
GET /api/plugins நிறுவப்பட்ட செருகுநிரல்களைப் பட்டியலிடும்
POST /api/plugins/marketplace/install சந்தையிலிருந்து ஒரு செருகுநிரலை நிறுவும்
DELETE /api/plugins/[name] ஒரு செருகுநிரலை நிறுவல் நீக்கும்
POST /api/plugins/[name]/activate ஒரு செருகுநிரலைச் செயல்படுத்தும்
POST /api/plugins/[name]/deactivate ஒரு செருகுநிரலைச் செயலிழக்கச் செய்யும்
GET /api/plugins/[name]/config செருகுநிரல் உள்ளமைவைப் பெறும்
PUT /api/plugins/[name]/config செருகுநிரல் உள்ளமைவைப் புதுப்பிக்கும்

அங்கீகாரம்: மேலாண்மை அமர்வு தேவை.

முழு விவரங்களுக்கு செருகுநிரல்கள் கட்டமைப்பு என்பதைப் பார்க்கவும்.


நிழல் வழிப்படுத்தல்

வழங்குநர்களின் நிழல் / A-B ஒப்பீடு தனித்த REST தளம் அல்ல — இது சேர்க்கை வழிப்படுத்தல் மூலம் உள்ளமைக்கப்படுகிறது (தானியங்கு சேர்க்கை என்பதைப் பார்க்கவும்). ஒவ்வொரு சேர்க்கைக்குமான ஒப்பீட்டு அளவீடுகள் GET /api/combos/metrics மூலம் வழங்கப்படுகின்றன.


பாதுகாப்புத் தடுப்புகள்

இயக்கநேர பாதுகாப்புத் தடுப்புகளை (PII கண்டறிதல், தூண்டல் உட்செலுத்தல் கண்டறிதல், காட்சி இணைப்பு) ஆய்வு செய்யவும். ஒவ்வொரு கோரிக்கையிலும் பாதுகாப்புத் தடுப்புகள் இயங்குகின்றன; ஒவ்வொரு அழைப்பிற்குமான விலகல் x-omniroute-disabled-guardrails கோரிக்கைத் தலைப்பு மூலம் செய்யப்படுகிறது — நிலையாகச் சேமிக்கப்படும் இயக்கு/முடக்கு தளம் எதுவும் இல்லை.

முறை பாதை விளக்கம்
GET /api/guardrails பதிவுசெய்யப்பட்ட பாதுகாப்புத் தடுப்புகளையும் அவற்றின் நிலையையும் பட்டியலிடும் (பெயர் / இயக்கப்பட்டது / முன்னுரிமை)
POST /api/guardrails/test மாதிரி உள்ளீட்டின் மீது அழைப்புக்கு முந்தைய செயலாக்கத் தொடரைச் சோதனை முறையில் இயக்கும் — உடல்: {input, disabledGuardrails?}

அங்கீகாரம்: மேலாண்மை அமர்வு தேவை.

முழு விவரங்களுக்கு பாதுகாப்பு > பாதுகாப்புத் தடுப்புகள் என்பதைப் பார்க்கவும்.



அங்கீகாரம்

நான்கு நற்சான்று வகைகள் (டாஷ்போர்டு அமர்வு, உள்ளக CLI டோக்கன், oma_live_… அணுகல் டோக்கன், மேலாண்மை வரம்புடைய API விசை) மற்றும் அவை அனுமான விசைகளிலிருந்து எவ்வாறு வேறுபடுகின்றன என்பதை அறிய மேலாண்மை அங்கீகாரம் என்பதைப் பார்க்கவும்.

  • டாஷ்போர்டு வழித்தடங்கள் (/dashboard/*) auth_token குக்கீயைப் பயன்படுத்துகின்றன
  • உள்நுழைவு சேமிக்கப்பட்ட கடவுச்சொல் ஹாஷைப் பயன்படுத்துகிறது; மாற்று வழியாக INITIAL_PASSWORD பயன்படுத்தப்படுகிறது
  • requireLogin-ஐ /api/settings/require-login மூலம் மாற்றியமைக்கலாம்
  • REQUIRE_API_KEY=true ஆக இருக்கும்போது, /v1/* வழித்தடங்களுக்கு விருப்பத்தேர்வாக Bearer API விசை தேவைப்படும்
  • இந்தக் குறிப்பில் "மேலாண்மை டோக்கன்" / "மேலாண்மை வரம்புடைய API விசை" என்பது அந்த வழிகாட்டியில் உள்ள வகைகளில் ஒன்றைக் குறிக்கிறது — வரையறுக்கப்படாத கூடுதல் ரகசிய வகையைக் குறிக்காது

முறிவை ஏற்படுத்தும் மாற்றம் (v3.8.0)/api/v1/agents/tasks/* மற்றும் கூல்டவுன் மேலாண்மை இறுதிப்புள்ளிகளுக்கு இப்போது மேலாண்மை அங்கீகாரம் (டாஷ்போர்டு auth_token குக்கீ அல்லது மேலாண்மை வரம்புடைய API விசை) தேவைப்படுகிறது. முன்பு அங்கீகாரம் இல்லாமல் இந்த வழித்தடங்களை அழைத்த கிளையன்ட்கள் 401 Unauthorized பதிலைப் பெறுவார்கள். 588a0333 கமிட்டைப் பார்க்கவும் (fix(auth): முகவர் மற்றும் கூல்டவுன் API-களுக்கு மேலாண்மை அங்கீகாரத்தைத் தேவைப்படுத்து).