Video Log Analyzer API
The Video Log Analyzer REST API provides access to data generated by Programmable Video rooms and participants. Video Logs are available for two days for WebRTC Go rooms, and seven days for all other room types. Summarization and propagation of data may take up to thirty minutes following the end of a room, but most logs are available within ten minutes.
Base URL
Video Log Analyzer data is available under the following base URL. The REST API is served over HTTPS; unencrypted HTTP is not supported.
https://insights.twilio.com/v1/Video/Rooms
Authentication
HTTP requests to the REST API are protected with HTTP Basic authentication. You will use your Twilio account SID as the username and your auth token as the password for HTTP Basic authentication. You can find your account SID and auth token on the console home page. To learn more about how Twilio handles authentication, please refer to our security documentation.
Get Rooms List
The Rooms list provides a queryable list of Programmable Video Rooms. By default only Rooms completed in the last 24 hours are listed. Use the CreatedBefore and CreatedAfter parameters to query a larger date range.
GET https://insights.twilio.com/v1/Video/Rooms
Parameters in REST API format | |
---|---|
room_type
Optional
|
Type of room. Can be |
codec
Optional
|
Codecs used by participants in the room. Can be |
room_name
Optional
|
Room friendly name. |
created_after
Optional
|
Only read rooms that started on or after this ISO 8601 timestamp. |
created_before
Optional
|
Only read rooms that started before this ISO 8601 timestamp. |
Get Video Log Analyzer Data for a Room
The Room resource returns the Video Log Analyzer data for the provided room SID.
GET https://insights.twilio.com/v1/Video/Rooms/{Room_SID}
Parameters in REST API format | |
---|---|
room_sid
Path
|
The SID of the Room resource. |
Room Summary Resource Properties
A Room Summary log is represented by the following properties:
Resource Properties in REST API format | |
---|---|
account_sid
|
Account SID associated with this room. |
room_sid
|
Unique identifier for the room. |
room_name
|
Room friendly name. |
create_time
|
Creation time of the room. |
end_time
|
End time for the room. |
room_type
|
Type of room. Can be |
room_status
|
Status of the room. Can be |
status_callback
|
Webhook provided for status callbacks. |
status_callback_method
|
HTTP method provided for status callback URL. |
created_method
|
How the room was created. Can be |
end_reason
|
Reason the room ended. Can be |
max_participants
|
Max number of total participants allowed by the application settings. |
unique_participants
|
Number of participants. May include duplicate identities for participants who left and rejoined. |
unique_participant_identities
|
Unique number of participant identities. |
concurrent_participants
|
Actual number of concurrent participants. |
max_concurrent_participants
|
Maximum number of participants allowed in the room at the same time allowed by the application settings. |
codecs
|
Codecs used by participants in the room. Can be |
media_region
|
Region of Twilio media servers for the room. See the list of possible media servers here. |
duration_sec
|
Total room duration from create time to end time. |
total_participant_duration_sec
|
Combined amount of participant time in the room. |
total_recording_duration_sec
|
Combined amount of recorded seconds for participants in the room. |
processing_state
|
Video Log Analyzer resource state. Will be either |
recording_enabled
|
Boolean indicating if recording is enabled for the room. |
edge_location
|
Edge location of Twilio media servers for the room. See the list of public edge locations for the possible values. |
url
|
URL for the room resource. |
links
|
Room subresources. |
Get Participants List
The Participants list returns the participant details for a provided room SID.
GET https://insights.twilio.com/v1/Video/Rooms/{Room_SID}/Participants
Parameters in REST API format | |
---|---|
room_sid
Path
|
The SID of the Room resource. |
Get Video Log Analyzer data for a Room Participant
The Participant resource returns the Video Log Analyzer details for a provided room participant SID.
GET https://insights.twilio.com/v1/Video/Rooms/{Room_SID}/Participants/{Partcipant_SID}
Parameters in REST API format | |
---|---|
room_sid
Path
|
The SID of the Room resource. |
participant_sid
Path
|
The SID of the Participant resource. |
Participant Summary Resource Properties
A participant summary is represented by the following properties:
Resource Properties in REST API format | |
---|---|
participant_sid
|
Unique identifier for the participant. |
participant_identity
|
The application-defined string that uniquely identifies the participant within a Room. |
join_time
|
When the participant joined the room. |
leave_time
|
When the participant left the room. |
duration_sec
|
Amount of time in seconds the participant was in the room. |
account_sid
|
Account SID associated with the room. |
room_sid
|
Unique identifier for the room. |
status
|
Status of the room. Can be |
codecs
|
Codecs detected from the participant. Can be |
end_reason
|
Reason the participant left the room. See the list of possible values here. |
error_code
|
Errors encountered by the participant. |
error_code_url
|
Twilio error code dictionary link. |
media_region
|
Twilio media region the participant connected to. See the list of possible media servers here. |
properties
|
Object containing information about the participant's data from the room. See below for more information. |
edge_location
|
Name of the edge location the participant connected to. See the list of public edge locations for the possible values. |
publisher_info
|
Object containing information about the SDK name and version. See below for more information. |
url
|
URL of the participant resource. |
properties
The properties
object contains the following keys:
Name | Description |
recordOnConnect | Boolean. Indicates if the participant was recorded as soon as they joined the room. |
numAudioTracks | Number of audio tracks from the participant. |
numVideoTracks | Number of video tracks from the participant. |
numDataTracks | Number of data tracks from the participant. |
isAdhoc | Boolean. Indicates if the participant joined the room ad-hoc. |
publisher_info
The publisher_info
object contains the following keys:
Name | Description |
name | SDK type; e.g., twilio-video-js |
sdk_version | SDK version |
end_reason
Below are the possible options for a participant end_reason
:
disconnected_via_api
signaling_connection_error
signaling_connection_disconnected
signaling_connection_timed_out
client_received_an_invalid_signaling_message
client_sent_an_invalid_signaling_message
room_name_is_invalid
room_name_is_too_long
room_name_contains_invalid_characters
unable_to_create_room
unable_to_connect_to_room
room_contains_too_many_participants
room_not_found
max_participants_is_out_of_range
room_type_is_not_valid
timeout_is_out_of_range
status_callback_method_is_invalid
status_callback_is_invalid
status_is_invalid
room_creation_failed
room_completed_error
the_room_account_limit_was_exceeded
invalid_recording_rule
approaching_room_or_participant_concurrency_limits
recording_operation_requested_is_not_supported_for_the_Room_type
participant_identity_is_invalid
participant_identity_is_too_long
participant_identity_contains_invalid_characters
participant_has_too_many_tracks
participant_not_found
participant_disconnected_because_of_duplicate_identity
participant_account_limit_was_exceeded
invalid_subscribe_rule
track_is_invalid
track_name_is_invalid
track_name_is_too_long
track_name_contains_invalid_characters
track_name_is_duplicated
client_is_unable_to_create_or_apply_a_local_media_description
server_is_unable_to_create_or_apply_a_local_media_description
client_is_unable_to_apply_a_remote_media_description
server_is_unable_to_apply_a_remote_media_description
no_supported_codec
media_connection_failed_or_media_activity_ceased
unable_to_acquire_configuration
unable_to_acquire_TURN_credentials
unknown
Need some help?
We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd by visiting Twilio's Stack Overflow Collective or browsing the Twilio tag on Stack Overflow.