Lingara Lingara 文档 学习指南 API 库 应用 构建 嵌入 网页版
语言: 中文简体

向 NPC 发送一句话

API 版本 2026-10-virile-dragon

post https://api.getlingara.com/v1/embed/dialogue/turns

将玩家的 line 发送给一个角色,并以 delta 事件流式返回角色的回复,以 done 结束。角色只说 target_lang,并按玩家的 level 说话。不会存储任何内容:请在 history 中发送迄今为止的对话。每一轮都向 metered 客户端计费;其他调用方会收到 403 embed_needs_metered。

权限范围 embed:play

参数

Lingara-Versionheaderstring可选
回应此请求所用的 API 版本。不提供时,访问令牌使用其客户端绑定的版本,不带令牌的请求使用当前版本。仍在开发中的版本只能通过在此指定来访问。未知版本会以 400 回应,代码为 api_version_unknown。GET /v1/versions 会列出所有版本。

请求体 application/json

npcNpc必填
namestring必填
personastring | null可选
scenestring | null可选
source_langstring必填
target_langstring必填
levelinteger必填
linestring必填
historyarray of DialogueEntry可选

迄今为止的对话,按时间从早到晚,最多 12 行。窗口由你保管:Lingara 在两轮之间不存储任何内容。请将每条 NPC 回复截断为前 500 个字符后再发回。

speakerSpeaker必填
textstring必填

响应

200 角色的回复,逐段返回

流事件 text/event-stream

不发送 keepalive 注释。

delta TurnDelta
textstring必填
notice Notice
codestring必填
messagestring必填
done Done 结束数据流
error StreamError 结束数据流

在 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必填

示例

curl -N -X POST "https://api.getlingara.com/v1/embed/dialogue/turns" \
  -H "Authorization: Bearer $LINGARA_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"npc":{"name":"Auntie Lin","persona":"a street-food vendor who likes to haggle"},"scene":"A night market in Taipei, just after rain","source_lang":"en","target_lang":"zh","level":3,"line":"How much are the dumplings?","history":[{"speaker":"npc","text":"来来来,刚出锅的饺子!"},{"speaker":"player","text":"你好!"}]}'

更喜欢用库?请参阅“库”部分。

流示例

event: delta
data: {"text":"饺子十块钱一盘,"}

event: delta
data: {"text":"要几盘?"}

event: done
data: {}

如译文与英文参考文档不一致,以英文参考文档为准。