مستندات Sinox API
این API کاملاً سازگار با فرمت OpenAI است. هر ابزار یا SDK که با OpenAI کار میکند — بدون تغییر کد — با این سرویس هم کار میکند. فقط base_url و کلید API را عوض کنید.
همهی درخواستها به همین آدرس ارسال میشوند. آن را جای https://api.openai.com در کتابخانهی خودتان قرار دهید.
/v1/chat/completions — و برای فرمت Anthropic: /v1/messagesهمهی درخواستها باید هدر Authorization با پیشوند Bearer داشته باشند. کتابخانههای رسمی این کار را خودشان انجام میدهند.
SINOX_API_KEY — کتابخانهی OpenAI هم همین الگو را دوست دارد.
مدلهای فعالِ متناسب با نوع کلیدت را برمیگرداند: کلید ریکوستی مدلهای ریکوستی و کلید توکنی مدلهای t-دار را میبیند. شناسهی هر مدل همان رشتهای است که در فیلد model استفاده میکنی.
t-) کار میکند. اگر جابهجا بفرستی، خطای billing_type_mismatch میگیری.| شناسه مدل | نام | سازنده | نوع |
|---|---|---|---|
| در حال بارگذاری فهرست مدلها… | |||
| پارامتر | نوع | توضیح |
|---|---|---|
model* | string | شناسهی مدل از /v1/models |
messages* | array | آرایهی پیامها با فیلدهای role و content |
stream | boolean | پاسخ بهصورت streaming — پیشفرض: false |
temperature | float | میزان خلاقیت، بین ۰ تا ۲ — پیشفرض: ۱ |
max_tokens | integer | حداکثر توکن خروجی. اگر بیشتر از سقف سرور (حدود ۸۰۰۰) بفرستی، بیصدا به همان سقف محدود میشود. |
top_p | float | nucleus sampling — پیشفرض: ۱ |
stop، top_k، presence_penalty، frequency_penalty، seed، response_format (خروجی JSON)، tools و tool_choice. نوع پکیج (ریکوستی یا توکنی) هیچ فرقی در پارامترهای مجاز ندارد؛ فقط نحوهٔ شمارش سهمیه فرق میکند. فهرست کامل و رسمی پارامترها:
- فرمت OpenAI (
/v1/chat/completions): مرجع رسمی OpenAI Chat API - فرمت Anthropic (
/v1/messages): مرجع رسمی Anthropic Messages API
model باید شناسهٔ همین سرویس باشد و max_tokens تا سقف سرور (حدود ۸۰۰۰) محدود میشود.thinking فعال میشود:
thinking (زنجیرهٔ استدلال مدل) و سپس بلاک text است. توکنهای بخش thinking هم در مصرف پلن توکنی حساب میشوند.با فرستادن "stream": true پاسخ بهصورت Server-Sent Events (SSE) دریافت میشود — توکن به توکن، بدون نیاز به صبر برای کل پاسخ.
علاوه بر فرمت OpenAI، این سرویس از فرمت رسمی Anthropic Messages API هم پشتیبانی میکند. یعنی ابزارهایی که با Claude کار میکنند — مثل Claude Code، کتابخانهی رسمی anthropic و هر کلاینت سازگار با Messages API — مستقیم و بدون تبدیل به این سرویس وصل میشوند.
کلید خود را در هدر x-api-key بفرستید (هدر استاندارد Anthropic). فرمت Authorization: Bearer هم بهعنوان جایگزین پشتیبانی میشود.
در این endpoint فقط مدلهای خانوادهی Claude قابل استفادهاند (claude-* و t-claude-*). برای سایر مدلها از /v1/chat/completions استفاده کنید.
ANTHROPIC_MODEL و ANTHROPIC_SMALL_FAST_MODEL روی شناسههای این سرویس تنظیم کنی، وگرنه خطای «مدل پیدا نشد» میگیری. با کلید توکنی از شناسههای t-دار استفاده کن — مثلاً ANTHROPIC_MODEL=t-claude-opus-5 و ANTHROPIC_SMALL_FAST_MODEL=t-claude-sonnet-5 (توجه: مدل توکنیِ معادلِ claude-sonnet-flash نداریم، پس برای اسلات سریعِ کلید توکنی از t-claude-sonnet-5 استفاده کن).یا در فایل ~/.claude/settings.json:
ANTHROPIC_MODEL مدل اصلی و ANTHROPIC_SMALL_FAST_MODEL مدل سبک برای کارهای پسزمینه است. میتوانی بهجای claude-opus-5 هر مدل دیگری از لیست مدلها بگذاری (با کلید توکنی: t-claude-opus-5 و t-claude-sonnet-5).
| قابلیت | وضعیت |
|---|---|
| پاسخ متنی (chat) | پشتیبانی میشود |
| Streaming (SSE) | پشتیبانی میشود |
| Tool Use / Function Calling | پشتیبانی میشود |
| Extended Thinking | پشتیبانی میشود |
| ورودی تصویر (Vision) | passthrough |
System prompt (فیلد system) | پشتیبانی میشود |
- پارامتر
max_tokensدر فرمت Anthropic اجباری است. - خطاها در فرمت استاندارد Anthropic برمیگردند (
{"type":"error","error":{...}}) و کتابخانهی رسمی آنها را به exception تبدیل میکند. - شمارش quota دقیقاً مثل فرمت OpenAI است: هر درخواست موفق ۱ ریکوست (در پلنهای ریکوستی) یا تعداد توکن واقعی (در پلنهای توکنی).
- در پلنهای توکنی، تعداد توکن از فیلدهای
input_tokensوoutput_tokensپاسخ کسر میشود. - کلید API شما بین هر دو فرمت مشترک است؛ نیازی به کلید جداگانه نیست.
چند نمونهی آمادهی دیگر برای شروع سریع در محیطهای مختلف.
Hermes Agent از پروایدرهای سازگار با OpenAI پشتیبانی میکند. دو روش برای اضافه کردن Sinox وجود دارد.
~/.hermes/config.yamlاین تنظیمات را اضافه یا جایگزین کنید:
در OpenRouter میتوانید این API را بهعنوان یک پروایدر سفارشی تعریف کنید.
به openrouter.ai/settings/integrations بروید و یک Custom Provider اضافه کنید:
| فیلد | مقدار |
|---|---|
| Base URL | در حال بارگذاری… |
| API Key | YOUR_KEY |
| Format | OpenAI |
SillyTavern از OpenAI-compatible API پشتیبانی کاملی دارد.
- در SillyTavern بروید به API Connections
- نوع API را روی Chat Completion بگذارید
- سورس را روی OpenAI بگذارید
- در فیلد Custom Endpoint (Base URL) آدرس زیر را وارد کنید:
- در فیلد API Key کلید خودتان را وارد کنید
- روی Connect کلیک کنید — مدلها بهصورت خودکار لود میشوند
NextChat از custom endpoint پشتیبانی میکند.
- وارد NextChat شوید و روی آیکون تنظیمات کلیک کنید
- در بخش OpenAI API Key کلید API خودتان را وارد کنید
- در فیلد API Host / Custom Endpoint آدرس زیر را وارد کنید:
/v1 وارد کنید — برنامه خودش /v1 را اضافه میکند.
| کد | معنا | راهحل |
|---|---|---|
| 200 | درخواست موفق | کاری لازم نیست. |
| 400 | پارامتر نامعتبر یا ناقص (model/messages جا افتاده، یا پرامپت خیلی بلند) | بدنهٔ درخواست را با نمونههای همین صفحه تطبیق دهید. |
| 401 | API key اشتباه یا منقضی | کلید را از داشبورد بررسی کنید؛ پیشوند Bearer جا نیفتاده باشد. |
| 402 | سهمیهٔ پکیج تمام/منقضی، یا ناسازگاری نوع کلید با مدل (billing_type_mismatch) | پکیج را تمدید کنید؛ و کلید ریکوستی را با مدل ریکوستی و کلید توکنی را با مدل t-دار بهکار ببرید. |
| 403 | دسترسی ممنوع | با پشتیبانی تماس بگیرید. |
| 404 | مدل پیدا نشد (model_not_found) | شناسهٔ مدل را از لیست مدلها بردارید؛ با کلید توکنی پیشوند t- را فراموش نکنید. |
| 429 | عبور از محدودیت نرخ درخواست | تعداد درخواست در دقیقه را کم کنید و با عقبنشینی نمایی دوباره تلاش کنید. |
| 503 | مدل موقتاً در دسترس نیست (همهٔ مسیرها ناموفق) — در فرمت Anthropic کد 529 | چند ثانیه صبر کنید و دوباره امتحان کنید. |
429 میدهد (اینها فقط محافظ burstاند، ربطی به سهمیهٔ پکیج ندارند). دقت کن ۴۲۹ با 402 فرق دارد: ۴۲۹ یعنی «خیلی سریع زدی، کمی آهستهتر»، ولی ۴۰۲ یعنی «سهمیهٔ پکیجت تمام شده، تمدید کن».بله — فقط base_url را عوض کنید. هیچ تغییر دیگری لازم نیست.
بله، در صورتی که مدل انتخابی از آن پشتیبانی کند.
مدلهای vision از آرایهی content با image_url پشتیبانی میکنند — دقیقاً مثل OpenAI.