Δημιουργία σχεδίου μαθήματος
Έκδοση API 2026-10-affable-towhee
Ξεκινά τη δημιουργία ενός σχεδίου μαθήματος και μεταδίδει την πρόοδό του ως ροή. Το started κατονομάζει το σχέδιο μόλις υπάρξει, ώστε μια σύνδεση που διακόπηκε να μπορεί να επανασυνδεθεί με GET /v1/lesson-plans/{id}/stream. Η ροή τελειώνει με result ή error. Ένα σχέδιο που εξυπηρετείται από τη βιβλιοθήκη φτάνει ως ένα μεμονωμένο result.
Εύρη δικαιωμάτων lesson_plans:write
Παράμετροι
Lingara-Versionheaderstringπροαιρετικό- Η έκδοση API με την οποία απαντάται αυτό το αίτημα. Χωρίς αυτήν, ένα token πρόσβασης παίρνει την έκδοση στην οποία είναι δεσμευμένος ο πελάτης του και ένα αίτημα χωρίς token παίρνει την τρέχουσα έκδοση. Η έκδοση που βρίσκεται ακόμη υπό ανάπτυξη είναι προσβάσιμη μόνο αν την ονομάσετε εδώ. Μια άγνωστη έκδοση απαντάται με
400και κωδικόapi_version_unknown. ΤοGET /v1/versionsπαραθέτει τις εκδόσεις.
Σώμα αιτήματος application/json
contextstringυποχρεωτικόsource_langstringυποχρεωτικόtarget_langstringυποχρεωτικόlevelintegerυποχρεωτικό
Αποκρίσεις
200 Η πρόοδος του σχεδίου, έπειτα το σχέδιο
Συμβάντα ροής text/event-stream
Στέλνει ένα σχόλιο keepalive κάθε 15 δευτερόλεπτα.
-
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."}]}]}}}Αν μια μετάφραση διαφέρει από την αγγλική τεκμηρίωση, ισχύει η αγγλική τεκμηρίωση.