ساخت طرح درس
نسخهٔ API 2026-10-affable-towhee
ساخت یک طرح درس را آغاز میکند و پیشرفت آن را بهصورت جریانی ارسال میکند. started بهمحض ایجاد طرح، آن را معرفی میکند تا اتصال قطعشده بتواند با GET /v1/lesson-plans/{id}/stream دوباره وصل شود. جریان با result یا error پایان مییابد. طرحی که از کتابخانه ارائه شود، بهصورت یک result تنها میرسد.
دامنههای دسترسی lesson_plans:write
پارامترها
Lingara-Versionheaderstringاختیاری- نسخهٔ APIای که این درخواست با آن پاسخ داده میشود. بدون آن، توکن دسترسی نسخهای را میگیرد که کلاینتش به آن متصل است، و درخواستی بدون توکن نسخهٔ فعلی را میگیرد. به نسخهای که هنوز در حال توسعه است فقط با نامبردن آن در اینجا میتوان رسید. نسخهٔ ناشناخته با
400و کدapi_version_unknownپاسخ داده میشود.GET /v1/versionsنسخهها را فهرست میکند.
بدنهٔ درخواست application/json
contextstringالزامیsource_langstringالزامیtarget_langstringالزامیlevelintegerالزامی
پاسخها
200 پیشرفت طرح، سپس خود طرح
رویدادهای جریان text/event-stream
هر 15 ثانیه یک توضیح keepalive میفرستد.
-
startedPlanStarted -
plan_idstringالزامی
-
phasePlanPhase -
phasestringالزامیattemptintegerالزامی
-
resultPlanResult جریان را پایان میدهد -
planLessonPlanالزامیidstringالزامیstatusPlanStatusالزامیtitlestring | nullاختیاریsource_langstringالزامیtarget_langstringالزامیlevelintegerالزامیcreated_atstringالزامیcompleted_atstring | nullاختیاریai_generatedbooleanالزامیcontentLessonPlanContent | nullاختیاریintroductionstring | nullاختیاریlearning_objectivesarray of stringالزامیvocabularyarray of PlanWordالزامیwordstringالزامیpronunciationstring | nullاختیاریtranslationstringالزامی
setsarray of PlanSetالزامیnumberintegerالزامیcontextstring | nullاختیاریquestionsarray of PlanQuestionالزامیtypestringالزامیpromptstringالزامیoptionsarray of string | nullاختیاریanswerstringالزامیexplanationstringالزامیhintstring | nullاختیاری
-
errorStreamError جریان را پایان میدهد -
درون پاسخ 200 میرسد. خط وضعیت پیشتر ارسال شده است، پس هر خطایی پس از باز شدن جریان بهصورت این رویداد گزارش میشود.
codestringالزامیmessagestringالزامیplan_idstring | nullاختیاری
خطاها
402application/json- فراخوانی یک کلاینت مصرفی پیش از آنکه چیزی خرج کند رد شد.
spend_cap_reached: کلاینت یا حساب آن به سقف هزینهٔ ماهانهٔ خود رسیده است؛ سقف را در صفحهٔ یکپارچهسازیها بالا ببرید.metered_billing_inactive: صورتحساب مصرفی برای این حساب فعال نیست؛ آن را در صفحهٔ یکپارچهسازیها راهاندازی کنید یا روش پرداخت را بهروز کنید. 410application/json- نسخهٔ APIای که این درخواست با آن پاسخ داده میشود متوقف شده است. یک نسخهٔ پشتیبانیشده را در
Lingara-Versionبفرستید، یا کلاینت را به نسخهٔ دیگری متصل کنید. 4XXapplication/json- درخواست رد شد.
codeدلیل آن را مشخص میکند وerrorآن را با کلمات بیان میکند. 503application/json · text/plain- سرویس موقتاً در دسترس نیست؛ پس از تعداد ثانیههای ذکرشده در
Retry-Afterدوباره تلاش کنید. در زمان نگهداری، بدنهٔ پاسخ بهجای پوشش خطا، متن ساده است. 5XXapplication/json- درخواست رد شد.
codeدلیل آن را مشخص میکند وerrorآن را با کلمات بیان میکند.
codestringالزامیدلیل رد شدن درخواست، بهصورت کدی ثابت که میتوان بر اساس آن تصمیم گرفت: برای نمونه
insufficient_scope(403)،rate_limited(429) و، برای یک کلاینت مصرفی،spend_cap_reached(402) وmetered_billing_inactive(402).errorstringالزامی
نمونه
کتابخانه را ترجیح میدهید؟ بخش کتابخانهها را ببینید.
نمونهٔ جریان
event: started
data: {"plan_id":"3f1c2a9e-5b7d-4e21-9a0c-6d8e4f2b1a37"}
event: phase
data: {"phase":"selecting_vocabulary","attempt":1}
event: result
data: {"plan":{"id":"3f1c2a9e-5b7d-4e21-9a0c-6d8e4f2b1a37","status":"complete","title":"At the night market","source_lang":"en","target_lang":"zh","level":2,"created_at":"2026-09-23T10:00:00Z","completed_at":"2026-09-23T10:00:41Z","ai_generated":true,"content":{"introduction":"Order food and ask prices at a night market.","learning_objectives":["Ask how much something costs"],"vocabulary":[{"word":"多少钱","pronunciation":"duōshao qián","translation":"how much"}],"sets":[{"number":1,"questions":[{"type":"multiple_choice_word","prompt":"Which word asks for a price?","options":["多少钱","谢谢"],"answer":"多少钱","explanation":"多少钱 means how much money."}]}]}}}اگر ترجمه با مرجع انگلیسی تفاوت داشته باشد، مرجع انگلیسی معتبر است.