Esc to close · ⌘K / Ctrl-K opens search anywhere
BYOK तुम्हाला BharatRouter मार्फत तुमची स्वतःची provider खाती वापरण्याची मुभा देते: एक API, एक SDK, आमची रूटिंग आणि failover — तुमची key आणि तुमची बिलिंग upstream. ज्या प्रत्येक provider साठी तुम्ही एक key आणता त्याला हे अनलॉक करते (Krutrim Cloud, Sarvam, Mistral, DeepSeek, OpenAI, Groq, Together, Fireworks, Cerebras, xAI आणि अधिक — एकूण 50 providers), आणि प्रत्येक request तुमच्या स्वतःच्या ठरवलेल्या दरांवर चालवते.
तुम्हाला अशा एका मॉडेलवर रूट करायचे आहे का जे तुम्ही होस्ट करत असलेल्या एका deployment वर चालत आहे, आम्ही सपोर्ट करत असलेल्या provider वर नाही? ते आहेBYOE — तुमचा स्वतःचा endpoint आणा; कधी कोणते वापरायचे ते पाहण्यासाठीBYOE विरुद्ध BYOK पाहा.
बीटा दरम्यान BYOK requests मोफत आहेत — BharatRouter अतिरिक्त शुल्क घेत नाही; तुमचा provider तुम्हाला थेट बिल करतो.
upstream_keyएकाच request वर तुमची provider key पास करा. ती in-flight वापरली जाते, कधीही साठवली जात नाही, कधीही log केली जात नाही. ती कुठे जाते हे ठरवण्यासाठी तिला provider सोबत जोडा:
curl https://api.bharatrouter.com/v1/chat/completions \
-H "Authorization: Bearer br-..." -H "Content-Type: application/json" \
-d '{
"model": "gpt-oss-20b",
"provider": "groq",
"upstream_key": "YOUR_GROQ_KEY",
"messages": [{"role": "user", "content": "namaste"}]
}'एकदा एक key सेव्ह करा — डॅशबोर्डच्या BYOK टॅबवर किंवाPUT /me/byok/:provider (org मालक) मार्फत — आणि तुमच्या org कडून येणारी प्रत्येक request ती application कोडमध्ये कधीही key न ठेवता वापरू शकते:
PUT /me/byok/krutrim
{ "key": "YOUR_KRUTRIM_CLOUD_KEY", "label": "prod", "always_use": false }
→ { "provider": "krutrim", "mask": "krtm-…a9f2", "always_use": false,
"verified": true, "models_discovered": 14 }सेव्ह करताना key provider विरुद्ध लाइव्ह सत्यापित केली जाते आणि rest वर एन्क्रिप्ट केली जाते (AES-256-GCM); plaintext कधीही परत दिले जात नाही — फक्त एक mask. POST /me/byok/:provider/testसोबत कधीही सेव्ह केलेली key पुन्हा तपासा, ती DELETE /me/byok/:provider सोबत काढून टाका.
जेव्हा तुम्ही एक key सेव्ह करता, तेव्हा gateway त्या provider कडून तुमच्या key सोबत त्याची मॉडेल यादी मागतो आणि त्याला जे काही मिळते तेprovider/model-id म्हणून routable बनवतो:
GET /me/byok/mistral/models
→ { "provider": "mistral", "models": ["mistral/mistral-large-latest", "mistral/codestral-latest", ...] }
# then simply:
client.chat.completions.create(model="mistral/mistral-large-latest", messages=[...])key सेव्ह करताना आणि टेस्ट करताना डिस्कव्हरी ताजी केली जाते; एक अस्थिर provider यादी आधी शोधलेली मॉडेल्स पुसून टाकत नाही.
BYOK आवश्यक आहे: प्रत्येक मार्ग तुमच्या स्वतःच्या provider key वर चालतो, आणि fallback साठी कोणतीही platform key नाही. जर तुमची key अयशस्वी झाली, तर request अयशस्वी होते — एक key त्रुटी म्हणून समोर येते, जेणेकरून कोणती key तुटली ते तुम्हाला कळेल.
upstream_key नेहमी जिंकते — फक्त त्या कॉलसाठी वापरली जाते, कधीही साठवली जात नाही.BYOK key अपयश key ला जबाबदार धरले जातात, provider मार्गाला नाही — तुमची कालबाह्य झालेली key सामायिक circuit breaker ट्रिप करणार नाही.
GET /me/byok ज्या providers साठी तुम्ही एक key आणू शकता त्यांची लाइव्ह यादी परत करते. खालील प्रत्येक provider BYOK आहे — तुमची key सेव्ह करा आणि त्याची models routable होतात.
🇮🇳 Krutrim Cloud
🇮🇳 Sarvam AI
OpenAI
OpenRouter
Groq
Mistral AI
DeepSeek
Together AI
Fireworks AI
Cerebras
xAI
Moonshot AI
DeepInfra
Novita AI
SambaNova
Nebius AI Studio
Hyperbolic
NVIDIA NIM
Perplexity
AI21 Labs
Upstage
MiniMax
Alibaba Qwen (Intl)
Z.ai (Zhipu)
Featherless
kluster.ai
Lambda
Chutes
Cohere
Google Gemini
AI/ML API
FriendliAI
Inception (Mercury)
Jina AI
OVHcloud AI Endpoints
Venice AI
SiliconFlow
Baseten
Nscale
Meta Llama API
StepFun
GMI Cloud
Scaleway
DigitalOcean Gradient
Volcano Engine (ByteDance)
Baidu ERNIE
Parasail
W&B Inference
ElevenLabs
GitHub Models
प्रति provider संपूर्ण तपशील — निवास, लाइव्ह कॅटलॉग मार्ग —providers पेज वर.
| Code | HTTP | अर्थ |
|---|---|---|
bad_key | 400 | सबमिट केलेली key त्या provider साठी एक वैध key सारखी दिसत नाही. |
unknown_provider | 400 | असा कोणताही BYOK provider id नाही — GET /me/byok पाहा. |
byok_disabled | 503 | या deployment वर BYOK कॉन्फिगर केलेले नाही. |