Skip to main content

Voice Call Recordings

Use these endpoints to retrieve what was said on a verification call. Voice webhooks carry callId, hasRecording, and hasTranscript; call these endpoints with that callId when a flag is true. All three routes are read-only and scoped to a search. They only read your own tenant’s data.
Every route returns 404 when the search is not yours or does not exist, when the call does not belong to the search, and when the call has no recording or transcript. The cases are deliberately indistinguishable. Right after a webhook a call can 404 for a few seconds while its files are written; retry shortly.

Shared Path Parameters

string
required
Search ID (UUID).
string
Call ID from a voice webhook or from the calls list. Required on the transcript and recording routes.

List Calls

GET /background-check/v1/searches/{searchId}/calls
Calls are oldest first. startedAt is when the call connected (null for an outbound call nobody answered), endedAt is when either side hung up, and durationSeconds is the connected time in whole seconds (null when startedAt is). Outbound calls that never connected are listed with both flags false.

Get Transcript

GET /background-check/v1/searches/{searchId}/calls/{callId}/transcript
agent is SNH AI’s voice agent; caller is the other person on the line in either direction. Text is returned as transcribed, the same content as the recording, so it can include personal data about the applicant; handle it like the recording. An outbound transcript contains only what the other person said after the recording notice. GET /background-check/v1/searches/{searchId}/calls/{callId}/recording
Each request mints a new signed link. It is a plain HTTPS GET that works for anyone holding it until expiresAt (15 minutes by default, never more than 60). Download the file, then discard the link. Recordings and transcripts are kept under SNH AI’s voice data retention policy. Once deleted, these routes return 404.