Lingara Lingara مستندات راهنماها API کتابخانه‌ها برنامه‌ها ساخت نسخهٔ وب
زبان: فارسی

ارسال رویداد

نسخهٔ API 2026-10-affable-towhee

post https://api.getlingara.com/v1/events

به Lingara می‌گوید در بازی شما چه اتفاقی افتاده است، مثلاً اینکه یادگیرنده وارد مکانی تازه شده است. رویداد یک بار ثبت می‌شود و با 202 پاسخ داده می‌شود. با generate: true Lingara یک برنامهٔ درسی هم آغاز می‌کند که به lesson_plans:write نیاز دارد و محدودیت و صورت‌حسابش مانند POST /v1/lesson-plans است: reaction برنامه را نام می‌برد و سپس lesson_plan.ready یا lesson_plan.failed می‌آید. جهان را توصیف کنید، هرگز نام یا گفتگوی یک بازیکن را نفرستید.

دامنه‌های دسترسی events:write

پارامترها

Lingara-Versionheaderstringاختیاری
نسخهٔ API‌ای که این درخواست با آن پاسخ داده می‌شود. بدون آن، توکن دسترسی نسخه‌ای را می‌گیرد که کلاینتش به آن متصل است، و درخواستی بدون توکن نسخهٔ فعلی را می‌گیرد. به نسخه‌ای که هنوز در حال توسعه است فقط با نام‌بردن آن در اینجا می‌توان رسید. نسخهٔ ناشناخته با 400 و کد api_version_unknown پاسخ داده می‌شود. GET /v1/versions نسخه‌ها را فهرست می‌کند.
Idempotency-Keyheaderstringالزامی
مقداری که برای هر رویداد انتخاب می‌کنید و هنگام تلاش دوباره همان را می‌فرستید: ۱ تا ۲۵۵ نویسهٔ ASCII قابل‌مشاهده، مانند یک UUID. تلاش دوباره با همان کلید، نخستین پاسخ را پس می‌گیرد و دوباره صورت‌حساب نمی‌شود، حتی اگر محتوایش فرق کند. بدون کلید معتبر، درخواست با 400 و کد idempotency_key_required پاسخ داده می‌شود.

بدنهٔ درخواست application/json

typestringالزامی
dataWorldPracticeRequestedالزامی
topicstringالزامی
source_langstringالزامی
target_langstringالزامی
levelintegerالزامی
tagsarray of stringاختیاری
generateboolean | nullاختیاری

پاسخ‌ها

202 رویداد ثبت شد

idstringالزامی
typestringالزامی
created_atstringالزامی
reactionReactionReport | nullاختیاری
statusReactionStatusالزامی
plan_idstring | nullاختیاری
plan_statusPlanStatus | nullاختیاری

وضعیت برنامه در زمان پذیرش رویداد. فقط generating وعده می‌دهد که lesson_plan.ready یا lesson_plan.failed خواهد آمد. هر مقدار دیگر برنامه‌ای از کتابخانه است که همین حالا می‌توانید با GET /v1/lesson-plans/{id} بخوانید.

codestring | nullاختیاری
errorstring | 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الزامی

نمونه

curl -X POST "https://api.getlingara.com/v1/events" \
  -H "Authorization: Bearer $LINGARA_TOKEN" \
  -H "Idempotency-Key: $IDEMPOTENCY_KEY" \
  -H "Content-Type: application/json" \
  -d '{"type":"world.context_changed","data":{"scene":"A night market in Taipei, just after rain","npc":{"name":"Auntie Lin","persona":"a street-food vendor who likes to haggle"},"source_lang":"en","target_lang":"zh","level":3,"tags":["market","food","chapter-2"],"generate":true}}'

کتابخانه را ترجیح می‌دهید؟ بخش کتابخانه‌ها را ببینید.

اگر ترجمه با مرجع انگلیسی تفاوت داشته باشد، مرجع انگلیسی معتبر است.