Vercel Blob handles object storage for voice-drop audio files, uploaded creative assets, and other artifacts that don't belong in the database. Files are scoped per-agency at the path level (agency/{agencyId}/...) so signed URLs only reveal the requesting agency's data.
MIME validation runs at the upload endpoint with a per-file size cap (10 MB for audio). When BLOB_READ_WRITE_TOKEN is unset, the upload endpoint returns 503 with a hint and the UI auto-falls-back to URL-paste mode — graceful degradation for self-hosted deployments.