Get a call recording
Returns one call recording by the recordingSid carried in webhook payloads and list responses. status: ready means the audio is fetchable through the signed-URL operation now; processing means it is still landing after the call — retry shortly. A voicemail’s recordingSid does not resolve here (the voicemail operations represent it); its audio still flows through the signed-URL operation. Requires the recordings scope.
GET
/customer/phone-systems/{phoneSystemId}/recordings/{recordingSid}Authorization
X-API-KeyAPI key · headerrequiredAPI key (sk_phones_* prefix) for programmatic access
Path parameters
phoneSystemIdstring<uuid>requiredPhone system identifier, discoverable via the accessible phone systems operation.
recordingSidstringrequiredRecording identifier from a webhook payload or a list response.
matches ^RE[0-9a-fA-F]{32}$
Responses
200The call recording, including its readiness status.
callSidstringrequiredCall identifier of the recorded call, as delivered in webhook payloads.
createdAtstring<date-time>requiredWhen the recording was created; lists are ordered by this, descending.
durationinteger | anyrequiredRecording duration in seconds, or null while the recording is still processing and its length is not yet known.
Show propertiesHide properties
Any of:
integer
integerany
anyfromstringrequiredCalling party.
phoneSystemIdstring<uuid>requiredPhone system this recording belongs to.
recordingSidstringrequiredRecording identifier, as delivered in webhook payloads.
statusstringrequiredWhether the audio is fetchable yet via the signed-URL operation.
Allowed:
readyprocessingtostringrequiredCalled party.
400Validation failure: recordingSid is not a valid recording identifier.
codestringrequiredStable machine identifier to branch on.
correlationIdstringrequiredRequest identifier to quote to support.
detailstringrequiredUser-safe explanation. Display it if you must; never match on it.
errorsobject[]Field-level validation problems. Present on validation failures.
Show propertiesHide properties
Array of
objectcodestringrequiredPer-field machine code (REQUIRED, TOO_SMALL, …).
detailstringrequiredHuman-readable description of the field problem.
pointerstringrequiredJSON Pointer to the offending request field.
paramsobjectExtra primitive detail about the condition, such as a limit that was hit.
retry_afterintegerSeconds to wait before retrying, when a meaningful delay exists.
retryablebooleanrequiredWhether this condition is transient. Derived from code.
statusintegerrequiredMirrors the HTTP status code.
titlestringrequiredShort human summary of the problem type.
typestringrequiredURL identifying the problem type. An identifier to match, not a link.
401The API key is missing, malformed, expired, or revoked.
codestringrequiredStable machine identifier to branch on.
correlationIdstringrequiredRequest identifier to quote to support.
detailstringrequiredUser-safe explanation. Display it if you must; never match on it.
errorsobject[]Field-level validation problems. Present on validation failures.
Show propertiesHide properties
Array of
objectcodestringrequiredPer-field machine code (REQUIRED, TOO_SMALL, …).
detailstringrequiredHuman-readable description of the field problem.
pointerstringrequiredJSON Pointer to the offending request field.
paramsobjectExtra primitive detail about the condition, such as a limit that was hit.
retry_afterintegerSeconds to wait before retrying, when a meaningful delay exists.
retryablebooleanrequiredWhether this condition is transient. Derived from code.
statusintegerrequiredMirrors the HTTP status code.
titlestringrequiredShort human summary of the problem type.
typestringrequiredURL identifying the problem type. An identifier to match, not a link.
403The key lacks the recordings:read scope, or is not a tenant API key.
codestringrequiredStable machine identifier to branch on.
correlationIdstringrequiredRequest identifier to quote to support.
detailstringrequiredUser-safe explanation. Display it if you must; never match on it.
errorsobject[]Field-level validation problems. Present on validation failures.
Show propertiesHide properties
Array of
objectcodestringrequiredPer-field machine code (REQUIRED, TOO_SMALL, …).
detailstringrequiredHuman-readable description of the field problem.
pointerstringrequiredJSON Pointer to the offending request field.
paramsobjectExtra primitive detail about the condition, such as a limit that was hit.
retry_afterintegerSeconds to wait before retrying, when a meaningful delay exists.
retryablebooleanrequiredWhether this condition is transient. Derived from code.
statusintegerrequiredMirrors the HTTP status code.
titlestringrequiredShort human summary of the problem type.
typestringrequiredURL identifying the problem type. An identifier to match, not a link.
404No such call recording in this phone system — a nonexistent identifier, permanently unavailable audio, and an identifier belonging to another phone system are indistinguishable — or the phone system itself is not covered by the key.
codestringrequiredStable machine identifier to branch on.
correlationIdstringrequiredRequest identifier to quote to support.
detailstringrequiredUser-safe explanation. Display it if you must; never match on it.
errorsobject[]Field-level validation problems. Present on validation failures.
Show propertiesHide properties
Array of
objectcodestringrequiredPer-field machine code (REQUIRED, TOO_SMALL, …).
detailstringrequiredHuman-readable description of the field problem.
pointerstringrequiredJSON Pointer to the offending request field.
paramsobjectExtra primitive detail about the condition, such as a limit that was hit.
retry_afterintegerSeconds to wait before retrying, when a meaningful delay exists.
retryablebooleanrequiredWhether this condition is transient. Derived from code.
statusintegerrequiredMirrors the HTTP status code.
titlestringrequiredShort human summary of the problem type.
typestringrequiredURL identifying the problem type. An identifier to match, not a link.
Request
curl -X GET "https://api.steerphones.com/v1/customer/phone-systems/%3Cuuid%3E/recordings/string" \
-H "X-API-Key: YOUR_API_KEY"Response
{
"callSid": "string",
"createdAt": "2024-01-01T00:00:00Z",
"duration": 0,
"from": "string",
"phoneSystemId": "<uuid>",
"recordingSid": "string",
"status": "ready",
"to": "string"
}{
"code": "string",
"correlationId": "string",
"detail": "string",
"errors": [
{
"code": "string",
"detail": "string",
"pointer": "string"
}
],
"params": {},
"retry_after": 0,
"retryable": true,
"status": 0,
"title": "string",
"type": "string"
}{
"code": "string",
"correlationId": "string",
"detail": "string",
"errors": [
{
"code": "string",
"detail": "string",
"pointer": "string"
}
],
"params": {},
"retry_after": 0,
"retryable": true,
"status": 0,
"title": "string",
"type": "string"
}{
"code": "string",
"correlationId": "string",
"detail": "string",
"errors": [
{
"code": "string",
"detail": "string",
"pointer": "string"
}
],
"params": {},
"retry_after": 0,
"retryable": true,
"status": 0,
"title": "string",
"type": "string"
}{
"code": "string",
"correlationId": "string",
"detail": "string",
"errors": [
{
"code": "string",
"detail": "string",
"pointer": "string"
}
],
"params": {},
"retry_after": 0,
"retryable": true,
"status": 0,
"title": "string",
"type": "string"
}