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.


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) than room-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. The metadata will contain the output_mode (txt, srt, json).
  • summary: This type contains the summary generated from the transcript. The metadata will contain the output_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.


idUnique identifier for the recording asset
job_idUnique identifier for the recording job that generated the asset
room_idUnique identifier of the room which was recorded
session_idUnique identifier of the session which was recorded
typeType of recording asset (room-composite, room-vod, chat,transcript,summary)
statusStatus for this asset, can be completed or failed
pathPath of the recording asset (pointing to 100ms or your private cloud storage bucket)
sizeSize of the asset (in bytes)
durationDuration of the media in asset (in seconds)
created_atTimestamp when the asset was created (in ISO-8601 format)
thumbnailsArray of paths of thumbnails generated out of the recording (only for room-vod)
metadataAdditional 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.

Run in Postman

Have a suggestion? Recommend changes ->

Run in postman

Was this helpful?