Get a call transcription
curl --request GET \ --url https://api.sipstack.com/api/v2/nova/calls/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/transcription \ --header 'x-api-key: <x-api-key>'import requests
url = "https://api.sipstack.com/api/v2/nova/calls/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/transcription"
headers = {"x-api-key": "<x-api-key>"}
response = requests.get(url, headers=headers)
print(response.json())const url = 'https://api.sipstack.com/api/v2/nova/calls/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/transcription';const options = {method: 'GET', headers: {'x-api-key': '<x-api-key>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}import axios from 'axios';
const options = { method: 'GET', url: 'https://api.sipstack.com/api/v2/nova/calls/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/transcription', headers: {'x-api-key': '<x-api-key>'}};
try { const { data } = await axios.request(options); console.log(data);} catch (error) { console.error(error);}Returns the transcript of a Nova call’s recording, plus a status you can
poll while transcription is still processing. Requires calls:read.
Transcript text is entitlement-gated: data.transcript is null
(and data.entitlements.transcription is false) unless your
organization has bought AI transcription — the endpoint still returns
200 with the call metadata. Summary / sentiment / topics are not exposed
on the public API. 404 when the call isn’t your organization’s, or when
no recording was captured.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”The Nova call id (UUID) from GET /api/v2/nova/calls.
Responses
Section titled “ Responses ”The transcript (or metadata with transcript: null when un-entitled).
object
A call recording’s transcript. Transcript text is entitlement-gated —
transcript is null (and entitlements.transcription is false) unless
the organization has bought AI transcription. Higher-order AI analysis
(summary / sentiment / topics) is intentionally not exposed on the public
API and stays portal-only.
object
The id of the call this transcript belongs to.
AI-processing status — poll while a recording is still transcribing.
null when the org is not entitled to transcription.
object
Per-utterance segments, when the provider returns them.
object
Overall transcript confidence (0–1), when known.
object
Whether the organization is entitled to transcript text.
Example
{ "data": { "status": "completed" }}Missing or invalid API key.
Inline error shape used by the messaging API and management endpoints.
object
Example
{ "success": false, "error": "Recipient phone number (to) is required"}The key is missing the calls:read scope, or the Nova API tier is not on your plan.
Inline error shape used by the messaging API and management endpoints.
object
Example
{ "success": false, "error": "Recipient phone number (to) is required"}Call not found in your organization, or no recording exists for it.
Inline error shape used by the messaging API and management endpoints.
object
Example
{ "success": false, "error": "Recipient phone number (to) is required"}