POST /sessions/{session_id}/transcript
Append transcript lines to a session's record.
The in-sandbox tailer for interactive sessions. A sandbox token may only push its own session's transcript. Idempotent by transcript line uuid; tolerant of malformed lines.
curl -X POST "https://api.ellipsis.dev/v1/sessions/{session_id}/transcript" \
-H "Authorization: Bearer $ELLIPSIS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"lines":[]}'{
"completed_turns": 0,
"ingested": 0,
"next_offset": 0,
"skipped": 0
}import os
from ellipsis import Ellipsis
client = Ellipsis(api_key=os.environ["ELLIPSIS_API_TOKEN"])
result = client.sessions.ingest_transcript("...", [])
print(result){
"completed_turns": 0,
"ingested": 0,
"next_offset": 0,
"skipped": 0
}import { Ellipsis } from '@ellipsis-dev/sdk';
const client = new Ellipsis({
apiKey: process.env.ELLIPSIS_API_TOKEN!,
});
const result = await client.sessions.ingestTranscript('...', { lines: [] });
console.log(result);{
"completed_turns": 0,
"ingested": 0,
"next_offset": 0,
"skipped": 0
}{
"properties": {
"lines": {
"items": {
"type": "string"
},
"type": "array"
},
"offset": {
"default": 0,
"type": "integer"
}
},
"required": [
"lines"
],
"type": "object"
}{
"properties": {
"completed_turns": {
"type": "integer"
},
"ingested": {
"type": "integer"
},
"next_offset": {
"type": "integer"
},
"skipped": {
"type": "integer"
}
},
"required": [
"ingested",
"skipped",
"next_offset",
"completed_turns"
],
"type": "object"
}Request
session_idstringrequired
linesarray<string>required
Raw on-disk transcript lines starting at `offset`.
offsetdefault
0integerThe line offset the batch starts at.