Threads

Operations of the Interactive Session API. Paths are relative to your deployment's API host.

GET /api/agent-session-api/sessions/{id}/threads

List the conversation threads on a session

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
idpathstringyesSession ID
StatusDescriptionBody
200application/json ThreadResponseDtoDataArrayEnvelope
400application/problem+json ProblemDetailsDto
401application/problem+json ProblemDetailsDto
403application/problem+json ProblemDetailsDto
404application/problem+json ProblemDetailsDto
409application/problem+json ProblemDetailsDto
422application/problem+json ProblemDetailsDto
500application/problem+json ProblemDetailsDto

POST /api/agent-session-api/sessions/{id}/threads

Create a new conversation thread on a session

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
idpathstringyesSession ID

Request body: application/json CreateThreadDto

StatusDescriptionBody
201application/json ThreadResponseDtoDataEnvelope
400application/problem+json ProblemDetailsDto
401application/problem+json ProblemDetailsDto
403application/problem+json ProblemDetailsDto
404application/problem+json ProblemDetailsDto
409application/problem+json ProblemDetailsDto
422application/problem+json ProblemDetailsDto
500application/problem+json ProblemDetailsDto

GET /api/agent-session-api/sessions/{id}/threads/{threadId}

Get one conversation Thread within its Session

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
idpathstringyesSession ID
threadIdpathstringyesThread ID
StatusDescriptionBody
200application/json ThreadResponseDtoDataEnvelope
400application/problem+json ProblemDetailsDto
401application/problem+json ProblemDetailsDto
403application/problem+json ProblemDetailsDto
404application/problem+json ProblemDetailsDto
409application/problem+json ProblemDetailsDto
422application/problem+json ProblemDetailsDto
500application/problem+json ProblemDetailsDto

PATCH /api/agent-session-api/sessions/{id}/threads/{threadId}

Rename a thread or change its lifecycle status (e.g. archive)

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
idpathstringyesSession ID
threadIdpathstringyesThread ID

Request body: application/json UpdateThreadDto

StatusDescriptionBody
200application/json ThreadResponseDtoDataEnvelope
400application/problem+json ProblemDetailsDto
401application/problem+json ProblemDetailsDto
403application/problem+json ProblemDetailsDto
404application/problem+json ProblemDetailsDto
409application/problem+json ProblemDetailsDto
422application/problem+json ProblemDetailsDto
500application/problem+json ProblemDetailsDto

DELETE /api/agent-session-api/sessions/{id}/threads/{threadId}

Delete a thread. Refuses to delete the session's last active thread (409).

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
idpathstringyesSession ID
threadIdpathstringyesThread ID
StatusDescriptionBody
400application/problem+json ProblemDetailsDto
401application/problem+json ProblemDetailsDto
403application/problem+json ProblemDetailsDto
404application/problem+json ProblemDetailsDto
409application/problem+json ProblemDetailsDto
422application/problem+json ProblemDetailsDto
500application/problem+json ProblemDetailsDto

POST /api/agent-session-api/sessions/{id}/threads/{threadId}/branches

Create a new Thread branch under the same immutable Session composition

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
idpathstringyesSession ID
threadIdpathstringyesParent Thread ID

Request body: application/json BranchThreadDto

StatusDescriptionBody
201application/json ThreadResponseDtoDataEnvelope
400application/problem+json ProblemDetailsDto
401application/problem+json ProblemDetailsDto
403application/problem+json ProblemDetailsDto
404application/problem+json ProblemDetailsDto
409application/problem+json ProblemDetailsDto
422application/problem+json ProblemDetailsDto
500application/problem+json ProblemDetailsDto

POST /api/agent-session-api/sessions/{id}/threads/{threadId}/interrupt

Interrupt the agent turn currently in flight on a thread

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
idpathstringyesSession ID
threadIdpathstringyesThread ID
StatusDescriptionBody
400application/problem+json ProblemDetailsDto
401application/problem+json ProblemDetailsDto
403application/problem+json ProblemDetailsDto
404application/problem+json ProblemDetailsDto
409application/problem+json ProblemDetailsDto
422application/problem+json ProblemDetailsDto
500application/problem+json ProblemDetailsDto

GET /api/agent-session-api/sessions/{id}/threads/{threadId}/messages

Get a thread's message history (cursor-paginated)

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
idpathstringyesSession ID
threadIdpathstringyesThread ID
cursorquerystringnoPagination cursor
limitquerystringnoPage size (max 100)
StatusDescriptionBody
200application/json MessageResponseDtoPaginatedEnvelope
400application/problem+json ProblemDetailsDto
401application/problem+json ProblemDetailsDto
403application/problem+json ProblemDetailsDto
404application/problem+json ProblemDetailsDto
409application/problem+json ProblemDetailsDto
422application/problem+json ProblemDetailsDto
500application/problem+json ProblemDetailsDto

POST /api/agent-session-api/sessions/{id}/threads/{threadId}/messages

Send a message on a thread (SSE streaming response). Requires Idempotency-Key header.

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
idpathstringyesSession ID
threadIdpathstringyesThread ID
StatusDescriptionBody
400application/problem+json ProblemDetailsDto
401application/problem+json ProblemDetailsDto
403application/problem+json ProblemDetailsDto
404application/problem+json ProblemDetailsDto
409application/problem+json ProblemDetailsDto
422application/problem+json ProblemDetailsDto
500application/problem+json ProblemDetailsDto

GET /api/agent-session-api/sessions/{id}/threads/{threadId}/timeline

Replay-on-refresh timeline for a thread

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
idpathstringyesSession ID
threadIdpathstringyesThread ID
afterSequencequerystringnoResume cursor: return rows with sequence > afterSequence ordered ascending. Omit on cold start.
limitquerystringnoPage size cap (max 1000, default 200).
StatusDescriptionBody
200application/json SessionTimelinePageDtoDataEnvelope
400application/problem+json ProblemDetailsDto
401application/problem+json ProblemDetailsDto
403application/problem+json ProblemDetailsDto
404application/problem+json ProblemDetailsDto
409application/problem+json ProblemDetailsDto
422application/problem+json ProblemDetailsDto
500application/problem+json ProblemDetailsDto