Skip to content

Interface: ConversationMessageRequest

@kortexya/reasoninglayer


@kortexya/reasoninglayer / Conversation / ConversationMessageRequest

Interface: ConversationMessageRequest

Defined in: src/types/conversation.ts:14

Request to send a message in a conversation.

Remarks

The conversation service translates natural language to OSFQL, executes it (with up to 3 self-correction retries on failure), and returns both the generated OSFQL and the results.

Reuse conversationId from a previous response for multi-turn context (pronoun resolution, follow-up queries).

Properties

constrainedDecode?

optional constrainedDecode: boolean | null

Defined in: src/types/conversation.ts:42

Per-request override for constrained-decode repair of a hallucinated query.

Remarks

false disables the repair — the certify-or-abstain gate just abstains, surfacing the raw model output. true / omitted keep the default (repair when configured). Lets a UI toggle constrained decoding to compare the correction against the raw query. See ConversationMessageResponse.repaired.


conversationId?

optional conversationId: string | null

Defined in: src/types/conversation.ts:22

Optional conversation ID to continue an existing conversation. If omitted, a new conversation is created.


currentSortContext?

optional currentSortContext: string | null

Defined in: src/types/conversation.ts:28

Optional sort name hint from the current page context.


generateCertificate?

optional generateCertificate: boolean

Defined in: src/types/conversation.ts:31

When true, generate a cryptographic validity certificate for this response.


message

message: string

Defined in: src/types/conversation.ts:16

The user’s natural language message.


model?

optional model: string | null

Defined in: src/types/conversation.ts:57

Model id selecting which served NL→OSFQL endpoint answers this turn.

Remarks

Omitted means the server’s default LLM. Drives side-by-side model comparison — one call per model — and is echoed back as ConversationMessageResponse.modelId, which the server populates only when this is set.

The backend documents the ids as coming from a compare registry at GET /api/v1/conversation/models, but that route is absent from the published OpenAPI spec, so the SDK does not wrap it; ids must come from configuration.


sessionId?

optional sessionId: string | null

Defined in: src/types/conversation.ts:25

Session ID for session tracking.