/rooms/{roomId}:
    put:
        operationId: updateRoom
        summary: Update a room
        description: >
            Updates the preferences of an OpenVidu Meet room with the specified room ID.
        tags:
            - Internal API - Rooms
        security:
            - accessTokenCookie: []
        parameters:
            - $ref: '../../components/parameters/room-id-path.yaml'
        requestBody:
            $ref: '../../components/requestBodies/internal/update-room-request.yaml'
        responses:
            '200':
                $ref: '../../components/responses/internal/success-update-room.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'
/rooms/{roomId}/roles:
    get:
        operationId: getRoomRolesAndPermissions
        summary: Get room roles and permissions
        description: >
            Retrieves the roles and associated permissions that a participant can have in a specified OpenVidu Meet room.
        tags:
            - Internal API - Rooms
        parameters:
            - $ref: '../../components/parameters/room-id-path.yaml'
        responses:
            '200':
                $ref: '../../components/responses/internal/success-get-room-roles.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'
/rooms/{roomId}/roles/{secret}:
    get:
        operationId: getRoomRoleAndPermissions
        summary: Get room role and permissions
        description: >
            Retrieves the role and associated permissions that a participant will have in a specified OpenVidu Meet room
            when using the URL thant contains the given secret value.
            This endpoint is useful for checking the participant's role and permissions before joining the room.
        tags:
            - Internal API - Rooms
        parameters:
            - $ref: '../../components/parameters/room-id-path.yaml'
            - $ref: '../../components/parameters/internal/secret.yaml'
        responses:
            '200':
                $ref: '../../components/responses/internal/success-get-room-role.yaml'
            '400':
                $ref: '../../components/responses/internal/error-invalid-room-secret.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'
