Disclosure: I'm Nabeel, founder of VoiceDash, a client portal for Retell agencies. This post is about the plumbing, not the product, and every Retell behaviour below is taken from Retell's own docs (linked inline).
TL;DR: Retell recording URLs do not expire unless you opt in to secure URLs, and Retell keeps call data forever unless you set a retention period. If you show recordings to clients in your own portal, decide up front whether you proxy Retell's links or copy the audio into your own storage, scope every lookup by tenant, and make your retention match (or beat) the one you configured in Retell.
What Retell actually gives you
A finished call object (from the Get Call API or the call_ended / call_analyzed webhooks) carries up to four audio links:
recording_url : the mixed recording
recording_multi_channel_url : each party on its own channel
scrubbed_recording_url and scrubbed_recording_multi_channel_url : the same audio with PII intervals beeped out, when the agent uses the "Everything except…