Get Call Recording
Get a pre-signed playback URL for a call recording.
GET
Get Call Recording
Returns a short-lived pre-signed URL you can stream or download directly. The call must belong to the same sub-account as the API key. URLs expire in 1 hour (3600 seconds).
Endpoint
GET https://crmwebhook.com/functions/v1/crm-api/get-call-recording/{call_id}
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
call_id | string | Yes | The call UUID or call_sid. Either form is accepted. |
Headers
| Header | Value | Required |
|---|---|---|
x-api-key | cfy_your_api_key | Yes |
Example Request
curl https://crmwebhook.com/functions/v1/crm-api/get-call-recording/CA1234567890abcdef \
-H "x-api-key: cfy_your_api_key"
Response Shape
{
"call_id": "c1a2b3d4-e5f6-7890-abcd-ef1234567890",
"call_sid": "CA1234567890abcdef",
"recording_url": "https://centerfy-media-storage.s3...&X-Amz-Signature=...",
"expires_in_seconds": 3600
}
Response Fields
| Field | Type | Description |
|---|---|---|
call_id | string | Call UUID |
call_sid | string | Call SID |
recording_url | string | Pre-signed S3 URL for playback/download |
expires_in_seconds | number or null | URL expiry time in seconds. null for legacy recordings with permanent URLs. |
Response Codes
| Status | Meaning |
|---|---|
200 | Recording URL returned |
400 | Missing call_id |
401 | Invalid API key |
403 | API key doesn’t belong to this call’s sub-account |
404 | Call not found or no recording available |
500 | Failed to generate pre-signed URL |