Skip to navigation

Download campaign transcripts

Streams one bounded UTF-8 CSV page with one row per campaign attempt. The default and maximum page size is 500. Follow X-Next-Cursor with the same limit until that header is absent; each cursor holds the first request’s upper watermark, so later attempts do not enter the download. Each row carries recipient_id, attempt_no, the accessible call_id, transcript_state, the selected transcript result id and readable Speaker: text lines when ready. A live call with no selected layer is pending; a terminal call with no layer is absent; no accessible call, or an unreadable or unverifiable selected layer, is unavailable. A hidden call has no call id or content. A row-specific object read failure produces unavailable and does not truncate later rows. A broken HTTP transfer is incomplete: discard that page and retry it with the same cursor, or without a cursor for the first page. The read never starts, retries or repairs transcript work and never emits destinations, audio or signed URLs.

Authentication

AuthorizationBearer

Create and manage workspace-owned keys through the existing app session routes, outside this public API. Creator and manager identities are audit actors only. Key validity follows workspace policy, expiry and explicit revocation, independently of creator membership. Do not include a workspace-selection header.

Path parameters

batch_idstringRequired1-128 characters
Campaign identifier.

Query parameters

limitintegerOptional1-500Defaults to 500
Attempts in this CSV page. Keep the same value while following the cursor.
cursorstringOptional<=2048 characters

Opaque continuation from X-Next-Cursor. It is bound to the workspace, campaign and limit and expires after 24 hours.

Response headers

X-Request-IdstringOptional
Safe server request correlation ID.
RateLimit-LimitintegerOptional
Requests allowed in the current window for the tightest applicable limit.
RateLimit-RemainingintegerOptional
Requests left in the current window.
RateLimit-ResetintegerOptional
Seconds until the current window resets.
Content-DispositionstringOptional

Sanitised attachment filename ending in -transcripts.csv.

X-Next-CursorstringOptional
Opaque continuation for the next CSV page. Absence means this download is complete.

Response

Campaign transcripts and explicit transcript states as CSV.

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
429
Too Many Requests Error
500
Internal Server Error
503
Service Unavailable Error