مستندات
صدا
متن به گفتار (پاسخ فایل صوتی) و گفتار به متن (آپلود multipart).
متن به گفتار
POST
https://iranrouter.com/v1/audio/speechbash
curl https://iranrouter.com/v1/audio/speech \
-H "Authorization: Bearer ir-..." \
-H "Content-Type: application/json" \
-d '{"model": "openai/tts-1", "input": "سلام، این یک تست است", "voice": "alloy"}' \
--output out.mp3پاسخ یک فایل صوتی است، نه JSON — پس هزینه و شناسهٔ درخواست در هدر میآیند:
x-cost-rial و x-request-id. هزینه بر اساس متنی است که فرستادید، چون پاسخ صوتی هیچ شمارشی با خودش ندارد.گفتار به متن
POST
https://iranrouter.com/v1/audio/transcriptionsPOST
https://iranrouter.com/v1/audio/translationsbash
curl https://iranrouter.com/v1/audio/transcriptions \
-H "Authorization: Bearer ir-..." \
-F file=@voice.mp3 \
-F model=openai/whisper-1 \
-F language=fa- درخواست
multipart/form-dataاست و فایل شما دستنخورده به ارائهدهنده میرسد؛ فقط نام مدل به نامی که ارائهدهنده میشناسد تبدیل میشود. - فیلد model اجباری است. اگر نباشد، پاسخ ۴۰۰ است — و باید قبل از فایل در فرم بیاید، همانطور که همهٔ SDKها میفرستند.
- رزرو کیف پول از روی حجم فایل تخمین زده میشود و بعد از پاسخ با ثانیههای واقعی تسویه میشود.
هر دو مسیر با Idempotency-Key سازگارند — توضیحش در Embeddings.