Twilio · Capability
Twilio - Insights — Video
Twilio - Insights — Video. 4 operations. Lead operation: Video. Self-contained Naftiko capability covering one Twilio business surface.
What You Can Do
GET
Listvideoroomsummary
— Get a list of Programmable Video Rooms.
/v1/v1/video/rooms
GET
Fetchvideoroomsummary
— Get Video Log Analyzer data for a Room.
/v1/v1/video/rooms/{roomsid}
GET
Listvideoparticipantsummary
— Get a list of room participants.
/v1/v1/video/rooms/{roomsid}/participants
GET
Fetchvideoparticipantsummary
— Get Video Log Analyzer data for a Room Participant.
/v1/v1/video/rooms/{roomsid}/participants/{participantsid}
MCP Tools
get-list-programmable-video-rooms
Get a list of Programmable Video Rooms.
read-only
idempotent
get-video-log-analyzer-data
Get Video Log Analyzer data for a Room.
read-only
idempotent
get-list-room-participants
Get a list of room participants.
read-only
idempotent
get-video-log-analyzer-data-2
Get Video Log Analyzer data for a Room Participant.
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Twilio - Insights — Video
description: 'Twilio - Insights — Video. 4 operations. Lead operation: Video. Self-contained Naftiko capability covering
one Twilio business surface.'
tags:
- Twilio
- Video
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
TWILIO_API_KEY: TWILIO_API_KEY
capability:
consumes:
- type: http
namespace: insights-video
baseUri: https://insights.twilio.com
description: Twilio - Insights — Video business capability. Self-contained, no shared references.
resources:
- name: v1-Video-Rooms
path: /v1/Video/Rooms
operations:
- name: listvideoroomsummary
method: GET
description: Get a list of Programmable Video Rooms.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: RoomType
in: query
type: array
description: Type of room. Can be `go`, `peer_to_peer`, `group`, or `group_small`.
- name: Codec
in: query
type: array
description: Codecs used by participants in the room. Can be `VP8`, `H264`, or `VP9`.
- name: RoomName
in: query
type: string
description: Room friendly name.
- name: CreatedAfter
in: query
type: string
description: Only read rooms that started on or after this ISO 8601 timestamp.
- name: CreatedBefore
in: query
type: string
description: Only read rooms that started before this ISO 8601 timestamp.
- name: PageSize
in: query
type: integer
description: How many resources to return in each list page. The default is 50, and the maximum is 1000.
- name: Page
in: query
type: integer
description: The page index. This value is simply for client state.
- name: PageToken
in: query
type: string
description: The page token. This is provided by the API.
- name: v1-Video-Rooms-RoomSid
path: /v1/Video/Rooms/{RoomSid}
operations:
- name: fetchvideoroomsummary
method: GET
description: Get Video Log Analyzer data for a Room.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: RoomSid
in: path
type: string
description: The SID of the Room resource.
required: true
- name: v1-Video-Rooms-RoomSid-Participants
path: /v1/Video/Rooms/{RoomSid}/Participants
operations:
- name: listvideoparticipantsummary
method: GET
description: Get a list of room participants.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: RoomSid
in: path
type: string
description: The SID of the Room resource.
required: true
- name: PageSize
in: query
type: integer
description: How many resources to return in each list page. The default is 50, and the maximum is 1000.
- name: Page
in: query
type: integer
description: The page index. This value is simply for client state.
- name: PageToken
in: query
type: string
description: The page token. This is provided by the API.
- name: v1-Video-Rooms-RoomSid-Participants-ParticipantSid
path: /v1/Video/Rooms/{RoomSid}/Participants/{ParticipantSid}
operations:
- name: fetchvideoparticipantsummary
method: GET
description: Get Video Log Analyzer data for a Room Participant.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: RoomSid
in: path
type: string
description: The SID of the Room resource.
required: true
- name: ParticipantSid
in: path
type: string
description: The SID of the Participant resource.
required: true
authentication:
type: basic
username: '{{env.TWILIO_USER}}'
password: '{{env.TWILIO_PASS}}'
exposes:
- type: rest
namespace: insights-video-rest
port: 8080
description: REST adapter for Twilio - Insights — Video. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/v1/video/rooms
name: v1-video-rooms
description: REST surface for v1-Video-Rooms.
operations:
- method: GET
name: listvideoroomsummary
description: Get a list of Programmable Video Rooms.
call: insights-video.listvideoroomsummary
with:
RoomType: rest.RoomType
Codec: rest.Codec
RoomName: rest.RoomName
CreatedAfter: rest.CreatedAfter
CreatedBefore: rest.CreatedBefore
PageSize: rest.PageSize
Page: rest.Page
PageToken: rest.PageToken
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/video/rooms/{roomsid}
name: v1-video-rooms-roomsid
description: REST surface for v1-Video-Rooms-RoomSid.
operations:
- method: GET
name: fetchvideoroomsummary
description: Get Video Log Analyzer data for a Room.
call: insights-video.fetchvideoroomsummary
with:
RoomSid: rest.RoomSid
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/video/rooms/{roomsid}/participants
name: v1-video-rooms-roomsid-participants
description: REST surface for v1-Video-Rooms-RoomSid-Participants.
operations:
- method: GET
name: listvideoparticipantsummary
description: Get a list of room participants.
call: insights-video.listvideoparticipantsummary
with:
RoomSid: rest.RoomSid
PageSize: rest.PageSize
Page: rest.Page
PageToken: rest.PageToken
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/video/rooms/{roomsid}/participants/{participantsid}
name: v1-video-rooms-roomsid-participants-participantsid
description: REST surface for v1-Video-Rooms-RoomSid-Participants-ParticipantSid.
operations:
- method: GET
name: fetchvideoparticipantsummary
description: Get Video Log Analyzer data for a Room Participant.
call: insights-video.fetchvideoparticipantsummary
with:
RoomSid: rest.RoomSid
ParticipantSid: rest.ParticipantSid
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: insights-video-mcp
port: 9090
transport: http
description: MCP adapter for Twilio - Insights — Video. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: get-list-programmable-video-rooms
description: Get a list of Programmable Video Rooms.
hints:
readOnly: true
destructive: false
idempotent: true
call: insights-video.listvideoroomsummary
with:
RoomType: tools.RoomType
Codec: tools.Codec
RoomName: tools.RoomName
CreatedAfter: tools.CreatedAfter
CreatedBefore: tools.CreatedBefore
PageSize: tools.PageSize
Page: tools.Page
PageToken: tools.PageToken
outputParameters:
- type: object
mapping: $.
- name: get-video-log-analyzer-data
description: Get Video Log Analyzer data for a Room.
hints:
readOnly: true
destructive: false
idempotent: true
call: insights-video.fetchvideoroomsummary
with:
RoomSid: tools.RoomSid
outputParameters:
- type: object
mapping: $.
- name: get-list-room-participants
description: Get a list of room participants.
hints:
readOnly: true
destructive: false
idempotent: true
call: insights-video.listvideoparticipantsummary
with:
RoomSid: tools.RoomSid
PageSize: tools.PageSize
Page: tools.Page
PageToken: tools.PageToken
outputParameters:
- type: object
mapping: $.
- name: get-video-log-analyzer-data-2
description: Get Video Log Analyzer data for a Room Participant.
hints:
readOnly: true
destructive: false
idempotent: true
call: insights-video.fetchvideoparticipantsummary
with:
RoomSid: tools.RoomSid
ParticipantSid: tools.ParticipantSid
outputParameters:
- type: object
mapping: $.