> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fermion.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Modify live session user state 

> Add or remove people from webrtc meeting stage. This will make the user a participant or instructor in a given live stream. Use this API to make certain user(s) instructors before the stream starts.

Authentication with the "FERMION-API-KEY" header is required to use this endpoint.

Rate limit: Maximum 60 requests in a window of 1m.



## OpenAPI

````yaml https://backend.codedamn.com/webhook/fermion-backend-openapi.yaml post /public/modify-user-state-in-live-event-session
openapi: 3.0.0
info:
  version: 1.0.0
  title: Fermion Backend API
  description: Documentation for interacting with the Fermion API
  contact:
    name: Fermion Support
    email: support@codedamn.com
servers:
  - url: https://backend.codedamn.com/api
    description: Fermion primary backend server
security: []
externalDocs:
  description: Fermion Docs
  url: https://docs.fermion.app
paths:
  /public/modify-user-state-in-live-event-session:
    post:
      tags:
        - Live
      summary: 'Modify live session user state '
      description: >-
        Add or remove people from webrtc meeting stage. This will make the user
        a participant or instructor in a given live stream. Use this API to make
        certain user(s) instructors before the stream starts.


        Authentication with the "FERMION-API-KEY" header is required to use this
        endpoint.


        Rate limit: Maximum 60 requests in a window of 1m.
      requestBody:
        description: API Request Body
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      data:
                        type: object
                        properties:
                          liveEventSessionId:
                            type: string
                            description: >-
                              ID of liveEventSession - You will find this in
                              your dashboard
                          userId:
                            type: string
                            description: Your stable, internal userId in your database.
                          action:
                            anyOf:
                              - type: object
                                properties:
                                  type:
                                    type: string
                                    enum:
                                      - request-to-be-on-stage
                                      - add-to-webrtc-meeting
                                      - remove-from-webrtc-meeting
                                      - blacklist-user
                                required:
                                  - type
                              - type: object
                                properties:
                                  type:
                                    type: string
                                    enum:
                                      - update-permissions
                                  newPermissions:
                                    type: object
                                    properties:
                                      isAllowedToShareScreen:
                                        type: boolean
                                        description: >-
                                          If you set this to `true`, this user
                                          would be able to turn on their screen
                                          sharing. Leave blank to keep unchanged.
                                      isAllowedToTurnOnCamera:
                                        type: boolean
                                        description: >-
                                          If you set this to `true`, this user
                                          would be able to turn on their camera.
                                          Leave blank to keep unchanged.
                                      isAllowedToTurnOnMicrophone:
                                        type: boolean
                                        description: >-
                                          If you set this to `true`, this user
                                          would be able to turn on their
                                          microphone. Leave blank to keep
                                          unchanged.
                                      shouldAllowAdministrativeActions:
                                        type: boolean
                                        description: >-
                                          If you set this to `true`, this user
                                          would be able to perform the following
                                          tasks - add/remove/ban people from
                                          livestream, close live stream chat, and
                                          end livestreaming event. They can also
                                          turn on their mic/camera/screenshare
                                required:
                                  - type
                                  - newPermissions
                        required:
                          - liveEventSessionId
                          - userId
                          - action
                    required:
                      - data
              required:
                - data
      responses:
        '200':
          description: API Response Body
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    output:
                      anyOf:
                        - type: object
                          properties:
                            status:
                              type: string
                              enum:
                                - ok
                            data:
                              type: object
                              properties: {}
                          required:
                            - status
                            - data
                        - type: object
                          properties:
                            status:
                              type: string
                              enum:
                                - error
                            errorMessage:
                              type: string
                          required:
                            - status
                            - errorMessage
                  required:
                    - output
      security:
        - FERMION-API-KEY: []
components:
  securitySchemes:
    FERMION-API-KEY:
      name: FERMION-API-KEY
      type: apiKey
      in: header

````