Send a message

Deliver an end-user message; the character's reply arrives async on the event log. Returns immediately with the user-message cursor — poll ``GET .../events?since=<cursor>`` for the reply (delayed-exposure UX). Send ``Idempotency-Key: <unique-per-message>`` to make retries safe (common on serverless/Vercel): a same-key re-call returns the original cursor + turn index (``idempotent_replay: true``) instead of creating a duplicate turn/reply.

Authentication

AuthorizationBearer

LoreOS runtime API key (ck_...), sent as Authorization: Bearer <key>.

Path parameters

session_idstringRequired

Headers

Idempotency-Keystring or nullOptional

Request

This endpoint expects an object.
textstringRequired1-4000 characters
reply_modeenum or nullOptional
context_eventslist of objects or nullOptional
active_addressee_actor_idslist of strings or nullOptional
audience_actor_idslist of strings or nullOptional

Response

Successful Response
schema_version"v0"

LoreOS success-envelope version.

dataobject
next_actionslist of objects

Concrete follow-up API actions; empty when no action is required.

Errors

401
Unauthorized Error
402
Payment Required Error
404
Not Found Error
409
Conflict Error
422
Unprocessable Entity Error