211 lines
8.8 KiB
YAML

/rooms:
post:
operationId: createRoom
summary: Create a room
description: >
Creates a new OpenVidu Meet room.
The room will be available for participants to join using the generated URLs.
tags:
- OpenVidu Meet - Rooms
security:
- apiKeyInHeader: []
- accessTokenCookie: []
requestBody:
$ref: '../components/requestBodies/create-room-request.yaml'
responses:
'201':
$ref: '../components/responses/success-create-room.yaml'
'401':
$ref: '../components/responses/unauthorized-error.yaml'
'403':
$ref: '../components/responses/forbidden-error.yaml'
'422':
$ref: '../components/responses/validation-error.yaml'
'500':
$ref: '../components/responses/internal-server-error.yaml'
get:
operationId: getRooms
summary: Get all rooms
description: >
Retrieves a paginated list of all rooms available in the system.
You can apply filters to narrow down the results based on specific criteria.
tags:
- OpenVidu Meet - Rooms
security:
- apiKeyInHeader: []
- accessTokenCookie: []
parameters:
- $ref: '../components/parameters/room-name.yaml'
- $ref: '../components/parameters/room-fields.yaml'
- $ref: '../components/parameters/max-items.yaml'
- $ref: '../components/parameters/next-page-token.yaml'
responses:
'200':
$ref: '../components/responses/success-get-rooms.yaml'
'401':
$ref: '../components/responses/unauthorized-error.yaml'
'403':
$ref: '../components/responses/forbidden-error.yaml'
'422':
$ref: '../components/responses/validation-error.yaml'
'500':
$ref: '../components/responses/internal-server-error.yaml'
delete:
operationId: bulkDeleteRooms
summary: Bulk delete rooms
description: |
Delete multiple OpenVidu Meet rooms at once with the specified room IDs.
If any of the rooms have active meetings or recordings,
deletion behavior is determined by the provided `withMeeting` and `withRecordings` deletion policies.
Depending on these policies, the rooms may be deleted/closed immediately, scheduled to be deleted/closed once the meetings end,
or the operation may fail if deletion is not permitted.
tags:
- OpenVidu Meet - Rooms
security:
- apiKeyInHeader: []
- accessTokenCookie: []
parameters:
- $ref: '../components/parameters/room-ids.yaml'
- $ref: '../components/parameters/meeting-deletion-policy.yaml'
- $ref: '../components/parameters/recordings-deletion-policy.yaml'
responses:
'200':
$ref: '../components/responses/success-bulk-delete-rooms.yaml'
'400':
$ref: '../components/responses/error-bulk-delete-rooms.yaml'
'401':
$ref: '../components/responses/unauthorized-error.yaml'
'403':
$ref: '../components/responses/forbidden-error.yaml'
'422':
$ref: '../components/responses/validation-error.yaml'
'500':
$ref: '../components/responses/internal-server-error.yaml'
/rooms/{roomId}:
get:
operationId: getRoom
summary: Get a room
description: >
Retrieves the details of an OpenVidu Meet room with the specified room ID.
tags:
- OpenVidu Meet - Rooms
security:
- apiKeyInHeader: []
- accessTokenCookie: []
- participantTokenCookie: []
parameters:
- $ref: '../components/parameters/room-id-path.yaml'
- $ref: '../components/parameters/room-fields.yaml'
- $ref: '../components/parameters/internal/x-participant-role.yaml'
responses:
'200':
$ref: '../components/responses/success-get-room.yaml'
'400':
$ref: '../components/responses/internal/error-invalid-participant-role.yaml'
'401':
$ref: '../components/responses/unauthorized-error.yaml'
'403':
$ref: '../components/responses/forbidden-error.yaml'
'404':
$ref: '../components/responses/error-room-not-found.yaml'
'422':
$ref: '../components/responses/validation-error.yaml'
'500':
$ref: '../components/responses/internal-server-error.yaml'
delete:
operationId: deleteRoom
summary: Delete a room
description: |
Deletes the specified OpenVidu Meet room by its room ID.
If the room has an active meeting or existing recordings,
deletion behavior is determined by the provided `withMeeting` and `withRecordings` deletion policies.
Depending on these policies, the room may be deleted/closed immediately, scheduled to be deleted/closed once the meeting ends,
or the operation may fail if deletion is not permitted.
tags:
- OpenVidu Meet - Rooms
security:
- apiKeyInHeader: []
- accessTokenCookie: []
parameters:
- $ref: '../components/parameters/room-id-path.yaml'
- $ref: '../components/parameters/meeting-deletion-policy.yaml'
- $ref: '../components/parameters/recordings-deletion-policy.yaml'
responses:
'200':
$ref: '../components/responses/success-room-process-deletion.yaml'
'202':
$ref: '../components/responses/success-room-schedule-deletion.yaml'
'401':
$ref: '../components/responses/unauthorized-error.yaml'
'403':
$ref: '../components/responses/forbidden-error.yaml'
'404':
$ref: '../components/responses/error-room-not-found.yaml'
'409':
$ref: '../components/responses/error-room-process-deletion.yaml'
'422':
$ref: '../components/responses/validation-error.yaml'
'500':
$ref: '../components/responses/internal-server-error.yaml'
/rooms/{roomId}/preferences:
get:
operationId: getRoomPreferences
summary: Get room preferences
description: >
Retrieves the preferences of an OpenVidu Meet room with the specified room ID.
tags:
- OpenVidu Meet - Rooms
security:
- apiKeyInHeader: []
- accessTokenCookie: []
- participantTokenCookie: []
parameters:
- $ref: '../components/parameters/room-id-path.yaml'
- $ref: '../components/parameters/internal/x-participant-role.yaml'
responses:
'200':
$ref: '../components/responses/success-get-room-preferences.yaml'
'400':
$ref: '../components/responses/internal/error-invalid-participant-role.yaml'
'401':
$ref: '../components/responses/unauthorized-error.yaml'
'403':
$ref: '../components/responses/forbidden-error.yaml'
'404':
$ref: '../components/responses/error-room-not-found.yaml'
'422':
$ref: '../components/responses/validation-error.yaml'
'500':
$ref: '../components/responses/internal-server-error.yaml'
put:
operationId: updateRoomPreferences
summary: Update room preferences
description: >
Updates the preferences of an OpenVidu Meet room with the specified room ID.
tags:
- OpenVidu Meet - Rooms
security:
- apiKeyInHeader: []
- accessTokenCookie: []
parameters:
- $ref: '../components/parameters/room-id-path.yaml'
requestBody:
$ref: '../components/requestBodies/update-room-preferences-request.yaml'
responses:
'200':
$ref: '../components/responses/success-update-room-preferences.yaml'
'401':
$ref: '../components/responses/unauthorized-error.yaml'
'403':
$ref: '../components/responses/forbidden-error.yaml'
'404':
$ref: '../components/responses/error-room-not-found.yaml'
'422':
$ref: '../components/responses/validation-error.yaml'
'500':
$ref: '../components/responses/internal-server-error.yaml'