# Recordings

## Get recording download paths

> Generate download paths for call recording playback. Returns separate paths for inbound (caller) and outbound (agent) audio channels, plus the recording metadata file.

```json
{"openapi":"3.1.0","info":{"title":"Platform API","version":"1.0.0"},"servers":[{"url":"https://api.platform.amigo.ai","description":"Production"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","description":"API key issued via `POST /v1/{workspace_id}/api-keys`. Pass the returned `api_key` value as a Bearer token."}},"schemas":{"RecordingUrlsResponse":{"properties":{"call_sid":{"type":"string","title":"Call Sid"},"status":{"type":"string","const":"available","title":"Status","default":"available"},"inbound_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Inbound Url"},"outbound_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Outbound Url"},"metadata_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Metadata Url"}},"type":"object","required":["call_sid"],"title":"RecordingUrlsResponse","description":"Download paths for call recording playback."},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/v1/{workspace_id}/recordings/{call_sid}/urls":{"get":{"tags":["Recordings"],"summary":"Get recording download paths","description":"Generate download paths for call recording playback. Returns separate paths for inbound (caller) and outbound (agent) audio channels, plus the recording metadata file.","operationId":"get-recording-urls","parameters":[{"name":"call_sid","in":"path","required":true,"schema":{"type":"string","title":"Call Sid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordingUrlsResponse"}}}},"404":{"description":"Recording not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"503":{"description":"Call recording not configured"}}}}}}
```

## Get recording metadata

> Fetch metadata for a call recording including duration, audio formats, sample rates, and file sizes.

```json
{"openapi":"3.1.0","info":{"title":"Platform API","version":"1.0.0"},"servers":[{"url":"https://api.platform.amigo.ai","description":"Production"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","description":"API key issued via `POST /v1/{workspace_id}/api-keys`. Pass the returned `api_key` value as a Bearer token."}},"schemas":{"RecordingMetadataResponse":{"properties":{"call_sid":{"type":"string","title":"Call Sid"},"workspace_id":{"type":"string","title":"Workspace Id"},"service_id":{"type":"string","title":"Service Id"},"direction":{"type":"string","title":"Direction"},"duration_seconds":{"type":"number","title":"Duration Seconds"},"inbound_format":{"type":"string","title":"Inbound Format"},"inbound_sample_rate":{"type":"integer","title":"Inbound Sample Rate"},"outbound_format":{"type":"string","title":"Outbound Format"},"outbound_sample_rate":{"type":"integer","title":"Outbound Sample Rate"},"tts_provider":{"type":"string","title":"Tts Provider"},"call_start_iso":{"type":"string","title":"Call Start Iso"},"call_end_iso":{"type":"string","title":"Call End Iso"},"inbound_size_bytes":{"type":"integer","title":"Inbound Size Bytes"},"outbound_size_bytes":{"type":"integer","title":"Outbound Size Bytes"},"media_start_epoch_ms":{"type":"number","title":"Media Start Epoch Ms"}},"type":"object","required":["call_sid","workspace_id","service_id","direction","duration_seconds","inbound_format","inbound_sample_rate","outbound_format","outbound_sample_rate","tts_provider","call_start_iso","call_end_iso","inbound_size_bytes","outbound_size_bytes","media_start_epoch_ms"],"title":"RecordingMetadataResponse","description":"Call recording metadata."},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/v1/{workspace_id}/recordings/{call_sid}/metadata":{"get":{"tags":["Recordings"],"summary":"Get recording metadata","description":"Fetch metadata for a call recording including duration, audio formats, sample rates, and file sizes.","operationId":"get-recording-metadata","parameters":[{"name":"call_sid","in":"path","required":true,"schema":{"type":"string","title":"Call Sid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordingMetadataResponse"}}}},"404":{"description":"Recording not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"503":{"description":"Call recording not configured"}}}}}}
```

## Download recording file

> Proxy download a recording file (inbound audio, outbound audio, or metadata) from UC Volume.

```json
{"openapi":"3.1.0","info":{"title":"Platform API","version":"1.0.0"},"servers":[{"url":"https://api.platform.amigo.ai","description":"Production"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","description":"API key issued via `POST /v1/{workspace_id}/api-keys`. Pass the returned `api_key` value as a Bearer token."}},"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/v1/{workspace_id}/recordings/{call_sid}/download/{filename}":{"get":{"tags":["Recordings"],"summary":"Download recording file","description":"Proxy download a recording file (inbound audio, outbound audio, or metadata) from UC Volume.","operationId":"download-recording-file","parameters":[{"name":"call_sid","in":"path","required":true,"schema":{"type":"string","title":"Call Sid"}},{"name":"filename","in":"path","required":true,"schema":{"type":"string","title":"Filename"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"400":{"description":"Invalid filename"},"404":{"description":"Recording file not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"503":{"description":"Call recording not configured"}}}}}}
```
