Apache OpenMeetings · Capability
Apache OpenMeetings REST API — RoomService
Apache OpenMeetings REST API — RoomService. 12 operations. Lead operation: Apache OpenMeetings Add_2. Self-contained Naftiko capability covering one Apache Openmeetings business surface.
What You Can Do
POST
Add2
— Apache OpenMeetings Add_2
/v1/room
GET
Close
— Apache OpenMeetings Close
/v1/room/close/{id}
GET
Count
— Apache OpenMeetings Count
/v1/room/count/{roomid}
POST
Hash
— Apache OpenMeetings Hash
/v1/room/hash
GET
Kickall
— Apache OpenMeetings KickAll
/v1/room/kick/{id}
GET
Kick
— Apache OpenMeetings Kick
/v1/room/kick/{id}/{externaltype}/{externalid}
GET
Open
— Apache OpenMeetings Open
/v1/room/open/{id}
GET
Getpublic
— Apache OpenMeetings GetPublic
/v1/room/public/{type}
GET
Users
— Apache OpenMeetings Users
/v1/room/users/{roomid}
GET
Getroombyid
— Apache OpenMeetings GetRoomById
/v1/room/{id}
DELETE
Delete4
— Apache OpenMeetings Delete_4
/v1/room/{id}
GET
Getexternal1
— Apache OpenMeetings GetExternal_1
/v1/room/{type}/{externaltype}/{externalid}
MCP Tools
apache-openmeetings-add-2
Apache OpenMeetings Add_2
apache-openmeetings-close
Apache OpenMeetings Close
read-only
idempotent
apache-openmeetings-count
Apache OpenMeetings Count
read-only
idempotent
apache-openmeetings-hash
Apache OpenMeetings Hash
apache-openmeetings-kickall
Apache OpenMeetings KickAll
read-only
idempotent
apache-openmeetings-kick
Apache OpenMeetings Kick
read-only
idempotent
apache-openmeetings-open
Apache OpenMeetings Open
read-only
idempotent
apache-openmeetings-getpublic
Apache OpenMeetings GetPublic
read-only
idempotent
apache-openmeetings-users
Apache OpenMeetings Users
read-only
idempotent
apache-openmeetings-getroombyid
Apache OpenMeetings GetRoomById
read-only
idempotent
apache-openmeetings-delete-4
Apache OpenMeetings Delete_4
idempotent
apache-openmeetings-getexternal-1
Apache OpenMeetings GetExternal_1
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Apache OpenMeetings REST API — RoomService
description: 'Apache OpenMeetings REST API — RoomService. 12 operations. Lead operation: Apache OpenMeetings Add_2. Self-contained
Naftiko capability covering one Apache Openmeetings business surface.'
tags:
- Apache Openmeetings
- RoomService
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
APACHE_OPENMEETINGS_API_KEY: APACHE_OPENMEETINGS_API_KEY
capability:
consumes:
- type: http
namespace: rest-roomservice
baseUri: https://{host}:5443/openmeetings/services
description: Apache OpenMeetings REST API — RoomService business capability. Self-contained, no shared references.
resources:
- name: room
path: /room
operations:
- name: add2
method: POST
description: Apache OpenMeetings Add_2
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: sid
in: query
type: string
description: The SID of the User. This SID must be marked as Loggedin
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: room-close-id
path: /room/close/{id}
operations:
- name: close
method: GET
description: Apache OpenMeetings Close
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: sid
in: query
type: string
description: The SID of the User. This SID must be marked as Loggedin
required: true
- name: id
in: path
type: integer
description: the room id
required: true
- name: room-count-roomid
path: /room/count/{roomid}
operations:
- name: count
method: GET
description: Apache OpenMeetings Count
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: sid
in: query
type: string
description: The SID of the User. This SID must be marked as Loggedin
required: true
- name: roomid
in: path
type: integer
description: roomId id of the room to get users
required: true
- name: room-hash
path: /room/hash
operations:
- name: hash
method: POST
description: Apache OpenMeetings Hash
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: sid
in: query
type: string
description: The SID of the User. This SID must be marked as Loggedin
required: true
- name: invite
in: query
type: string
description: parameters of the invitation
required: true
- name: sendmail
in: query
type: boolean
description: flag to determine if email should be sent or not
required: true
- name: room-kick-id
path: /room/kick/{id}
operations:
- name: kickall
method: GET
description: Apache OpenMeetings KickAll
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: sid
in: query
type: string
description: The SID of the User. This SID must be marked as Loggedin
required: true
- name: id
in: path
type: integer
description: the room id
required: true
- name: room-kick-id-externalType-externalId
path: /room/kick/{id}/{externalType}/{externalId}
operations:
- name: kick
method: GET
description: Apache OpenMeetings Kick
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: sid
in: query
type: string
description: The SID of the User. This SID must be marked as Loggedin
required: true
- name: id
in: path
type: integer
description: the room id
required: true
- name: externalType
in: path
type: string
description: external type of USER to kick
required: true
- name: externalId
in: path
type: string
description: external id of USER to kick
required: true
- name: room-open-id
path: /room/open/{id}
operations:
- name: open
method: GET
description: Apache OpenMeetings Open
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: sid
in: query
type: string
description: The SID of the User. This SID must be marked as Loggedin
required: true
- name: id
in: path
type: integer
description: the room id
required: true
- name: room-public-type
path: /room/public/{type}
operations:
- name: getpublic
method: GET
description: Apache OpenMeetings GetPublic
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: sid
in: query
type: string
description: The SID of the User. This SID must be marked as Loggedin
required: true
- name: type
in: path
type: string
description: Type of public rooms need to be retrieved
required: true
- name: room-users-roomid
path: /room/users/{roomid}
operations:
- name: users
method: GET
description: Apache OpenMeetings Users
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: sid
in: query
type: string
description: The SID of the User. This SID must be marked as Loggedin
required: true
- name: roomid
in: path
type: integer
description: roomId id of the room to get users
required: true
- name: room-id
path: /room/{id}
operations:
- name: getroombyid
method: GET
description: Apache OpenMeetings GetRoomById
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: sid
in: query
type: string
description: The SID of the User. This SID must be marked as Loggedin
required: true
- name: id
in: path
type: integer
description: the room id
required: true
- name: delete4
method: DELETE
description: Apache OpenMeetings Delete_4
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: sid
in: query
type: string
description: The SID of the User. This SID must be marked as Loggedin
required: true
- name: id
in: path
type: integer
description: The id of the room
required: true
- name: room-type-externaltype-externalid
path: /room/{type}/{externaltype}/{externalid}
operations:
- name: getexternal1
method: GET
description: Apache OpenMeetings GetExternal_1
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: sid
in: query
type: string
description: The SID of the User. This SID must be marked as Loggedin
required: true
- name: type
in: path
type: string
description: type of the room
required: true
- name: externaltype
in: path
type: string
description: you can specify your system-name or type of room here, for example "moodle"
required: true
- name: externalid
in: path
type: string
description: your external room id may set here
required: true
- name: room
in: query
type: string
description: details of the room to be created if not found
required: true
exposes:
- type: rest
namespace: rest-roomservice-rest
port: 8080
description: REST adapter for Apache OpenMeetings REST API — RoomService. One Spectral-compliant resource per consumed
operation, prefixed with /v1.
resources:
- path: /v1/room
name: room
description: REST surface for room.
operations:
- method: POST
name: add2
description: Apache OpenMeetings Add_2
call: rest-roomservice.add2
with:
sid: rest.sid
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/room/close/{id}
name: room-close-id
description: REST surface for room-close-id.
operations:
- method: GET
name: close
description: Apache OpenMeetings Close
call: rest-roomservice.close
with:
sid: rest.sid
id: rest.id
outputParameters:
- type: object
mapping: $.
- path: /v1/room/count/{roomid}
name: room-count-roomid
description: REST surface for room-count-roomid.
operations:
- method: GET
name: count
description: Apache OpenMeetings Count
call: rest-roomservice.count
with:
sid: rest.sid
roomid: rest.roomid
outputParameters:
- type: object
mapping: $.
- path: /v1/room/hash
name: room-hash
description: REST surface for room-hash.
operations:
- method: POST
name: hash
description: Apache OpenMeetings Hash
call: rest-roomservice.hash
with:
sid: rest.sid
invite: rest.invite
sendmail: rest.sendmail
outputParameters:
- type: object
mapping: $.
- path: /v1/room/kick/{id}
name: room-kick-id
description: REST surface for room-kick-id.
operations:
- method: GET
name: kickall
description: Apache OpenMeetings KickAll
call: rest-roomservice.kickall
with:
sid: rest.sid
id: rest.id
outputParameters:
- type: object
mapping: $.
- path: /v1/room/kick/{id}/{externaltype}/{externalid}
name: room-kick-id-externaltype-externalid
description: REST surface for room-kick-id-externalType-externalId.
operations:
- method: GET
name: kick
description: Apache OpenMeetings Kick
call: rest-roomservice.kick
with:
sid: rest.sid
id: rest.id
externalType: rest.externalType
externalId: rest.externalId
outputParameters:
- type: object
mapping: $.
- path: /v1/room/open/{id}
name: room-open-id
description: REST surface for room-open-id.
operations:
- method: GET
name: open
description: Apache OpenMeetings Open
call: rest-roomservice.open
with:
sid: rest.sid
id: rest.id
outputParameters:
- type: object
mapping: $.
- path: /v1/room/public/{type}
name: room-public-type
description: REST surface for room-public-type.
operations:
- method: GET
name: getpublic
description: Apache OpenMeetings GetPublic
call: rest-roomservice.getpublic
with:
sid: rest.sid
type: rest.type
outputParameters:
- type: object
mapping: $.
- path: /v1/room/users/{roomid}
name: room-users-roomid
description: REST surface for room-users-roomid.
operations:
- method: GET
name: users
description: Apache OpenMeetings Users
call: rest-roomservice.users
with:
sid: rest.sid
roomid: rest.roomid
outputParameters:
- type: object
mapping: $.
- path: /v1/room/{id}
name: room-id
description: REST surface for room-id.
operations:
- method: GET
name: getroombyid
description: Apache OpenMeetings GetRoomById
call: rest-roomservice.getroombyid
with:
sid: rest.sid
id: rest.id
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: delete4
description: Apache OpenMeetings Delete_4
call: rest-roomservice.delete4
with:
sid: rest.sid
id: rest.id
outputParameters:
- type: object
mapping: $.
- path: /v1/room/{type}/{externaltype}/{externalid}
name: room-type-externaltype-externalid
description: REST surface for room-type-externaltype-externalid.
operations:
- method: GET
name: getexternal1
description: Apache OpenMeetings GetExternal_1
call: rest-roomservice.getexternal1
with:
sid: rest.sid
type: rest.type
externaltype: rest.externaltype
externalid: rest.externalid
room: rest.room
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: rest-roomservice-mcp
port: 9090
transport: http
description: MCP adapter for Apache OpenMeetings REST API — RoomService. One tool per consumed operation, routed inline
through this capability's consumes block.
tools:
- name: apache-openmeetings-add-2
description: Apache OpenMeetings Add_2
hints:
readOnly: false
destructive: false
idempotent: false
call: rest-roomservice.add2
with:
sid: tools.sid
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: apache-openmeetings-close
description: Apache OpenMeetings Close
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-roomservice.close
with:
sid: tools.sid
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: apache-openmeetings-count
description: Apache OpenMeetings Count
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-roomservice.count
with:
sid: tools.sid
roomid: tools.roomid
outputParameters:
- type: object
mapping: $.
- name: apache-openmeetings-hash
description: Apache OpenMeetings Hash
hints:
readOnly: false
destructive: false
idempotent: false
call: rest-roomservice.hash
with:
sid: tools.sid
invite: tools.invite
sendmail: tools.sendmail
outputParameters:
- type: object
mapping: $.
- name: apache-openmeetings-kickall
description: Apache OpenMeetings KickAll
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-roomservice.kickall
with:
sid: tools.sid
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: apache-openmeetings-kick
description: Apache OpenMeetings Kick
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-roomservice.kick
with:
sid: tools.sid
id: tools.id
externalType: tools.externalType
externalId: tools.externalId
outputParameters:
- type: object
mapping: $.
- name: apache-openmeetings-open
description: Apache OpenMeetings Open
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-roomservice.open
with:
sid: tools.sid
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: apache-openmeetings-getpublic
description: Apache OpenMeetings GetPublic
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-roomservice.getpublic
with:
sid: tools.sid
type: tools.type
outputParameters:
- type: object
mapping: $.
- name: apache-openmeetings-users
description: Apache OpenMeetings Users
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-roomservice.users
with:
sid: tools.sid
roomid: tools.roomid
outputParameters:
- type: object
mapping: $.
- name: apache-openmeetings-getroombyid
description: Apache OpenMeetings GetRoomById
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-roomservice.getroombyid
with:
sid: tools.sid
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: apache-openmeetings-delete-4
description: Apache OpenMeetings Delete_4
hints:
readOnly: false
destructive: true
idempotent: true
call: rest-roomservice.delete4
with:
sid: tools.sid
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: apache-openmeetings-getexternal-1
description: Apache OpenMeetings GetExternal_1
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-roomservice.getexternal1
with:
sid: tools.sid
type: tools.type
externaltype: tools.externaltype
externalid: tools.externalid
room: tools.room
outputParameters:
- type: object
mapping: $.