Conversations

List conversations, and open one with its turns, findings and scores.

Four GET endpoints, for pulling conversations and their evidence into your own warehouse or dashboard. A read-scoped key, on the same host as everything else.

The endpoints

GET /v1/threadsThe list, newest first, cursor paged
GET /v1/threads/{thread_id}One conversation's own record
GET /v1/threads/{thread_id}/sessionsThe calls or chats inside it
GET /v1/sessions/{session_id}One call or chat in full, with its evidence

Listing conversations

bash

curl "https://app.evidova.com/v1/threads?limit=50&channel=voice" \
  -H "authorization: Bearer ak_live_..."
stateThe conversation's lifecycle state
client_idOne client. A client-limited key may name only its own
channelvoice or chat
from, toThe window to read
limit1 to 200. Defaults to 50
cursorThe next_cursor from the previous page

The response is { items, next_cursor }. A null next_cursor is the last page.

What comes back

One conversation

id, contact_keyOurs, and the key that groups repeat contact from one customer
agent_id, client_idWhich agent spoke, and whose customer it was
state, outcome, funnel_stageWhere it ended up, and how far it got
first_event_at, last_event_atThe window it spans
factsWhat we extracted from it

One session, in full

GET /v1/sessions/{session_id} is the leaf, and the one worth linking to from your own tooling. It returns the transcript plus everything we concluded from it.

transcriptThe turns, in order
findingsWhich rule broke on which turn
scoresThe numbers, per score area
tool_eventsWhat the agent called, and what came back
latency, latency_flagsReply times, and which ones we called slow
versionsWhich rules version and which instrument produced the above
A key limited to one client gets 404 for a conversation belonging to another, not 403. The surface never confirms that a row it will not serve exists.

Read next

  • Scores and findings · The number, and which rule broke on which turn. Two endpoints, one reader's job.
  • Metrics · Bucketed readings, so you can chart quality beside your own numbers.
  • Errors and status codes · Every status both surfaces return, and what to do about each one.
This page as markdown