رفتن به محتوا

مرجع API

آپلود چندبخشی

برای فایل‌های بزرگ یا اتصال‌های ناپایدار از آپلود چندبخشی استفاده کنید: جلسهٔ آپلود را بسازید، بخش‌های شماره‌دار را بفرستید و پیش از استفاده از فایل، آپلود را تکمیل کنید.

ورودی فایل و بازیابی اطلاعات ↗ · ساخت پرسش‌وپاسخ اسناد ↗

روند کار

  1. 01شروع آپلود چندبخشی
  2. 02آپلود یک بخش از فایل
  3. 03تکمیل آپلود چندبخشی

روی هر عملیات بزنید تا همهٔ ورودی‌ها، request، response و کدهای وضعیت آن را ببینید.

شروع آپلود چندبخشی

POST/api/v1/chat/uploads
آدرس پایهٔ APIhttps://api.mahvashai.ir
احراز هویتAPI key پروژه یا JWT کاربر
Responseresponse مستقیم با قالب OpenAI
نوع محتواapplication/json

پارامترها

این جدول همهٔ ورودی‌هایی را که این endpoint می‌پذیرد نشان می‌دهد. مقدارهای نمونه‌ها ساختگی‌اند و یک روش امن برای یکپارچه‌سازی را نشان می‌دهند.

ناممحل ارسالنوعالزامیپشتیبانیتوضیحات
X-Request-IDHeaderstringاختیاریمخصوص مهوششناسهٔ ردگیری که کلاینت می‌فرستد. در همهٔ پاسخ‌ها برمی‌گردد و اگر فرستاده نشود یا قالبش درست نباشد، سرور شناسهٔ تازه‌ای می‌سازد.
X-Mahvash-ProjectHeaderstringاختیاریمخصوص مهوشslug یا شناسهٔ پروژه در سازمان شما. دامنهٔ request را محدودتر می‌کند و هرگز دسترسی بیشتری نمی‌دهد.
bytesBodyintegerالزامیپشتیبانی می‌شودحجم کل فایل بر حسب بایت.
filenameBodystringالزامیپشتیبانی می‌شودنام فایل (بدون مسیر پوشه)، حداکثر ۲۵۵ نویسه.
mime_typeBodystringاختیاریپشتیبانی می‌شودنوع فایل (MIME) نهایی، پس از کنار هم گذاشتن بخش‌ها.
part_countBodyintegerاختیاریمخصوص مهوشتعداد بخش‌های موردانتظار که هنگام تکمیل آپلود بررسی می‌شود.
purposeBodystringاختیاریمشروطگزینه‌های رسمی assistants، batch، fine-tune، vision و evals؛ یا افزونه‌های مهوش user_data و responses.

فیلدهای مشروط فقط وقتی کار می‌کنند که مدل و مسیر ارائه‌دهنده از آن‌ها پشتیبانی کنند.

Request

curl -X POST 'https://api.mahvashai.ir/api/v1/chat/uploads' \
  -H "Authorization: Bearer $MAHVASH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "bytes": 1024,
  "filename": "report.pdf"
}'

Response

{
  "status": 0,
  "data": "<value>"
}

این نمونه فقط ساختار response را نشان می‌دهد؛ فیلدهای واقعی به نوع عملیات و مدل بستگی دارند.

کدهای وضعیت

HTTPتوضیحات
201منبع ساخته شد.
400request نامعتبر است.
401اطلاعات احراز هویت فرستاده نشده یا معتبر نیست.
403دسترسی لازم را ندارید.
429از سقف مجاز عبور کرده‌اید.
500خطای داخلی سرور.

آپلود یک بخش از فایل

PUT/api/v1/chat/uploads/{upload_id}/parts/{part_number}
آدرس پایهٔ APIhttps://api.mahvashai.ir
احراز هویتAPI key پروژه یا JWT کاربر
Responseresponse مستقیم با قالب OpenAI
نوع محتواmultipart/form-data

پارامترها

این جدول همهٔ ورودی‌هایی را که این endpoint می‌پذیرد نشان می‌دهد. مقدارهای نمونه‌ها ساختگی‌اند و یک روش امن برای یکپارچه‌سازی را نشان می‌دهند.

ناممحل ارسالنوعالزامیپشتیبانیتوضیحات
upload_idمسیر (path)stringالزامیپشتیبانی می‌شودشناسهٔ جلسهٔ آپلود.
part_numberمسیر (path)integerالزامیپشتیبانی می‌شودشمارهٔ بخش، با شروع از ۱.
X-Request-IDHeaderstringاختیاریمخصوص مهوششناسهٔ ردگیری که کلاینت می‌فرستد. در همهٔ پاسخ‌ها برمی‌گردد و اگر فرستاده نشود یا قالبش درست نباشد، سرور شناسهٔ تازه‌ای می‌سازد.
X-Mahvash-ProjectHeaderstringاختیاریمخصوص مهوشslug یا شناسهٔ پروژه در سازمان شما. دامنهٔ request را محدودتر می‌کند و هرگز دسترسی بیشتری نمی‌دهد.
fileFormstring (binary)الزامیپشتیبانی می‌شودمحتوای این بخش از فایل.

Request

curl -X PUT 'https://api.mahvashai.ir/api/v1/chat/uploads/<upload_id>/parts/<part_number>' \
  -H "Authorization: Bearer $MAHVASH_API_KEY" \
  -F 'file=@./your-file'

Response

{
  "status": 0,
  "data": "<value>"
}

این نمونه فقط ساختار response را نشان می‌دهد؛ فیلدهای واقعی به نوع عملیات و مدل بستگی دارند.

کدهای وضعیت

HTTPتوضیحات
200request با موفقیت انجام شد.
400request نامعتبر است.
401اطلاعات احراز هویت فرستاده نشده یا معتبر نیست.
403دسترسی لازم را ندارید.
404منبع پیدا نشد یا برای شما قابل دسترسی نیست.
409تداخل در وضعیت یا idempotency.
429از سقف مجاز عبور کرده‌اید.
500خطای داخلی سرور.
503یکی از سرویس‌های موردنیاز موقتاً در دسترس نیست.

تکمیل آپلود چندبخشی

POST/api/v1/chat/uploads/{upload_id}/complete
آدرس پایهٔ APIhttps://api.mahvashai.ir
احراز هویتAPI key پروژه یا JWT کاربر
Responseresponse مستقیم با قالب OpenAI
نوع محتواapplication/json

پارامترها

این جدول همهٔ ورودی‌هایی را که این endpoint می‌پذیرد نشان می‌دهد. مقدارهای نمونه‌ها ساختگی‌اند و یک روش امن برای یکپارچه‌سازی را نشان می‌دهند.

ناممحل ارسالنوعالزامیپشتیبانیتوضیحات
upload_idمسیر (path)stringالزامیپشتیبانی می‌شودشناسهٔ جلسهٔ آپلود.
X-Request-IDHeaderstringاختیاریمخصوص مهوششناسهٔ ردگیری که کلاینت می‌فرستد. در همهٔ پاسخ‌ها برمی‌گردد و اگر فرستاده نشود یا قالبش درست نباشد، سرور شناسهٔ تازه‌ای می‌سازد.
X-Mahvash-ProjectHeaderstringاختیاریمخصوص مهوشslug یا شناسهٔ پروژه در سازمان شما. دامنهٔ request را محدودتر می‌کند و هرگز دسترسی بیشتری نمی‌دهد.
sha256Bodystringاختیاریپشتیبانی می‌شودchecksum موردانتظار برای فایل نهایی.

Request

curl -X POST 'https://api.mahvashai.ir/api/v1/chat/uploads/<upload_id>/complete' \
  -H "Authorization: Bearer $MAHVASH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "sha256": "e3b0c44298fc1c149afbf4c8996fb924"
}'

Response

{
  "status": 0,
  "data": "<value>"
}

این نمونه فقط ساختار response را نشان می‌دهد؛ فیلدهای واقعی به نوع عملیات و مدل بستگی دارند.

کدهای وضعیت

HTTPتوضیحات
200request با موفقیت انجام شد.
400request نامعتبر است.
401اطلاعات احراز هویت فرستاده نشده یا معتبر نیست.
403دسترسی لازم را ندارید.
404منبع پیدا نشد یا برای شما قابل دسترسی نیست.
409تداخل در وضعیت یا idempotency.
429از سقف مجاز عبور کرده‌اید.
500خطای داخلی سرور.
503یکی از سرویس‌های موردنیاز موقتاً در دسترس نیست.

لغو آپلود چندبخشی

POST/api/v1/chat/uploads/{upload_id}/cancel
آدرس پایهٔ APIhttps://api.mahvashai.ir
احراز هویتAPI key پروژه یا JWT کاربر
Responseresponse مستقیم با قالب OpenAI

پارامترها

این جدول همهٔ ورودی‌هایی را که این endpoint می‌پذیرد نشان می‌دهد. مقدارهای نمونه‌ها ساختگی‌اند و یک روش امن برای یکپارچه‌سازی را نشان می‌دهند.

ناممحل ارسالنوعالزامیپشتیبانیتوضیحات
upload_idمسیر (path)stringالزامیپشتیبانی می‌شودشناسهٔ جلسهٔ آپلود.
X-Request-IDHeaderstringاختیاریمخصوص مهوششناسهٔ ردگیری که کلاینت می‌فرستد. در همهٔ پاسخ‌ها برمی‌گردد و اگر فرستاده نشود یا قالبش درست نباشد، سرور شناسهٔ تازه‌ای می‌سازد.
X-Mahvash-ProjectHeaderstringاختیاریمخصوص مهوشslug یا شناسهٔ پروژه در سازمان شما. دامنهٔ request را محدودتر می‌کند و هرگز دسترسی بیشتری نمی‌دهد.

Request

curl -X POST 'https://api.mahvashai.ir/api/v1/chat/uploads/<upload_id>/cancel' \
  -H "Authorization: Bearer $MAHVASH_API_KEY"

Response

{
  "status": 0,
  "data": "<value>"
}

این نمونه فقط ساختار response را نشان می‌دهد؛ فیلدهای واقعی به نوع عملیات و مدل بستگی دارند.

کدهای وضعیت

HTTPتوضیحات
200request با موفقیت انجام شد.
401اطلاعات احراز هویت فرستاده نشده یا معتبر نیست.
403دسترسی لازم را ندارید.
404منبع پیدا نشد یا برای شما قابل دسترسی نیست.
409تداخل در وضعیت یا idempotency.
429از سقف مجاز عبور کرده‌اید.
500خطای داخلی سرور.