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[];
}>;
}