Managing Recordings

This page covers how to list, access, and delete recordings for your calls. These operations apply to all recording types (composite, individual, and raw).

List recordings

This endpoint returns the list of recordings for a call. When using Stream-managed storage (the default), all links are signed and expire after 2 weeks.

await call.listRecordings();

Delete recording

This endpoint allows you to delete a call recording. Recordings will only be deleted if they are stored on Stream's side (default).

An error will be returned if the recording doesn't exist.

await call.deleteRecording({ session: "<session id>", filename: "<filename>" });

User permissions

The following permissions are checked when users interact with the recording management API:

  • ListRecordings required to retrieve the list of recordings
  • DeleteRecording required to delete an existing recording (including its files if stored using Stream-managed storage)