イベントを送信
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 バージョン。指定がない場合、アクセストークンはそのクライアントに固定されたバージョンを、トークンのないリクエストは現行バージョンを受け取ります。開発中のバージョンには、ここで指定した場合にのみアクセスできます。不明なバージョンにはコード
api_version_unknownとともに400を返します。GET /v1/versionsでバージョンを一覧できます。 Idempotency-Keyheaderstring必須- イベントごとに選び、再試行時にも同じものを送る値です。UUID など、表示可能な ASCII 文字 1〜255 文字で指定します。同じキーでの再試行には最初の応答が返され、本文が異なっていても再度課金されません。有効なキーがない場合、リクエストはコード
idempotency_key_requiredとともに400を返します。
リクエスト本文 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任意イベントが受け付けられた時点のプランの状態です。
lesson_plan.readyまたはlesson_plan.failedが届くことを約束するのはgeneratingだけです。それ以外の値はライブラリから提供されたプランで、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}}'翻訳と英語版リファレンスの内容が異なる場合は、英語版リファレンスが正しいものとします。