# Data Overview

## What data is available?

The 100ms source gives you access to your workspace's operational and usage data: rooms, the sessions that happened inside them, participants who joined, recordings that were stored, and the analytics events generated during those sessions. You can also pull the room template configurations that define how your video experiences are set up.

## When to use it

Use the 100ms source when you need to analyze how your video platform is being used — session volume trends, participant counts, recording activity, or engagement events. It's also useful for auditing room configurations and template setups across your 100ms workspace.

## Available entities

#### Sessions

Individual video call sessions. A session starts when the first peer joins a room and ends when the last peer leaves.

| Field        | Description                                 |
| ------------ | ------------------------------------------- |
| `id`         | Unique session identifier                   |
| `room_id`    | ID of the room where the session took place |
| `created_at` | Timestamp when the session was created      |
| `peers`      | List of participant objects in the session  |
| `duration`   | Total session duration                      |
| `started_at` | Timestamp when the first peer joined        |
| `stopped_at` | Timestamp when the last peer left           |

#### Rooms

Virtual meeting rooms in your 100ms workspace. Each room can host multiple sessions over its lifetime.

| Field         | Description                          |
| ------------- | ------------------------------------ |
| `id`          | Unique room identifier               |
| `name`        | Room name                            |
| `description` | Optional room description            |
| `customer_id` | ID of the workspace/account          |
| `template_id` | ID of the room template applied      |
| `enabled`     | Whether the room is currently active |
| `created_at`  | Room creation timestamp              |
| `updated_at`  | Last modification timestamp          |

#### Active room peers

Participants currently connected to rooms in real time. Useful for monitoring live usage.

| Field        | Description                                      |
| ------------ | ------------------------------------------------ |
| `id`         | Peer identifier                                  |
| `room_id`    | Room the peer is connected to                    |
| `session_id` | Current session identifier                       |
| `name`       | Peer display name                                |
| `role`       | Peer's role in the room                          |
| `joined_at`  | Timestamp when the peer joined                   |
| `user_id`    | Your application's user identifier for this peer |

#### Templates

Room configuration templates that define the settings and layout applied when creating rooms.

| Field         | Description                 |
| ------------- | --------------------------- |
| `id`          | Template identifier         |
| `name`        | Template name               |
| `customer_id` | Workspace/account ID        |
| `created_at`  | Template creation timestamp |
| `updated_at`  | Last modification timestamp |

#### Template settings

The specific configuration parameters stored inside each room template, such as role definitions and permissions.

| Field         | Description                                        |
| ------------- | -------------------------------------------------- |
| `template_id` | Parent template ID                                 |
| `roles`       | Role definitions and permission sets               |
| `settings`    | Room-level settings (recording, screenshare, etc.) |

#### Templates destinations

Recording and streaming destination settings attached to a template — for example, where recordings are stored or where live streams are sent.

| Field              | Description                                        |
| ------------------ | -------------------------------------------------- |
| `template_id`      | Parent template ID                                 |
| `destination_type` | Type of destination (recording, live stream, etc.) |
| `config`           | Destination-specific configuration                 |

#### Analytics events

User interaction and engagement events captured during video sessions — joins, leaves, media toggles, and other in-session actions.

| Field        | Description                                  |
| ------------ | -------------------------------------------- |
| `id`         | Event identifier                             |
| `session_id` | Session the event belongs to                 |
| `peer_id`    | Peer who triggered the event                 |
| `room_id`    | Room where the event occurred                |
| `type`       | Event type (e.g., `peer.join`, `peer.leave`) |
| `created_at` | Event timestamp                              |
| `data`       | Additional event-specific payload            |

#### Recordings

Stored video recordings of completed 100ms sessions.

| Field        | Description                                        |
| ------------ | -------------------------------------------------- |
| `id`         | Recording identifier                               |
| `room_id`    | Room where the recording was made                  |
| `session_id` | Session that was recorded                          |
| `status`     | Recording status (e.g., `completed`, `processing`) |
| `created_at` | Recording creation timestamp                       |
| `duration`   | Recording length                                   |
| `size`       | File size                                          |
| `url`        | URL to access the recording                        |

## Common use cases by role

#### Engineering / DevOps

Use **Sessions** and **Analytics events** to monitor platform health, detect abnormal drop-off rates, and correlate session failures with infrastructure events. Use **Active room peers** to track concurrency in real time.

#### Product managers

Use **Sessions** and **Recordings** to measure feature adoption — how often video sessions occur, how long they last, and which rooms are most active. Use **Templates** to understand how different room configurations are being deployed.

#### Customer success / Support

Use **Sessions** and **Rooms** to investigate specific customer issues — look up a session by ID, check when it started and stopped, and review which peers participated. Use **Recordings** to verify whether a session was successfully recorded.

#### Business analytics

Use **Analytics events** over time to build engagement funnels. Combine with **Sessions** data to understand drop-off, peak usage hours, and geographic patterns.

## Platform-specific notes

* **Early Access:** 100ms is an Early Access source in Coupler.io. Availability depends on a feature flag (`100ms_airbyte_source_feature`) on your account.
* **Start date required:** All entities require a start date. Data before the start date will not be returned.
* **One entity per flow:** Each data flow exports a single entity. Create separate flows for Sessions, Recordings, and Analytics events if you need all three.
* **Active room peers:** This entity reflects current live state and is not historical. Running the flow at different times will return different results.
* **Session vs. room:** A room persists across many sessions. Filter by `room_id` in sessions to analyze a specific room's usage history.
