ورود و کلیدهای API
احراز هویت، دسترسیهای محدود، انقضا و تعویض کلید.
احراز هویت درخواست
هر درخواست عمومی /v1 باید هدر Authorization با ساختار Bearer و یک کلید srv_ داشته باشد. کوکی مرورگر جایگزین کلید API نیست. کنسول آزمایشگاه از نشست حساب شما استفاده میکند؛ کلید مخفی در مرورگر ذخیره نمیکند.
Authorization: Bearer srv_...
Content-Type: application/jsonبررسی اتصال در Termux
کلید ساروی فقط به https://api.sarovi.ir فرستاده میشود؛ آن را در آدرس مستقیم Google، OpenAI یا OpenRouter استفاده نکنید. کلید کامل ۴۷ نویسه دارد و با srv_ شروع میشود. مقدار خلاصهشدهٔ دارای … در فهرست کلیدها برای ورود قابل استفاده نیست. اگر نسخهٔ کامل را ندارید، در صفحهٔ کلیدها یک کلید تازه بسازید و مقدار کاملِ یکبارنمایش را نگه دارید.
برای آزمایش اتصال، ابتدا کلیدی با دسترسی models:read انتخاب کنید. این درخواست مدل اجرا نمیکند و هزینهٔ تولید ندارد. در Termux با Bash، کلید را در ورودی مخفی وارد کنید تا در تاریخچهٔ فرمانها قرار نگیرد:
pkg install curl
read -r -s -p 'Sarovi API key: ' SAROVI_API_KEY
printf '\n'
export SAROVI_API_KEY
if [ -n "$SAROVI_API_KEY" ]; then
curl --silent --show-error --fail-with-body \
--write-out '\nHTTP %{http_code}\n' \
-H "Authorization: Bearer $SAROVI_API_KEY" \
https://api.sarovi.ir/v1/models
else
printf 'No API key entered.\n'
fiپاسخ 200 یعنی اتصال و کلید پذیرفته شدهاند. 401 یعنی هدر یا کلید پذیرفته نشده است؛ کامل بودن کلید، مقدار متغیر، آدرس و فعال بودن همان کلید را بررسی کنید. 403 با کد INSUFFICIENT_SCOPE یعنی کلید معتبر است ولی models:read ندارد؛ برای تولید گفتار studio:write لازم است. در هدر از شکل متعارف Authorization: Bearer استفاده کنید؛ بزرگی حروف واژهٔ Bearer و فاصلههای معمول اضافی، مقدار خود کلید را تغییر نمیدهند.
اگر هنوز خطا میگیرید، متن خطا و request_id همراه با فرمانی که تمام مقدار کلید آن با REDACTED جایگزین شده است برای پشتیبانی بفرستید. کلید، هدر کامل Authorization و خروجی curl -v را ارسال نکنید.
دسترسیهای کلید
| دسترسی | کاربرد |
|---|---|
| models:read | خواندن کاتالوگ مدلها |
| responses:write | ساخت پاسخ و گفتگو |
| studio:write | ساخت و بررسی رسانهٔ Studio |
| files:read | وضعیت Work و دریافت فایلهای مجاز |
| work:write | ساخت یا توقف Work |
| agents:run | اجرای عامل منتشرشده و گفتگوهای مشتری؛ بدون دسترسی مدیریت |
| agents:write | تعریف، فهرست و مدیریت عاملها؛ اجرای قدیمی با responses:write |
| usage:read | موجودی، مصرف پروژه و وضعیت درخواست |
| audio:write | تبدیل گفتار و جلسهٔ صوتی |
| knowledge:read | فهرست پروژههای دانشی حساب |
| knowledge:write | ساخت پروژهٔ دانشی حساب |
برای یک برنامهٔ صرفاً متنی، responses:write کافی است. دسترسی خواندن موجودی، موجودی مشترک حساب را نشان میدهد. کلیدهای knowledge به پروژههای دانشی حساب متصل میشوند؛ آنها را فقط به برنامههایی بدهید که باید به این زمینه دسترسی داشته باشند.
تعویض بدون قطع محصول
کلید تازه بسازید، آن را در سرور جایگزین کنید و یک درخواست کوتاه بفرستید. سپس کلید قبلی را لغو کنید. کلید لغوشده دوباره فعال نمیشود. انقضا به زمان UTC بررسی میشود؛ گزینههای ساخت شامل ۳۰ روز، ۹۰ روز، یک سال یا بدون انقضا است.
موارد رد شدن
کلید ناشناخته، منقضی یا لغوشده با 401 رد میشود. حساب حذفشده یا تعلیقشده مجاز نیست. کلید معتبر بدون دسترسی لازم 403 میگیرد. لغو کلید اجرای از قبل پذیرفتهشده را الزاماً متوقف نمیکند؛ برای Work از مسیر cancel استفاده کنید.
قرارداد API 1.6.0 · تاریخچهٔ تغییرات