Sessions API

    Manage multi-turn conversations with persistent context.

    sendMessage()

    Send a follow-up message in an existing session (async).

    typescript
    const { executionId } = await client.sessions.sendMessage(sessionId, {
      message: 'Now compare with Q3',
      attachmentIds: ['uuid-1'], // optional
    });

    sendMessageSync()

    Send a message and wait for the complete response.

    typescript
    const result = await client.sessions.sendMessageSync(sessionId, {
      message: 'Summarize in a table',
    });
    
    console.log(result.output);

    getHistory()

    typescript
    const history = await client.sessions.getHistory(sessionId);
    
    history.messages.forEach(msg => {
      console.log(`[${msg.role}] ${msg.content}`);
    });

    list()

    typescript
    const { sessions, total, hasMore } = await client.sessions.list({
      limit: 20,
      offset: 0,
    });
    
    sessions.forEach(s => {
      console.log(`${s.id}: "${s.lastUserMessage}" (${s.messageCount} msgs)`);
    });

    getArtifacts()

    typescript
    const artifacts = await client.sessions.getArtifacts(sessionId);
    
    artifacts.forEach(a => {
      console.log(`${a.type}: ${a.title} (${a.mimeType})`);
    });

    SessionHistory Type

    typescript
    interface SessionHistory {
      sessionId: string;
      agentId: string;
      messages: Array<{
        role: 'user' | 'assistant';
        content: string;
        timestamp: string;
        toolCalls?: ToolCallResult[];
        attachments?: AttachmentRef[];
      }>;
    }