تبدیل متن به گفتار (POST)
همان عملیات GET با بدنهٔ JSON؛ برای متنهای بلند یا وقتی نمیخواهید متن در آدرس بیاید.
POST
scope: tts.sayhttps://api.irnoti.com/v1/tts/sayمتن فارسی را به فایل صوتی تککانالهٔ آمادهٔ سانترال تبدیل میکند و **خود فایل** را برمیگرداند (نه JSON). قواعد هزینه، صداها، قالبها و خطاها دقیقاً مثل GET /tts/say است. کلید را در هدر Authorization: Bearer irn_… بفرستید.
پارامترها
| نام | محل | نوع | توضیح |
|---|---|---|---|
| text * | بدنه | string | متن فارسی. |
| voice | بدنه | string | شناسهٔ صدا. |
| format | بدنه | string | wav8k، wav16k، sln، ulaw یا alaw. |
خطاهای خاص این endpoint
| 401 | unauthorized | کلید نامعتبر است، یا آزمایش رایگان بسته شده و کلیدی نفرستادهاید (key_required). |
| 402 | insufficient_balance | اعتبار برای این جمله کافی نیست؛ قبل از تولید صدا رد میشود و هزینهای ندارد. |
| 403 | forbidden | کلید دامنهٔ tts.say ندارد یا ویژگی TTS برای حساب شما فعال نیست. |
| 409 | kyc_required | احراز هویت تأیید نشده است. |
| 422 | text_too_long | متن از سقف مجاز طولانیتر است (در آزمایش رایگان کوتاهتر). |
| 422 | empty_text | متن چیزی برای خواندن ندارد (مثلاً فقط توضیح داخل [ ] یا ( ) است). |
| 422 | unknown_voice | صدای خواستهشده در دسترس نیست؛ فهرست را از GET /public/tts/info بگیرید. |
| 422 | unknown_format | قالب خواستهشده در دسترس نیست. |
| 422 | daily_limit | سقف حرف روزانهٔ کلید پر شده است. |
| 429 | demo_limit | سقف روزانهٔ آزمایش رایگان پر شده است یا درخواستها در دقیقه زیاد بوده؛ با کلید API ادامه دهید. |
| 502 | tts_failed | موتور صدا پاسخ نداد؛ هزینهای کم نشده است، دوباره تلاش کنید. |
| 503 | tts_disabled | سرویس موقتاً غیرفعال است. |
اجرای زنده (محیط تست)
باز کردن در کنسول کامل ←با یک کلید آزمایشی (در پنل ← وبسرویس ← «کلید آزمایشی») این درخواست را همینجا اجرا کنید. پیام واقعی ارسال نمیشود و هزینهای کسر نمیشود.