Overview
Recording assets are files that are generated after a successful recording. Recording assets are also generated through live streams and external streams when recording is enabled.
If a cloud storage location (for example, AWS S3 or GCS) is configured on the template, we upload the recording asset to the defined location by default. Else, the asset is uploaded to 100ms storage buckets. These recordings can be downloaded by generating short-live pre-signed URLs before the retention period of 15 days.
Endpointhttps://api.100ms.live/v2/recording-assets
Asset types
room-composite
: This asset type is a single video file (mp4) that composes audio/video for all peers in the room. The composition is higher quality (similar to the perspective of a peer in the room) thanroom-composite-legacy
(learn more).room-composite-legacy
: This asset type is a single video file (mp4) that composes audio/video for all peers in the room.room-vod
: This is also a composition of all peers in the room and is available in HLS (or m3u8) format for on-demand playback. Based on your chosen recording storage option (100ms hosted or your storage bucket), you have the option to export this file in a zipped or un-zipped format. You can learn more about this here.chat
: This type captures chat messages that were exchanged while recording was running.transcript
: This type is composed of generated transcripts of the recording, if transcription was enabled. Themetadata
will contain theoutput_mode
(txt
,srt
,json
).summary
: This type contains the summary generated from the transcript. Themetadata
will contain theoutput_mode
(json
).track
: This asset type is a single webm file that contains the individual audio or video track for a peer.stream
: This asset type is a composition file (mp4) of all the tracks that correspond to a given peer. The type can be regular for composite of the webcam video and audio or screen for composite of screenshare video and audio.
Object
Property | Description |
---|---|
id | Unique identifier for the recording asset |
job_id | Unique identifier for the recording job that generated the asset |
room_id | Unique identifier of the room which was recorded |
session_id | Unique identifier of the session which was recorded |
type | Type of recording asset (room-composite , room-vod , chat ,transcript ,summary ) |
status | Status for this asset, can be completed or failed |
path | Path of the recording asset (pointing to 100ms or your private cloud storage bucket) |
size | Size of the asset (in bytes) |
duration | Duration of the media in asset (in seconds) |
created_at | Timestamp when the asset was created (in ISO-8601 format) |
thumbnails | Array of paths of thumbnails generated out of the recording (only for room-vod ) |
metadata | Additional information (for example resolution, VOD layers, output mode) based on asset type |
Object as JSON
{ "id": "<asset-id>", "job_id": "<job-id>", "room_id": "<room-id>", "session_id": "<session-id>", "type": "<asset-type>", "path": "<recording_path", "status": "<status", "size": 42, "duration": 42, "created_at": "2023-03-02T07:44:27.010516042Z", "thumbnails": ["<thumbnail_path"], "metadata": { "resolution": { "width": 1280, "height": 720 }, "num_layers": "<num_layers>", "layer": "<layer_idx>", "max_width": 1920, "max_height": 1080 } }
Postman collection
You can use our Postman collection to start exploring 100ms APIs. Use the Postman guide to get started.
Have a suggestion? Recommend changes ->