GET /api/v1/conversations returns finished calls across every agent. Filter on since to fetch only what changed since your last poll.
The polling pattern
1
First poll
Call the endpoint with
since=0 to retrieve all calls, then save the largest created_at in the response as your cursor.curl
2
Later polls
Pass the saved cursor as
since=<last_created_at>. Save the new largest created_at each time.3
Repeat
Poll at most a few times per minute.
Things to know
sinceis inclusive, so the call at the boundary comes back in the next poll.created_atis the last-write time, not the call start time. Editing an answer on an old call moves it into the current window. Match onconversation_idand update the existing row instead of inserting a new one.
Example request
Query parameters
Fetching transcripts
Transcripts are not in the cross-agent list. Fetch them one call at a time.curl
404 with { "error": "Transcript not found" }. Treat it as an empty transcript, not a failure.