Skip to content
Start here

Recordings

Fetch all recordings for an App
GET/accounts/{account_id}/realtime/kit/{app_id}/recordings
Start recording a meeting
POST/accounts/{account_id}/realtime/kit/{app_id}/recordings
Fetch active recording
GET/accounts/{account_id}/realtime/kit/{app_id}/recordings/active-recording/{meeting_id}
Fetch details of a recording
GET/accounts/{account_id}/realtime/kit/{app_id}/recordings/{recording_id}
Pause/Resume/Stop recording
PUT/accounts/{account_id}/realtime/kit/{app_id}/recordings/{recording_id}
Start recording audio and video tracks
POST/accounts/{account_id}/realtime/kit/{app_id}/recordings/track
ModelsExpand Collapse
RecordingGetRecordingsResponse { data, paging, success }
data: array of { id, audio_download_url, download_url, 11 more }
id: string

ID of the recording

formatuuid
audio_download_url: string

If the audio_config is passed, the URL for downloading the audio recording is returned.

formaturi
download_url: string

URL where the recording can be downloaded.

formaturi
download_url_expiry: string

Timestamp when the download URL expires.

formatdate-time
file_size: number

File size of the recording, in bytes.

invoked_time: string

Timestamp when this recording was invoked.

formatdate-time
output_file_name: string

File name of the recording.

session_id: string

ID of the meeting session this recording is for.

formatuuid
started_time: string

Timestamp when this recording actually started after being invoked. Usually a few seconds after invoked_time.

formatdate-time
status: "INVOKED" or "RECORDING" or "UPLOADING" or 3 more

Current status of the recording.

One of the following:
"INVOKED"
"RECORDING"
"UPLOADING"
"UPLOADED"
"ERRORED"
"PAUSED"
stopped_time: string

Timestamp when this recording was stopped. Optional; is present only when the recording has actually been stopped.

formatdate-time
meeting: optional { id, created_at, updated_at, 7 more }
id: string

ID of the meeting.

formatuuid
created_at: string

Timestamp the object was created at. The time is returned in ISO format.

formatdate-time
updated_at: string

Timestamp the object was updated at. The time is returned in ISO format.

formatdate-time
live_stream_on_start: optional boolean

Specifies if the meeting should start getting livestreamed on start.

persist_chat: optional boolean

Specifies if Chat within a meeting should persist for a week.

record_on_start: optional boolean

Specifies if the meeting should start getting recorded as soon as someone joins the meeting.

session_keep_alive_time_in_secs: optional number

Time in seconds, for which a session remains active, after the last participant has left the meeting.

maximum600
minimum60
status: optional "ACTIVE" or "INACTIVE"

Whether the meeting is ACTIVE or INACTIVE. Users will not be able to join an INACTIVE meeting.

One of the following:
"ACTIVE"
"INACTIVE"
summarize_on_end: optional boolean

Automatically generate summary of meetings using transcripts. Requires Transcriptions to be enabled, and can be retrieved via Webhooks or summary API.

title: optional string

Title of the meeting.

recording_duration: optional number

Total recording time in seconds.

storage_config: optional { type, access_key, auth_method, 9 more }
type: "aws" or "azure" or "digitalocean" or 2 more

Type of storage media.

One of the following:
"aws"
"azure"
"digitalocean"
"gcs"
"sftp"
access_key: optional string

Access key of the storage medium. Access key is not required for the gcs storage media type.

Note that this field is not readable by clients, only writeable.

auth_method: optional "KEY" or "PASSWORD"

Authentication method used for “sftp” type storage medium

One of the following:
"KEY"
"PASSWORD"
bucket: optional string

Name of the storage medium’s bucket.

host: optional string

SSH destination server host for SFTP type storage medium

password: optional string

SSH destination server password for SFTP type storage medium when auth_method is “PASSWORD”. If auth_method is “KEY”, this specifies the password for the ssh private key.

path: optional string

Path relative to the bucket root at which the recording will be placed.

port: optional number

SSH destination server port for SFTP type storage medium

private_key: optional string

Private key used to login to destination SSH server for SFTP type storage medium, when auth_method used is “KEY”

region: optional string

Region of the storage medium.

secret: optional string

Secret key of the storage medium. Similar to access_key, it is only writeable by clients, not readable.

username: optional string

SSH destination server username for SFTP type storage medium

paging: { end_offset, start_offset, total_count }
end_offset: number
start_offset: number
total_count: number
minimum0
success: boolean
RecordingStartRecordingsResponse { success, data }
success: boolean

Success status of the operation

data: optional { id, audio_download_url, download_url, 12 more }

Data returned by the operation

id: string

ID of the recording

formatuuid
audio_download_url: string

If the audio_config is passed, the URL for downloading the audio recording is returned.

formaturi
download_url: string

URL where the recording can be downloaded.

formaturi
download_url_expiry: string

Timestamp when the download URL expires.

formatdate-time
file_size: number

File size of the recording, in bytes.

invoked_time: string

Timestamp when this recording was invoked.

formatdate-time
output_file_name: string

File name of the recording.

session_id: string

ID of the meeting session this recording is for.

formatuuid
started_time: string

Timestamp when this recording actually started after being invoked. Usually a few seconds after invoked_time.

formatdate-time
status: "INVOKED" or "RECORDING" or "UPLOADING" or 3 more

Current status of the recording.

One of the following:
"INVOKED"
"RECORDING"
"UPLOADING"
"UPLOADED"
"ERRORED"
"PAUSED"
stopped_time: string

Timestamp when this recording was stopped. Optional; is present only when the recording has actually been stopped.

formatdate-time
recording_duration: optional number

Total recording time in seconds.

start_reason: optional { caller, reason }
caller: optional { name, type, user_Id }
name: optional string

Name of the user who started the recording.

type: optional "ORGANIZATION" or "USER"

The type can be an App or a user. If the type is user, then only the user_Id and name are returned.

One of the following:
"ORGANIZATION"
"USER"
user_Id: optional string

The user ID of the person who started the recording.

formatuuid
reason: optional "API_CALL" or "RECORD_ON_START"

Specifies if the recording was started using the “Start a Recording”API or using the parameter RECORD_ON_START in the “Create a meeting” API.

If the recording is initiated using the “RECORD_ON_START” parameter, the user details will not be populated.

One of the following:
"API_CALL"
"RECORD_ON_START"
stop_reason: optional { caller, reason }
caller: optional { name, type, user_Id }
name: optional string

Name of the user who stopped the recording.

type: optional "ORGANIZATION" or "USER"

The type can be an App or a user. If the type is user, then only the user_Id and name are returned.

One of the following:
"ORGANIZATION"
"USER"
user_Id: optional string

The user ID of the person who stopped the recording.

formatuuid
reason: optional "API_CALL" or "INTERNAL_ERROR" or "ALL_PEERS_LEFT"

Specifies the reason why the recording stopped.

One of the following:
"API_CALL"
"INTERNAL_ERROR"
"ALL_PEERS_LEFT"
storage_config: optional { type, access_key, auth_method, 9 more }
type: "aws" or "azure" or "digitalocean" or 2 more

Type of storage media.

One of the following:
"aws"
"azure"
"digitalocean"
"gcs"
"sftp"
access_key: optional string

Access key of the storage medium. Access key is not required for the gcs storage media type.

Note that this field is not readable by clients, only writeable.

auth_method: optional "KEY" or "PASSWORD"

Authentication method used for “sftp” type storage medium

One of the following:
"KEY"
"PASSWORD"
bucket: optional string

Name of the storage medium’s bucket.

host: optional string

SSH destination server host for SFTP type storage medium

password: optional string

SSH destination server password for SFTP type storage medium when auth_method is “PASSWORD”. If auth_method is “KEY”, this specifies the password for the ssh private key.

path: optional string

Path relative to the bucket root at which the recording will be placed.

port: optional number

SSH destination server port for SFTP type storage medium

private_key: optional string

Private key used to login to destination SSH server for SFTP type storage medium, when auth_method used is “KEY”

region: optional string

Region of the storage medium.

secret: optional string

Secret key of the storage medium. Similar to access_key, it is only writeable by clients, not readable.

username: optional string

SSH destination server username for SFTP type storage medium

RecordingGetActiveRecordingsResponse { data, success }
data: { id, audio_download_url, download_url, 9 more }

Data returned by the operation

id: string

ID of the recording

formatuuid
audio_download_url: string

If the audio_config is passed, the URL for downloading the audio recording is returned.

formaturi
download_url: string

URL where the recording can be downloaded.

formaturi
download_url_expiry: string

Timestamp when the download URL expires.

formatdate-time
file_size: number

File size of the recording, in bytes.

invoked_time: string

Timestamp when this recording was invoked.

formatdate-time
output_file_name: string

File name of the recording.

session_id: string

ID of the meeting session this recording is for.

formatuuid
started_time: string

Timestamp when this recording actually started after being invoked. Usually a few seconds after invoked_time.

formatdate-time
status: "INVOKED" or "RECORDING" or "UPLOADING" or 3 more

Current status of the recording.

One of the following:
"INVOKED"
"RECORDING"
"UPLOADING"
"UPLOADED"
"ERRORED"
"PAUSED"
stopped_time: string

Timestamp when this recording was stopped. Optional; is present only when the recording has actually been stopped.

formatdate-time
recording_duration: optional number

Total recording time in seconds.

success: boolean

Success status of the operation

RecordingGetOneRecordingResponse { success, data }
success: boolean

Success status of the operation

data: optional { id, audio_download_url, download_url, 12 more }

Data returned by the operation

id: string

ID of the recording

formatuuid
audio_download_url: string

If the audio_config is passed, the URL for downloading the audio recording is returned.

formaturi
download_url: string

URL where the recording can be downloaded.

formaturi
download_url_expiry: string

Timestamp when the download URL expires.

formatdate-time
file_size: number

File size of the recording, in bytes.

invoked_time: string

Timestamp when this recording was invoked.

formatdate-time
output_file_name: string

File name of the recording.

session_id: string

ID of the meeting session this recording is for.

formatuuid
started_time: string

Timestamp when this recording actually started after being invoked. Usually a few seconds after invoked_time.

formatdate-time
status: "INVOKED" or "RECORDING" or "UPLOADING" or 3 more

Current status of the recording.

One of the following:
"INVOKED"
"RECORDING"
"UPLOADING"
"UPLOADED"
"ERRORED"
"PAUSED"
stopped_time: string

Timestamp when this recording was stopped. Optional; is present only when the recording has actually been stopped.

formatdate-time
recording_duration: optional number

Total recording time in seconds.

start_reason: optional { caller, reason }
caller: optional { name, type, user_Id }
name: optional string

Name of the user who started the recording.

type: optional "ORGANIZATION" or "USER"

The type can be an App or a user. If the type is user, then only the user_Id and name are returned.

One of the following:
"ORGANIZATION"
"USER"
user_Id: optional string

The user ID of the person who started the recording.

formatuuid
reason: optional "API_CALL" or "RECORD_ON_START"

Specifies if the recording was started using the “Start a Recording”API or using the parameter RECORD_ON_START in the “Create a meeting” API.

If the recording is initiated using the “RECORD_ON_START” parameter, the user details will not be populated.

One of the following:
"API_CALL"
"RECORD_ON_START"
stop_reason: optional { caller, reason }
caller: optional { name, type, user_Id }
name: optional string

Name of the user who stopped the recording.

type: optional "ORGANIZATION" or "USER"

The type can be an App or a user. If the type is user, then only the user_Id and name are returned.

One of the following:
"ORGANIZATION"
"USER"
user_Id: optional string

The user ID of the person who stopped the recording.

formatuuid
reason: optional "API_CALL" or "INTERNAL_ERROR" or "ALL_PEERS_LEFT"

Specifies the reason why the recording stopped.

One of the following:
"API_CALL"
"INTERNAL_ERROR"
"ALL_PEERS_LEFT"
storage_config: optional { type, access_key, auth_method, 9 more }
type: "aws" or "azure" or "digitalocean" or 2 more

Type of storage media.

One of the following:
"aws"
"azure"
"digitalocean"
"gcs"
"sftp"
access_key: optional string

Access key of the storage medium. Access key is not required for the gcs storage media type.

Note that this field is not readable by clients, only writeable.

auth_method: optional "KEY" or "PASSWORD"

Authentication method used for “sftp” type storage medium

One of the following:
"KEY"
"PASSWORD"
bucket: optional string

Name of the storage medium’s bucket.

host: optional string

SSH destination server host for SFTP type storage medium

password: optional string

SSH destination server password for SFTP type storage medium when auth_method is “PASSWORD”. If auth_method is “KEY”, this specifies the password for the ssh private key.

path: optional string

Path relative to the bucket root at which the recording will be placed.

port: optional number

SSH destination server port for SFTP type storage medium

private_key: optional string

Private key used to login to destination SSH server for SFTP type storage medium, when auth_method used is “KEY”

region: optional string

Region of the storage medium.

secret: optional string

Secret key of the storage medium. Similar to access_key, it is only writeable by clients, not readable.

username: optional string

SSH destination server username for SFTP type storage medium

RecordingPauseResumeStopRecordingResponse { success, data }
success: boolean

Success status of the operation

data: optional { id, audio_download_url, download_url, 12 more }

Data returned by the operation

id: string

ID of the recording

formatuuid
audio_download_url: string

If the audio_config is passed, the URL for downloading the audio recording is returned.

formaturi
download_url: string

URL where the recording can be downloaded.

formaturi
download_url_expiry: string

Timestamp when the download URL expires.

formatdate-time
file_size: number

File size of the recording, in bytes.

invoked_time: string

Timestamp when this recording was invoked.

formatdate-time
output_file_name: string

File name of the recording.

session_id: string

ID of the meeting session this recording is for.

formatuuid
started_time: string

Timestamp when this recording actually started after being invoked. Usually a few seconds after invoked_time.

formatdate-time
status: "INVOKED" or "RECORDING" or "UPLOADING" or 3 more

Current status of the recording.

One of the following:
"INVOKED"
"RECORDING"
"UPLOADING"
"UPLOADED"
"ERRORED"
"PAUSED"
stopped_time: string

Timestamp when this recording was stopped. Optional; is present only when the recording has actually been stopped.

formatdate-time
recording_duration: optional number

Total recording time in seconds.

start_reason: optional { caller, reason }
caller: optional { name, type, user_Id }
name: optional string

Name of the user who started the recording.

type: optional "ORGANIZATION" or "USER"

The type can be an App or a user. If the type is user, then only the user_Id and name are returned.

One of the following:
"ORGANIZATION"
"USER"
user_Id: optional string

The user ID of the person who started the recording.

formatuuid
reason: optional "API_CALL" or "RECORD_ON_START"

Specifies if the recording was started using the “Start a Recording”API or using the parameter RECORD_ON_START in the “Create a meeting” API.

If the recording is initiated using the “RECORD_ON_START” parameter, the user details will not be populated.

One of the following:
"API_CALL"
"RECORD_ON_START"
stop_reason: optional { caller, reason }
caller: optional { name, type, user_Id }
name: optional string

Name of the user who stopped the recording.

type: optional "ORGANIZATION" or "USER"

The type can be an App or a user. If the type is user, then only the user_Id and name are returned.

One of the following:
"ORGANIZATION"
"USER"
user_Id: optional string

The user ID of the person who stopped the recording.

formatuuid
reason: optional "API_CALL" or "INTERNAL_ERROR" or "ALL_PEERS_LEFT"

Specifies the reason why the recording stopped.

One of the following:
"API_CALL"
"INTERNAL_ERROR"
"ALL_PEERS_LEFT"
storage_config: optional { type, access_key, auth_method, 9 more }
type: "aws" or "azure" or "digitalocean" or 2 more

Type of storage media.

One of the following:
"aws"
"azure"
"digitalocean"
"gcs"
"sftp"
access_key: optional string

Access key of the storage medium. Access key is not required for the gcs storage media type.

Note that this field is not readable by clients, only writeable.

auth_method: optional "KEY" or "PASSWORD"

Authentication method used for “sftp” type storage medium

One of the following:
"KEY"
"PASSWORD"
bucket: optional string

Name of the storage medium’s bucket.

host: optional string

SSH destination server host for SFTP type storage medium

password: optional string

SSH destination server password for SFTP type storage medium when auth_method is “PASSWORD”. If auth_method is “KEY”, this specifies the password for the ssh private key.

path: optional string

Path relative to the bucket root at which the recording will be placed.

port: optional number

SSH destination server port for SFTP type storage medium

private_key: optional string

Private key used to login to destination SSH server for SFTP type storage medium, when auth_method used is “KEY”

region: optional string

Region of the storage medium.

secret: optional string

Secret key of the storage medium. Similar to access_key, it is only writeable by clients, not readable.

username: optional string

SSH destination server username for SFTP type storage medium