Telnyx · Capability

Telnyx API — Room Sessions

Telnyx API — Room Sessions. 7 operations. Lead operation: View a list of room sessions.. Self-contained Naftiko capability covering one Telnyx business surface.

Run with Naftiko TelnyxRoom Sessions

What You Can Do

GET
Listroomsessions — View a list of room sessions.
/v1/room-sessions
GET
Viewroomsession — View a room session.
/v1/room-sessions/{room-session-id}
POST
Endsession — End a room session.
/v1/room-sessions/{room-session-id}/actions/end
POST
Kickparticipantinsession — Kick participants from a room session.
/v1/room-sessions/{room-session-id}/actions/kick
POST
Muteparticipantinsession — Mute participants in room session.
/v1/room-sessions/{room-session-id}/actions/mute
POST
Unmuteparticipantinsession — Unmute participants in room session.
/v1/room-sessions/{room-session-id}/actions/unmute
GET
Retrievelistroomparticipants — View a list of room participants.
/v1/room-sessions/{room-session-id}/participants

MCP Tools

view-list-room-sessions

View a list of room sessions.

read-only idempotent
view-room-session

View a room session.

read-only idempotent
end-room-session

End a room session.

kick-participants-room-session

Kick participants from a room session.

mute-participants-room-session

Mute participants in room session.

unmute-participants-room-session

Unmute participants in room session.

view-list-room-participants

View a list of room participants.

read-only idempotent

Capability Spec

telnyx-room-sessions.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Telnyx API — Room Sessions
  description: 'Telnyx API — Room Sessions. 7 operations. Lead operation: View a list of room sessions.. Self-contained Naftiko
    capability covering one Telnyx business surface.'
  tags:
  - Telnyx
  - Room Sessions
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    TELNYX_API_KEY: TELNYX_API_KEY
capability:
  consumes:
  - type: http
    namespace: telnyx-room-sessions
    baseUri: https://api.telnyx.com/v2
    description: Telnyx API — Room Sessions business capability. Self-contained, no shared references.
    resources:
    - name: room_sessions
      path: /room_sessions
      operations:
      - name: listroomsessions
        method: GET
        description: View a list of room sessions.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: include_participants
          in: query
          type: boolean
          description: To decide if room participants should be included in the response.
        - name: filter
          in: query
          type: object
          description: 'Consolidated filter parameter (deepObject style). Originally: filter[date_created_at][eq], filter[date_created_at][gte],
            filter[date_created_at][lte], filter[da'
    - name: room_sessions-room_session_id
      path: /room_sessions/{room_session_id}
      operations:
      - name: viewroomsession
        method: GET
        description: View a room session.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: room_session_id
          in: path
          type: string
          description: The unique identifier of a room session.
          required: true
        - name: include_participants
          in: query
          type: boolean
          description: To decide if room participants should be included in the response.
    - name: room_sessions-room_session_id-actions-end
      path: /room_sessions/{room_session_id}/actions/end
      operations:
      - name: endsession
        method: POST
        description: End a room session.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: room_session_id
          in: path
          type: string
          description: The unique identifier of a room session.
          required: true
    - name: room_sessions-room_session_id-actions-kick
      path: /room_sessions/{room_session_id}/actions/kick
      operations:
      - name: kickparticipantinsession
        method: POST
        description: Kick participants from a room session.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: room_session_id
          in: path
          type: string
          description: The unique identifier of a room session.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: room_sessions-room_session_id-actions-mute
      path: /room_sessions/{room_session_id}/actions/mute
      operations:
      - name: muteparticipantinsession
        method: POST
        description: Mute participants in room session.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: room_session_id
          in: path
          type: string
          description: The unique identifier of a room session.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: room_sessions-room_session_id-actions-unmute
      path: /room_sessions/{room_session_id}/actions/unmute
      operations:
      - name: unmuteparticipantinsession
        method: POST
        description: Unmute participants in room session.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: room_session_id
          in: path
          type: string
          description: The unique identifier of a room session.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: room_sessions-room_session_id-participants
      path: /room_sessions/{room_session_id}/participants
      operations:
      - name: retrievelistroomparticipants
        method: GET
        description: View a list of room participants.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: room_session_id
          in: path
          type: string
          description: The unique identifier of a room session.
          required: true
        - name: filter
          in: query
          type: object
          description: 'Consolidated filter parameter (deepObject style). Originally: filter[date_joined_at][eq], filter[date_joined_at][gte],
            filter[date_joined_at][lte], filter[date_'
    authentication:
      type: bearer
      token: '{{env.TELNYX_API_KEY}}'
  exposes:
  - type: rest
    namespace: telnyx-room-sessions-rest
    port: 8080
    description: REST adapter for Telnyx API — Room Sessions. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/room-sessions
      name: room-sessions
      description: REST surface for room_sessions.
      operations:
      - method: GET
        name: listroomsessions
        description: View a list of room sessions.
        call: telnyx-room-sessions.listroomsessions
        with:
          include_participants: rest.include_participants
          filter: rest.filter
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/room-sessions/{room-session-id}
      name: room-sessions-room-session-id
      description: REST surface for room_sessions-room_session_id.
      operations:
      - method: GET
        name: viewroomsession
        description: View a room session.
        call: telnyx-room-sessions.viewroomsession
        with:
          room_session_id: rest.room_session_id
          include_participants: rest.include_participants
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/room-sessions/{room-session-id}/actions/end
      name: room-sessions-room-session-id-actions-end
      description: REST surface for room_sessions-room_session_id-actions-end.
      operations:
      - method: POST
        name: endsession
        description: End a room session.
        call: telnyx-room-sessions.endsession
        with:
          room_session_id: rest.room_session_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/room-sessions/{room-session-id}/actions/kick
      name: room-sessions-room-session-id-actions-kick
      description: REST surface for room_sessions-room_session_id-actions-kick.
      operations:
      - method: POST
        name: kickparticipantinsession
        description: Kick participants from a room session.
        call: telnyx-room-sessions.kickparticipantinsession
        with:
          room_session_id: rest.room_session_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/room-sessions/{room-session-id}/actions/mute
      name: room-sessions-room-session-id-actions-mute
      description: REST surface for room_sessions-room_session_id-actions-mute.
      operations:
      - method: POST
        name: muteparticipantinsession
        description: Mute participants in room session.
        call: telnyx-room-sessions.muteparticipantinsession
        with:
          room_session_id: rest.room_session_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/room-sessions/{room-session-id}/actions/unmute
      name: room-sessions-room-session-id-actions-unmute
      description: REST surface for room_sessions-room_session_id-actions-unmute.
      operations:
      - method: POST
        name: unmuteparticipantinsession
        description: Unmute participants in room session.
        call: telnyx-room-sessions.unmuteparticipantinsession
        with:
          room_session_id: rest.room_session_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/room-sessions/{room-session-id}/participants
      name: room-sessions-room-session-id-participants
      description: REST surface for room_sessions-room_session_id-participants.
      operations:
      - method: GET
        name: retrievelistroomparticipants
        description: View a list of room participants.
        call: telnyx-room-sessions.retrievelistroomparticipants
        with:
          room_session_id: rest.room_session_id
          filter: rest.filter
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: telnyx-room-sessions-mcp
    port: 9090
    transport: http
    description: MCP adapter for Telnyx API — Room Sessions. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: view-list-room-sessions
      description: View a list of room sessions.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: telnyx-room-sessions.listroomsessions
      with:
        include_participants: tools.include_participants
        filter: tools.filter
      outputParameters:
      - type: object
        mapping: $.
    - name: view-room-session
      description: View a room session.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: telnyx-room-sessions.viewroomsession
      with:
        room_session_id: tools.room_session_id
        include_participants: tools.include_participants
      outputParameters:
      - type: object
        mapping: $.
    - name: end-room-session
      description: End a room session.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: telnyx-room-sessions.endsession
      with:
        room_session_id: tools.room_session_id
      outputParameters:
      - type: object
        mapping: $.
    - name: kick-participants-room-session
      description: Kick participants from a room session.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: telnyx-room-sessions.kickparticipantinsession
      with:
        room_session_id: tools.room_session_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: mute-participants-room-session
      description: Mute participants in room session.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: telnyx-room-sessions.muteparticipantinsession
      with:
        room_session_id: tools.room_session_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: unmute-participants-room-session
      description: Unmute participants in room session.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: telnyx-room-sessions.unmuteparticipantinsession
      with:
        room_session_id: tools.room_session_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: view-list-room-participants
      description: View a list of room participants.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: telnyx-room-sessions.retrievelistroomparticipants
      with:
        room_session_id: tools.room_session_id
        filter: tools.filter
      outputParameters:
      - type: object
        mapping: $.