Member Junction
    Preparing search index...

    Optional scoping inputs to ConversationEngine.CreateConversation. Forwards to the new ApplicationScope / ApplicationID / DefaultAgentID columns on Conversation. All fields optional; omit for the default 'Global' main-chat behavior. Embedded chat surfaces (e.g. the Form Builder cockpit) should pass applicationScope: 'Application' plus an applicationId so the conversation doesn't pollute the main chat list.

    interface CreateConversationOptions {
        applicationId?: string;
        applicationScope?: "Both" | "Application" | "Global";
        defaultAgentId?: string;
        linkedEntityId?: string;
        linkedRecordId?: string;
    }
    Index

    Properties

    applicationId?: string

    The owning Application's ID. Required when scope is Application or Both.

    applicationScope?: "Both" | "Application" | "Global"

    Where this conversation surfaces in the UI:

    • 'Global' → main Chat app (no app binding). Default.
    • 'Application' → embedded surface only; hidden from main chat.
    • 'Both' → visible in both surfaces by default. DB CHECK constraint requires applicationId to match (Application/Both ⇒ applicationId NOT NULL; Global ⇒ applicationId NULL).
    defaultAgentId?: string

    Optional per-conversation pinned default agent (e.g. Research Agent).

    linkedEntityId?: string

    "What is this conversation about?" pointer — the Entity whose record this conversation references. Paired with linkedRecordId via the DB CHECK constraint CK_Conversation_LinkBinding: both NULL or both populated. Form Builder cockpit passes the MJ: Components entity ID + the active form's ComponentID so the cockpit can later filter "prior conversations about THIS form."

    linkedRecordId?: string

    Primary key of the linked record, serialized as a string. Used with linkedEntityId. NVARCHAR(500) in the DB — handles any PK shape (UUID, int, composite).